A programmer's loss of identity
This is the follow-up to last year’s I’m an American software developer and the "broligarchs" don’t speak for me. In that essay, I tried to express why I was so agonized by the leaders in my industry doing a speedrun towards dystopia and how it all felt so divorced from what technology could, and should be. Everything I wrote there is still true, but amplified.
As an aside, I received a lot of positive feedback on that essay, thank you! (And I’m sorry that I still haven’t responded to some of you. My inbox is a disaster for a variety of reasons.) The wild thing is that I received zero negative feedback. My pet theory is that it was simply too long and nuanced for casual drive-by critics and that anyone who stuck with it did so because they found something that resonated. What you’re reading now is much shorter and I guess I’ll be testing that theory, for better or worse.
Social identity
I was listening to a 404 Media Podcast (404media.co) interview with Samuel Bagg about his article The Problem is Epistemic. The Solution is Not. (apaonline.org). It’s a fascinating and unsettling claim that the way we process information and truth is through our social identities. Bagg explains the research behind this clearly and convincingly in the podcast.
About halfway through the episode, I starting thinking about my own social identities. And that’s when a realization hit me quite hard: I’ve lost one of mine and I’ve been subconsciously mourning it.
That lost identity was "computer programmer" and it was arguably one of my biggest.
It’s weird to say I’ve lost it when I’m still every bit the computer programmer (in both the professional and hobby sense) I ever was. My love for computers and programming them hasn’t diminished at all. But a social identity isn’t about typing on a keyboard, It’s about belonging to a group, a community, a culture.
What was my group? Well, let’s use me as an example.
I enjoy programming computers because they function on a set of precise and rigid rules. This creates a kind of fantasy world where you can gain wizard-like powers as you accumulate knowledge. Yes, programming is hard and it can be exasperating, but that makes the eventual accomplishment of mastering the skill all the sweeter. Over time, you gain fluency and dexterity as a programmer. It feels good.
Which is to say that the pleasure I get from programming is mostly about learning the underlying truths about computation and applying what I’ve learned. Always improving the craft. This, to me, is the practice of programming.
As the saying goes, the more you learn, the more you realize how much there is still to learn. I’ve spent countless hours over the last 30 years reading about, thinking about, and practicing the art, hobby, occupation, and discipline of programming computers. If only by volume, it’s a big part of who I am.
Socially, the "computer programmer" identity has steered my life in small and large ways from the websites and forums I visited to the friends I’ve made, where I work and live. It’s one of those things you don’t usually even examine because its so big you can’t even see it until you take a step outside yourself to get a different vantage point.
The loss
The transformation has been bewildering. It feels like the blink of an eye, though I guess it’s been about three years. The culture has changed immensely in that short time. When I identified with the programmer culture, it was about programming. Now programming is a means to an end ("let’s see how fast we can build a surveillance state!") or simply an unwanted chore to be avoided.
One by one, I’ve stopped visiting the usual websites and forums. I kept reading them longer than I should have. I was in denial. I thought it would blow over like NFTs or "Web3". I still thought I was among my people and my culture.
I guess as I get older, I’m better able to see where my part has been on the computing timeline. And it’s pretty clear that I was very lucky, riding a wave of personal computing on an upward slope that probably started sometime during the radical advent of home computers in the 1980s and continued well into the 2010s. It’s depressing to think that I lived through a peak and that I should be doomed to watch the trend slide downward as fast as possible back into centralized corporate control. You people…want this? I was so naïve that I thought progress could only go one direction, because that’s all I’d ever known.
Why I know I don’t belong anymore
The social group I still identify with shares my values. We value learning. We value the merits of language design, type systems, software maintenance, levels of abstraction, and yeah, if I’m honest, minute syntactical differences, the color of the bike shed, and the best way to get that perfectly smooth shave on a yak. I’m not sure what we’re called now, "heirloom programmers"?
Do I sound like a machine code programmer in the 1950s refusing to learn structured programming and compiled languages? I reject that comparison. I love a beautiful abstraction just as much as I love a good low-level trick.
If the problem is that we’ve painted our development environments into a corner that requires tons of boilerplate, then that is the problem. We should have been chopping the cruft away and replacing it with deterministic abstractions like we’ve always done. That’s what that Larry Wall quote about good programmers being lazy was about. It did not mean that we would be okay with pulling a damn slot machine lever a couple times to generate the boilerplate.
Clearly this is not an opinion shared by the vocal body of "computer programmers" today. Will that ever change? Maybe. I don’t know. But I have the sense to know that I can’t make it change by wanting it bad enough, nor am I going to contort my beliefs to fit in.
I’ll say the really awful part now: For the first time in my life, I’m suddenly wary of meeting other "computer programmers" in the wild. I feel like there’s a decent chance we won’t actually have much in common, let alone values or morality.
(I’m even more wary of "technology enthusiasts". There’s plenty of technology I’m enthusiastic about, but I need to make sure we’re talking about the same things.)
My purpose here isn’t to scold anybody per se. Well, almost. To those who have chosen to use fear and intimidation to help sell the agenda of the big tech CEOs who, in turn, have somehow managed to use coal-fired GPUs to capture society’s output and sell it back to us, while converting a significant portion of the economy into an expanding envelope of hot gas: I not only scold you, I shun you. I have turned my back to you. That goes double if I once admired and respected you.
So then, who am I?
Luckily, we all have multiple social identities. Me? Oh, I am quite three-dimensional, thank you. I have found myself naturally leaning more heavily into my other interests as social and creative outlets. I have always loved art and books and music. Those are big groups and they alone are more than enough, though I have others too.
I’m going to keep writing technical articles and computer programs for my fellow humans. Sometimes it feels pointless to just keep making stuff and releasing it knowing the takers are out there vacuuming it all up (and hammering my server nonstop like a zombie horde). But then I think about the next generation who will be coming along and bringing with them, against all odds, a love for learning and creating. Because that is a human thing. I try to imagine a beginner somehow coming across one of my pages and maybe the way I worded the explanation is what finally makes the topic make sense. That’s good motivation.
Anyway, you would have to kill me to stop me from making things. Sharing them is just part of the pleasure.
And finally, yes, with kindred souls, I still love to talk about programming computers.