Comment by science4sail

3 days ago

I miss the old days (which were just a few years ago?).

I was someone who got into tech because they enjoyed coding as a mental exercise, not because they wanted to get rich. I feel like the fun part of the job has been now been automated away. All that remains is the boring part that I previously tolerated as a necessary evil: aligning stakeholders, kissing management ass, obsessing over the performance review cycle.

I know that some people have the inverse relationship: they find the "boring" part to be energizing and the "fun" part to be tedious. And I've seen a couple coworkers experiment with using Claude to agentically caress their boss's derriere. That's good for them and I wish them all the best. As for me, hopefully I can last long enough to engineer an early retirement. Then maybe I'll contribute to open source, assuming that there still is a FOSS community left by then.

Doing coding professionally already stripped nearly all the fun out of coding for me years before AI got good at coding, so when it comes to "how fun is it to be a software engineer", AI didn't have any negative impact for me. Being a professional software engineer was already extremely boring. Cycle after cycle, ticket after ticket, feature after feature, meeting after meeting... constant blur of meaningless shit. Not totally meaningless - it delivers actual value for customers. But meaningless for me.

If anything, AI has made it more fun simply because it means not having to think as much about the drudgery of details: syntax, API schemas, boilerplate code... And by "more fun" I mean "somewhat less unfun". Cause it's still not fun. But AI makes my burnout somewhat more tolerable.

  • I guess there’s just two sides to this coin. I’m a little more on your side: it was never really all that fun to write the code that the organization wanted me to write for some kind of necessary reason.

    Still, there were a lot of times where I was catching myself having fun.

    If you work for the right organization and work remotely you can just use AI to be more lazy. This is especially true during this transitional period where many colleagues are bad at it or refuse to use it.

    I guess it all depends where you’re at. If you’re still in the phase of life where improving yourself at work and producing work you are proud of is exciting, AI might make you feel like your work and value has been diluted. You’ve been turned into a product manager when you wanted to be an engineer.

    If you’re in the phase of life where you’ve decided that work is a means to an end, and simultaneously your company doesn’t expect you to produce 2-3x output, maybe this new era is pretty awesome.

    I fall into the latter category. I’ve learned a new musical instrument mainly during work hours. I’ve gotten a lot of quality time with the elder scrolls morrowind. I started going to the gym every day. In the short term, the fact that I can make the coding machine do all my tasks for me has been a net benefit. I’m just not sure how long it’s going to last.

  • Im not in a burn out phase but Ive been doing this long enough where the "work" really seems like an imaginary construct of my employer. I dont even relate the software development shop I work in to software anymore. I have a friend who describes it as "taking out the complicated trash". Thats close. But software development hasnt been a respectable career in a while.

    Anyway, nothing has changed for me, except that I dont have to deal with google search results anymore for things. When the LLM gets stuck I do still go out there. But its rare.

    Nothing has changed in the way I do my job, except having to put up with slop from people around me, or from business people pushing slop towards the dev team and wanting a pat on the back for it. That part has changed for the worse.

    The complete willingness to traffic in nonsensical documentation that doesnt represent any real requirements as an excuse for doing a job is pretty sad, and I take note of who does it and I make sure to never trust anything they publish. And usually stop reading it.

    I call it "crossing over", once I see someone do it and replace their work product with LLM slop and distribute it, they have created a barrier that will prevent me from working with them forever.

I am an OSS maintainer and I can tell you the job is terrible. Not because of the thankless work (I am sponsored by a corp for the work) but because we're still allowing public PRs. Plenty of people that "want to help" just push walls of text and code and 2 days later ask why hasn't their contribution been accepted yet. And when will it be? Because they need it ASAP!

  • "Closing as too broad / not focused enough in language and scope / not adhering to our PR submission guidelines (see [link])"

    (where the top guideline on [link] clearly states: "we do not accept submissions that are either outright AI-generated or conceptually similar in terms of style, verbosity, generality, scope-creep or signal-to-noise ratio")

    • I wish I could to this, but the project does not belong to me. I am the main maintainer and probably could push for this, but the higher ups are all in on AI and wouldn't like it at all.

      2 replies →

  • Meanwhile just a few minutes ago in an issue on a project not mine, I just wrote a simple 3 step set of directions answering another users problem. (how to get the Voice audiobook app to appear in Android Auto when installed from Fdroid instead of google play.)

    He takes that, tells claude to add it to his docs, claude mangles my correct manually written directions and spits out a garbled and nonsensical version, and the project owner just throws that right into his docs.

    Like where do you go from there? Even when you don't use any ai someone else just uses it upon you. It's like a bizarre new form of Bowdlerization.

    Everyone sucks on all sides as far as I can tell. I really don't understand why people are accepting this paradigm of using ais for everything. Is everyone really that incapable of resisting the whatever it is you get from giving orders that they don't even care what results from the orders, just make me feel like I caused a lot of stuff to happen.

    This is all so self-inflicted too.

I don't know, sometimes I feel like I've been misled, I come back to the code that was generated, I find so many bad choices, claude never subtracts, it keeps piling on new code. Some minor things get declared as unbreakable rules, regardless of context. It memorizes the tiniest exception as some big decision and all new code follows those new rules it made up. Good luck cleaning up all the nonsense to all who just vibe coded their apps. It has to be steered constantly, if you care about understanding the code that is. The LLM will happily use gibberish variable names, long functions that mix responsibilities, inconsistent code style and so on. Give it a prompt to review the code over and over again, ten times in a row, it will always find something, that one race condition that wasn't handled, or it will warn about something that is clearly not important, but it won't realize that it showed rendering code into the core logic component. It can fix it once it's pointed out, it's good for refactoring and doing sweeping changes across the codebase, but it's better to be on top of things, because it can lose its way behind your back.

  • This has been exactly my experience so far, regardless of the model. A developer knows when to stop and ask questions (colleagues or stakeholders). Claude just keeps going and doubles down on its own interpretation.

    For me, the biggest benefit is being able to produce an initial POC that I can learn from before writing my own code. And, as you pointed out, it’s also brilliant for refactoring work.

  • Claude absolutely subtracts if you ask it to. I just regularly ask it to look for simplifications and YAGNIs and give me a ranked list of them, some of which I get it to do.

For me that turning point was 10-15 years ago.

I guess it was slow-boiling, but somewhere between 2010-2015 was the turning point.

It got dominated by brogrammers who judged you by whether you used vim or not, teams of 20 people producing the same output as a team of two, designers doing mockups for absolutely everything and trying to boss the programmers, product managers making mountains of useless documents for everything and trying to boss the programmers, some rando had Scrummaster certification (who doesn't) and wanted to boss the programmers.

It was also when everyone started copying Google and Spotify and etc and a meeting was required for every decision, RFCs or other documents that would be produced but wouldn't survive reality, the software would have more trackers than features, and subscription was the default software model.

People keep saying "you only need 1 or 2 people to make a product now".

Well that was already the reality for me from 2000-2016.

  • > brogrammers who judged you by whether you used vim or not

    When I hear that term I usually think of people who brag about their job and sling copy-pasted untyped Python and JS from StackOverflow while being willfully ignorant of infrastructure, architecture, security, algorithmic efficiency, and anything else that makes maintainable software. Micro-dosing K and listening to too many Huberman podcasts are probably solid tells too. When I hear vim, however, I think about greybeards.

    Did I miss the memo? There has been a non-zero amount of performative TUI obsession happening in the technical space for the past five or six years but I didn't think that using a fifty-year-old modal text editor was a shibboleth for being a brogrammer...

    • It’s putting tools and buzzwords ahead of actually building and creating. Does it matter more what you create or the editor you use, the language, etc… A lot of that dickwaving seems like it came in the past decade or two.

    • Vim experienced a revival in the late 2000s and 2010s due to influential Ruby on Rails people using it. The "editor wars" of old were won long ago—by vim; subsequent heats pit vim against JetBrains IDEs, Atom, and Visual Studio Code.

      2 replies →

    • Maybe depends on industry? Working in finance during that time, the brogrammers were vim types, and super dogmatic about everything (first and foremost their workout regiment but also design patterns and algorithmic efficiency, to the point of exhaustion.)

  • >> It got dominated by brogrammers who judged you by whether you used vim or not, teams of 20 people producing the same output as a team of two, designers doing mockups for absolutely everything and trying to boss the programmers, product managers making mountains of useless documents for everything and trying to boss the programmers, some rando had Scrummaster certification (who doesn't) and wanted to boss the programmers.

    That's because word got out that the field pays well but most people who had the sociopath desire to make a lot of money didn't also have the skill to get a programmer job. So they did what they always do: attach themselves to a living host and leech it's blood. In a pond of IT field water, for every fish (programmer) there were at least 20 leeches (project managers, product managers, scrum masters, designers, architects, you name it).

    I thought several times why I chose to be a fish and not a leech and the answer was not that it's the moral thing to do or that I'm not that bothered as long as they let me with a little blood left. Rather pragmatically that it seemed safer being able to find and make my own food than rely on finding and sucking out the blood of someone who does it already.

    For 20+ years they added more and more blood sucking parasites to the poor fish and now, finally, they eliminate the fish altogether. Fine!

    I'm just curious where will all the leeches go. What they'll suck on from now on. Can you suck the blood from an AI agent? The future looks exciting if only to see how the parasites adapt (or die).

As a maybe interesting contrast. I got into tech because I wanted to build things. Coding was just a necessary step. What I really liked was creating ideas for what we could build, thinking about UX, thinking about error conditions and what we do when two things disagree.

I hear you. Sometimes my job feels like sitting and waiting on a bunch of different projects being run, with some pauses where I am able to evaluate

In the old days my team leader would review our PR and every time will remind us that he can “compile the code in his head”. This was 10 years ago, I still find it corny and disturbing.

I don’t want to go back to those corny bro programmers.

of course there'll be a FOSS community. with everything that's been happening I've yet to see anything even suggesting xkcd 2347 is being impacted here, except the thankless maintainer can bounce ideas off an agent now.