No other profession trivialises their profession to the degree of software
Software in 2022 is overwhelmingly built with little to no consequence and is made up of other components which are overwhelmingly developed by unpaid volunteers on an AS-IS basis that are being financially neglected.
Systemically, I'm concerned that there is a lack of professional liability, rigorous industry best practices, and validation in the software industry which contributes to why we see Boeings flying themselves into the ground, financial firms losing everyone's data day in and out, and stories floating around our industry publications about people being concerned about the possibility of a remotely exploitable lunar lander on Mars.
There's a heap of [comical?] tropes in the software industry that are illogical/counterproductive to the advancement of our profession and contribute to why other professions think software developers are a bunch of immature spoiled children that require constant supervision.
If I type "Anyone can be a builder" into Google here's the first result...
In Australia, if you want to work as a builder or tradesperson you must have a licence or be registered (depending on your state or territory). Before you apply for your licence or registration you will need to gain a combination of experience, technical qualifications, skills and knowledge.
If I type "Anyone can be a vet" into Google here's the first result...
Things I Wish I Knew Before I Became a Veterinarian. Training to become a veterinarian takes almost as much time as becoming a human doctor, and it's just as involved.
If I type "Anyone can be a software developer" into Google here's the first result...
Anyone Can Be A Software Developer — It’s Not Magic. You don’t need to be a hacker or ninja to solve coding problems in the real world
No other profession that I'm aware of trivializes their profession to the degree that software does. Software practitioners should be licensed and be bound by a professional ethical code where violation of said code would result in the revocation of the license to practice software engineering.
Over the last decade, there has been an insatiable appetite for people with any software development skills and unfortunately, the supply of apprentices has outstripped that of master craftsmen which has put the software industry on a path of normalizing the practice of inexperienced people being led by other inexperienced people.
To make matters worse companies often do not provide time for teaching or personal development which fuels a culture of resume-driven development and importing fast fashion into employers without sound engineering due diligence.
Inexplicably institutions that used to pass down the knowledge of actual master software craftsmen no longer do so because they care more about broader appeal/adoption to serve marketing goals instead of attracting big brains to the ecosystem and upskilling the existing community.
There's way too much focus on producing level 100 to level 200 content out there in the world right now ("this conference talk could have been a blog post") and nowhere near enough master software craftsman content. David, Joe, and Immo are right on the money 🎯 with their comments that one of the best ways a company can stand out from the crowd in 2022 is by publishing / lifting up deeply technical content.
Unfortunately, resolving access to high-quality knowledge and experienced mentors won't help because software practitioners keep doing (or enabling) stupid shit that damages our reputation...
A trope I saw, again and again, in my consulting days is our industry's fascination with producing squirrel burgers.
What's a 🐿🍔 you might ask? Here let me explain with a story...
It's 10:38 pm on a Saturday night in downtown Seattle, Washington and you are very hungry. After wandering up and down the streets you stumble upon a Shake Shack that's open and accepting orders! (woo woo)
After some pondering, you add a double beef SmokeShack burger, with fries and a vanilla shake to your order cart and gleefully mash the green "Let's do it!" button.
The cook comes over and asks for $18.87 USD. After opening your wallet you discover that you don't have enough money to pay for the order. The cook can see the look of disappointment building up in your eyes and knows what's coming next...
You: Hey, Cook. I've only got $2 and I'm really hungry. Is there any sort of special you can do for me?
The cook looks at you up and down and heads towards the storeroom. Moments later the cook reappears and says...
Cook (aka Software Developer): I don't have anything in the storeroom available but if you want, I can ignore industry best practices and cook you up a squirrel burger.
Hell yeah! Eager for getting any form of food in your tummy you hand over all your money to the cook and grab a seat whilst you wait for it to be cooked.
The cook (aka software developer) heads out back and ventures way past the storeroom, down the street with a spatula (his tools of the trade) in hand, scrapes up some roadkill, throws it onto the hot plate, and cooks it for the client...
Anyway, thanks for reading. I'm blogging more and tweeting less, so if you want to learn about sweet places to visit in Australia, working remotely from a van, or more about doing software development from an iPad enter your email address to be notified when future blog posts ship.