5 ms·
Honestly, software engineering as a career only went down hill for me from when I began to when I retired. (And I hesitate to even air that view in front of ot
by JKCalhoun 8mo ago
Honestly, software engineering as a career only went down hill for me from when I began to when I retired.
(And I hesitate to even air that view in front of others that are already in the field because I am a kind of Pollyanna and don't want to foment bad vibes.)
But since I retired a few years ago it was clearly not LLMs that precipitated the decline of my enjoyment of the profession. Instead it was the slow erosion of agency and responsibility that did that.
I'll drop the euphemisms and just say outright that the inmates ran the asylum when I began in the 90's (at Apple, FWIW). The only one that really told me what to do was the tech-lead on the team. Not my manager—for sure not marketing or the CEO (ha ha — Jobs had not yet returned).
In effect, I and all other engineers were told, "Here's your sandbox, here's your shovel: you go make your sand castle however you want—so long as it does X, Y and Z. We'll ship it but you'll own it. You'll fix it, expand it…"
(A coworker whose sense of humor I always enjoyed said to me, perhaps seriously, "When someone drops code in my lap and says, 'It's yours now' the first thing I do is rewrite it." Yeah, that's what happens to someone's code when they moves on—becomes someone else's sandbox and they are free to knock down the castle, build another—Chesterton's Fence not withstanding, ha ha.)
To that end I feel a little bad for anyone that missed that era. I mean unless you enjoy writing unit tests, having code reviews, style guidelines, etc.—and I have certainly met younger engineers that have come on board that seem to enjoy those aspects of the these-days profession.
I admit that when I began it was in fact a bit intimidating when you realized that code you were writing, were responsible for, was going to ship on millions (in 1995? maybe?) of machines. The responsibility though also came with agency—the combination came to give me a sense of freedom, the power of using my discretion, and finally a sense that I was a valued contributor.
You can infer from the above what I disliked about the profession as I was aging out of it. My general sense is that the industry became too big though and too much money riding on it for management to entrust it to the "funny farm". But of course we cowboys who came up in that ward liked it the way it had been.
- tartoran 8mo agoDo you still code? What’s your take on working with LLMs and agents? Does it reignite the same spark OP is talking about?
- JKCalhoun 8mo ago"Spark" might be putting too fine a point on it if I am being honest (and I always am, ha ha). But I vibe-coded a web site [1] that I would not have otherwise attempted (I just didn't want to have to figure out how to learn a map-type framework in order to put little points-of-interest on a web page.) I also vote-coded an extremely esoteric app for turning .mpo files into stereograms that you can then print to display in an old-fashioned stereoscope [2]. I have lately been learning (I hope?) to build a hobbyist analog computer. This a deep dive into electronics—something I have no training in. And I have already queued up a couple of my abandoned projects (also esoteric) that I hope to turn an LLM loose on when I free up some time (from my current analog computing obsession). It's hard to say if I would not have pursued all the above without an LLM. I am giving examples though of projects that I feel were sort of on the tipping point for me as to whether they were worth the effort to pursue or not—the learning-curve-required vs. useful-end-product balance. I am finding the LLMs are a finger on the scale tipping it more often toward "Go for it." Maybe you would call that a "spark"? [1] (where I map out the location of a pair of YouTubers that have been road-tripping the U.S. for over three years) https://engineersneedart.com/OneAdvanture/ https://engineersneedart.com/OneAdvanture/ [2] https://engineersneedart.com/stereographer/stereographer.html https://engineersneedart.com/stereographer/stereographer.htm...
- skeeter2020 8mo agoWhen I started the things that made you good in this industry got you bullied - or worse - in high school, and we were not the ones invited to parties during university. Then with all the success and money it attracted the wrong motivations; no longer did you build software to change the world, but to get rich and change your world. And now the circle completes, as those who got rich but could not affect the geopolitical changes they wanted via their work are doing it with their money.
- sph 8mo ago> But since I retired a few years ago it was clearly not LLMs that precipitated the decline of my enjoyment of the profession. Instead it was the slow erosion of agency and responsibility that did that. I've been working on a contract for a large corp. They asked me to design a piece of software over 6 months which I delivered on time and worked great — by the time we had to ship into PROD, the whole thing was canned unceremoniously. Luckily they liked my work so much they moved me to another greenfield project. Worked on it for a year, had to invent novel solutions which I'm pretty proud of, and we shipped into prod last Autumn. I haven't heard a peep from anyone, whether the thing is working and by masterful skill of mine it hasn't crashed yet, or if no one is using it and it was just another bullshit job. All this work, good pay, and nothing to show for it. Not even a pat in the back. I'm just a well-oiled cog in an unfathomable machine. I wonder if my career has any meaning at all. Recently they've asked me to deliver a feature for yesterday because of bad planning on their part, and when I mentioned how long it'll take, they've half-jokingly suggested to use LLMs so I can ship it in half the time to make their arbitrary deadline. Joke's on them, in less than 6 months I'm out. 20 years as a software engineer, 15 as a contractor, and all I feel when I get at my desk is existential dread. There is just no pleasure at it, that I'd rather risk poverty but feel like my actions and efforts have tangible effects on the physical world. Was producing more mediocre code ever the problem? This all feels like a Kafkian fever dream.
- JKCalhoun 8mo agoI remember arriving at Apple Park to meet a friend/coworker a few years before I retired. Sitting there enjoying the food by one of the huge, curved glass walls, he was distractedly focused on one of the gardeners that Apple employs. This man was out in the center part of Apple Park trimming a plant or something similar. It was clear that my friend was looking on somewhat enviously and when I asked, he admitted as much. And I knew too immediately the draw. Before I was old enough for "gainful employment" there was a neighbor who hired my sister and I (I think I was 11, my sister 10) to ride along with him and his kids (our neighborhood friends) and help with his lawn services business. I know. But this was the 1970's, a small working-class neighborhood in a Kansas suburb… And he paid us by the hour, helped load/unload the lawn mowers. We'd get a free lunch at a "Wiley's" fast-food hamburger joint. But despite the physical labor of pushing a lawn mower all over someone's yard, there was a curious sense of satisfaction that came from having arrived at a tatty, overgrown lawn but then leaving it looking neat, tidy. It is the usual "sense of accomplishment" that physical labor often metes out that is often more elusive in the white-collar world. To be sure there's no arguing about the differences in pay—I'm talking strictly about a sense of job satisfaction. (And, over the course of my three decade career as a programmer, the closest to that had been early on when I had full ownership of the code.)
- dahart 8mo ago> Yeah, that's what happens to someone's code when they moves on—becomes someone else's sandbox and they are free to knock down the castle, build another—Chesterton's Fence not withstanding, ha ha. As someone who references Chesterton’s fence often, I not only agree the code often gets rewritten when someone moves on, I even think it’s often the right thing to do - for medium to small projects where there is one or only a few people who own the code. The reason is because I’ve seen what happens when you don’t rewrite it - the new owner(s) don’t have intimate knowledge of the codebase, and as a result, they work at the speed of molasses regardless of their skill. I have left code behind to people who are better coders than me, and it took years for them to become productive. To be fair, I have also seen large projects with many people get rewritten and have Chesterton bite back hard, having the projects go late, cost enormous sums of money, and end up as bad as the first time, so rewrites certainly aren’t always called for. This is all changing dramatically with Claude, BTW, people can now get into a codebase and be productive without rewriting it. They might not understand it, but this is a positive development of some kind at some level.