You are a bad programmer.
You write bad code that breaks constantly.
It wastes everyone else’s time, if they depend on your code at all.
You don’t know what you do.
You don’t understand the systems you use.
Nobody else does either, and this doesn’t bother you.
You don’t admire people who do understand it.
You don’t have good reasons for doing things in the way that you do.
You are lost and clueless.
Your job, if you have one, is fundamentally political, not technical.
Worst of all, you’re in denial about it all.
Why is everything falling apart? No, seriously. Jonathan Blow talks about a Bronze Age style collapse because we can’t simply function as programmers, but why is that? What got us here?
Some like to blame managers for this, or more generally corporate owner types who don’t spend their life sword-fighting while the C++ compiles. There is some truth to this: one of the most impactful changes in the makeup of software companies occurred in the 1990s, with the advent of Object-Oriented Programming and languages like Java. Gone were the days of elite conductors of black magic assembly art, and the relevance of people like John Carmack. In their stead came managers who consider a promotion to be in-house retirement from the trenches of git push
ing.
If that were the extent of it, some software slinging C or Haskell would have come along and vanquished them, but that never happened. In point of fact, some startups did come along slinging JavaScript and PHP, and they… replicated the problem. Why?
We are at an inflection point with computing technology where all of the tragedies of the commons are coming to roost. Every problem is solvable, except all of the well-known problems that have a mature cottage industry cropped up around them.
Programmers deal with the brunt of this selfishness of others every single day, as they find themselves more dependent than ever before on code written and updated by strangers. Upstream broke something? Tough luck. Best just switch over to whatever they say are best practises. Can’t do that for whatever reason? Be prepared to throw all of your code away then and start fresh. Months of your time wasted. It’s heartbreaking, isn’t it?
It’s not like others in being selfish are being unreasonable. As far as they know, they’re doing a good job! A better job than ever before. They just don’t see the macro consequences of the changes they make, and they don’t have an appreciation when people come to complain about breakage because to them it appears like whining.
This is a consequence of people having a misplaced psychology about how the Worldwide Web actually works, and it comes out to everyone just operating with callous disregard for others, defiling their own values in the process. This happened with Vue 2.0, for example. With the release of 2.0, they broke everything, promised a migration path and never delivered on it, and when people questioned their motives they told the public quite plainly that they never made it for public consumption anyway. Since they never got a reckoning, I have to ask, who will? Most likely, no one. You can just screw everyone over at no consequence, and then scratch your head as to why the biggest innovation in techs amount to criminal speculative bubbles.
But Vue is a more political example. What does it look like when you just try to get something done the best way you know how, and you can’t? I had that experience with Go. It was just a mess of pointless—and shameless—bureaucracy for its own sake. So a bunch of egotistical open-source commissars can sit on Discord and GitHub all day, flipping through notifs like the alt tech addicts that they are, and pretend like they’re less than leeches on productive society. It’s like that old chestnut about Stack Overflow when you post a question and you get a bunch of comments questioning your motives. They’re just searching for a way to tell you you’re doing it wrong and should just stop. This is so anti-intellectual it hurts.
These kinds of experiences are what led me to pen the poem you see above the divider. Whiny, pedantic, petty, egotistical, useless people who, if they write code at all, make things of notoriously bad quality, and are utterly dependent on the menagerie of free help from internet strangers to make their work not suck donkey balls on a Wednesday. They need to paper over their incompetence through layers of woke rhetoric about ‘community’ and several helpings of pointless bureaucracy that gives their presence an air of legitimacy. They’re bad programmers, and they’re very much in denial about this. It apparently doesn’t matter how numerous they are, because like a bad apple, there seems to be just enough of them in all the most crucial places to ruin the whole thing for everyone.
Do you ever wonder why these people are allowed to run rampant and ruin the commons everyone depends on? It’s because good men do nothing. Guido van Rossum dealt with this from his core team and, finding it too much to bear, retired permanently. Other people like Carmack sold out years ago and haven’t the faintest idea of what the situation looks like on the ground, instead opting for the rose-tinted macro lens taken by corporations like Apple as he becomes a player in the massively fraudulent VR ‘scene’. To him, LLVM is as wonderful as cherry pie. This is why his face is upside down in the thumbnail, if you were wondering.
How often do you see someone posting about tech industry ‘impostor syndrome’ on social media and wonder, just for a second, if they’re not actually honest-to-God impostors? Like, sure we all love a good e-coddling, but is this never true? I suspect that more often, it is. They really are incompetent, they really don’t know what they’re doing, and they face massive psychological dissonance as a result that they then twist around to be vented on social media as oversharing. Deep down they know that this isn’t appropriate, and they feel guilty getting paid so much money to do so little. These feelings are doubtless made worse when they encounter truly competent—or even gifted—software engineers, to find out that they are scraping by because their ‘industry’ has thrown them away in favour of campfire stories about the development of Doom.
I’m just here to tell you that the little voice on the inside is right. This is deeply wrong, and it does deserve a lot of reflection. I can only humbly suggest you listen to it, even just for a little bit. If you try to think of a way you could appease it at all, even meagrely without giving up your gold, it would be better for the world than doing nothing at all and becoming into denial.
Again, thanks for reading! This is another free one, but I kindly implore you to subscribe. My ramblings are in the aesthetic of a raging Old Testament prophet, so if you like it, consider subscribing. I’m not getting any richer, yet.