Software#
Let me start off woth a rethorical question. Have you ever touched, tasted, smelled or licked a program?
Hi, I’m Tobias and I’m l a Software Engineer. I studied 8 years to build things that literally don’t exist - in the highest possible quality..
Since software doesn’t exist in the real world, it’s really hard to tell anyone what you’re doing at work. While studying, I used to work as a delivery driver for newspapers. „Boy, I’m tired… I moved 1,5tons of newspaper in and out of my van“. Then I sold Crepes in the Main Street of Stuttgart. „Man, I’m tired. I made over 300 Crêpes during my shift.“ People can relate to that. „Today, I typed 50 lines of clever stuff into my pc. Then I improved them and now it’s only 20 lines.“ - That’s my job and somehow people cannot relate to that.
So I started to visualize programming as building a house. And usually it’s hard to express, but building software is WILD.
There are those fancy courses: „Become a programmer in 20 days.“ Congratulations, you can now build an Ikea Garden Shed where everything has been put together in a box with the tools and a picture manual for assembly. Congrats, You’re an architect now!
As an architect, you’re qualified to build anything, from Garden Shed over Family Housing, Factories, Airports, Skyscrapers a mars base… Good luck with that.
So everybody is a coder now. And the dunning kruger effect hits hard. Skyscraper? How hard can it be? We can just build 100 garden sheds on top of each other, right? And so the fun begins.
Start assembling files with gibberish text, patch in stuff from the internet, sprinkle some magic on it… Problem is that you don’t see a house. You see the gibberish code - and as a normal human, you have no way of seeing your house is being assembled out of garden sheds and chewing gum if you don’t do it yourself. So you build it yourself but you don’t have time to build everything from scratch. So you pull in some components from the internet.
In Software, all Tools and Components - from your Hammer, over your doors to the heater in your bathroom, are all build by other software engineers, of unknown skill and intention. And all parts and parts of parts of them have also been built by people of unknown skill or intention. Everybody puts their creations in an online store for sharing, where you can just browse and select by a short description and pull a copy for free! Isn’t that awesome?
You can put your house together from all those free components and you just need to fit and assemble them together.
You can order a hammer and get a tap dance shoe with metal sole. „I’ve been driving nails into the wall with that for 10 years, so you don’t tell me what a hammer is“
The heater bursts in flames every 2 days? Known issue. Fucking put a bucket of water over it, turn it off and on again. that’s not so hard. The gas valve inside has been build by a sheep farmer in Austraila to inflate baloons for his kids, but we were able to reuse it. We’ve already wrote him a postcard, so this issue will be fixed soon!
The door you chose for your house. It’s a really nice looking door. Only thing is,the lock doesn’t lock the door -anyone can open it. „Yeah, we were planning on implementing something here, but we’re still making the door look nice. People don’t buy doors based on if the locks work, right? Just update your door every few weeks and eventually it’ll work.“
Changing your door and all your houses components regularly sounds like work? Yeah, but like your door, everything is broken in ways that are yet to be figured out - so you’ll definetly need to update all of your houses components regularly.
But don’t worry: There’s a tool for handling that automatically. It’s gonna be fine.
So you’ve build your house. You move in.
Two weeks later you come home to find your emtrance door is now 5m tall. It has ripped through to the second floor, broken half of your house and you can’t open it any more because now it opens with a fingerprint sensor that’s configured from the inside.
So now you might get to the conclusion that it’s not that hard. Just define what for example a hammer is as a standard.
Well, for software people standards are documents with 500 pages of technical blah blah… Nobody got time for that. I’ll just copy it from the other hammer I’ve seen. draws a hammer on paper there you goo, here’s your hammer.
And even IF there was a standard there’s a good chance it’s a compromise between a Gummihammer and the TapDance Shoe.
So in order to get some structure into this whole mess, every company has defined Processes… An attempt trying to formalize work in a way that tries to prevent the Top 10 idiots from breaking everything. Have you signed the „I wiped my ass“ form when leaving the toilet? Wooow, you’re not even supposed to be here like that.
Process says you need to wipe your ass 25 times, because that’s taking care of most of the messier cases. And YES, that applies also if you „Only went for number one“ I cannot believe I have to tell you how to use a toilet.
Or the process from the garden shed guy. He has had some reliability problems with his shed, but they’ve managed to introduce company wide processes to deal with it. „To avoid rotting of the wood on the weather side of yor house, every 4 months take 4 colleagues, and lift + rotate your house by 90°“. „A roof likely won’t hold off heavy rain, so ALL items in a house will need to be wrapped in waterproof bags while not using them“ And since people have no idea about software, management will tell them this is awesome, it adds a great deal of sustainability to our companys assets, so it should be deployed for EVERY house the company owns. Congratulations.
On the other hand there will be security processes. You want to prevent burglars from stealing your stuff, right? So „All doors need to open only based on exact fingerprints that have been painted on the inside of the door.“ Initially this posed a probkem to the shed guys. But they quickly complied with this rule by removing the shed’s door. Leaving back an opening.
Big problem is even though software doesn’t exist, it has similar dependencies as real objects - just without clear supply chains. You want to put a picture on the wall. You already got the picture, you’ve got the nail. So how long will it take to put up that picture? Any estimations?
So you tell your colleague you need a hammer. So colleague starts working. they need a wooden stick as handle, a workbench, and the metal part. For the metal part they need an amboss, a hot fire and metal ingots. For the metal ingots you need another fire and some iron ore. And THAT’S where it gets complicated, because for the iron ore you need to mine deep into the mountain for which you need a helmet a bucket and a pickaxe. At least creating the pickaxe is kind of similar to creating the hammer.
So after two months of waiting for the hammer, you’ll just drive the nail into the wall with your old tapdance shoe and it works. Meanwhile, the colleague is still working on the helmet.
Actually I’ve been working on a door myself to use it as bedroom door. You’ll find a lot of doors in the online shop, but can you imagine no Door has written „Tobias, King of Software“ written in glittery green, cursive letters on it? So I created a really nice door and made it customizable so everyone can put their own text. Unfortunately my landlord threw me out last week, now I have moved to a barn on my companies ground. Strangely, it doesn’t have an entrance door, but a 5m tall opening opening instead. Hope I can adapt my door to it.
Still 3 months to go until the next lift+rotate action, I’ve yet to figure out how to do this.
Further Ideas#
AI = Train a dog
Filename = Licence Plate (Mini vs 12 Ton Truck)