Now anyone with enough LLM tokens can move quickly and have a pretty proof of concept in front of management in days or maybe hours. There's a land grab to get things in front of management so you can stake your claim on something. The implementation details are assumed to be solvable by enough Claude sessions and ChatGPT prompts.
Where this falls apart is that the real difficult problems don't scale well with LLM brute force techniques. You need people who understand the problem and know how to drive the LLM agents around properly, as well as when to set them aside and go look at the code and data themselves.
The teams who try to brute force everything with LLM tokens can get a little farther every few months, but for complex problems I've seen enough variations of teams hitting a wall of complexity and tech debt with a team that doesn't know much about how their system works because they've just been asking agents to solve every problem as it comes up. With each iteration it takes a little longer for the agents to come to a solution and the system becomes a little more brittle. Even with our current mega-context-window LLMs you can reach a point where every other change to your big ball of code breaks something else, which requires another agent session to diagnose and fix, which might then break another thing down the line. The refactors to try to clean things up end up breaking even more. Having a zillion tests starts to backfire when the team can't tell which tests are testing valid results and which are baking in incorrect results.
Maybe there's an end game where agents get so good that none of this matters, but I think it's more likely that we're going to have to build up better intuitions about what good execution looks like. The old signals of moving fast are meaningly and potentially even negative now.
This is very similar to how LLMs were already breaking signals in writing. It was (is?) an enormously important proxy (however imperfect) for a bunch of things like: "put effort into this" or "is smart" or "is interested and engaged" or "has an emotion" or "has carefully considered the idea."
Heck, even basic awareness of an issue/detail gets forged, mentioned in the text but never in the mind of the sender.
The work can no longer speak for the human. A nightmare for the introvert.
The work, even before LLMs, struggled to speak for the introvert (and even the extrovert) -- a unique enough work usually results in puzzlement, a questioning of motives, and sometimes even overt ridicule.
Even for writing, it was a struggle. How many times did pieces of writing get ignored (or rapidly skimmed) because they were "TLDR"?
When I was very young (a teen), I wondered (after seeing the films The Matrix and Fight Club) to what degree other people were a dream-like hallucination (basically, those films made the concept of p-zombies accessible to a kid). That childish daydream, is now a reality. My inner paranoiac squeals with delight. Ah, the perversity. Even skill at deception itself can be faked, now. Even the beautiful can treated as if it were hideous.
I wonder if anyone ever made an episode of Star Trek, where one crew-member pranks another (possibly inebriated) crew-member, by having them wake up in a perfect holodeck reconstruction of their ship and crew. How long before they would notice? Weeks could go by, before a red alert dissolves the illusion.
It's after 3am, and I am not inebriated, but fuck I need to sleep. Sometimes I hope I drift into a coma, so that I can deal with things that are, on the one hand hallucinations, but on the other hand _not_ deceptions. There is a universe out there, where _their_ Matrix (film), is Vanilla Sky (amusingly, its inspiration was the film Abre los Ojos, released one year before The Matrix -- maybe in this universe, the Spanish Armada reached England).
Good night, you doomed, sad people.
Shouldn't something like maximum reuse/abstraction, minimal written code, should be a better goal ?
Possible leading to more llm-scalable systems ?
That's how you get promotions when you don't do anything valuable lol ok done with the cynicism
But hey, I do it. I prebake my own tools to work within the system, a new person joins, and I show them the tools as an example. Instead of learning what it does and why, they just learn how to use the tool (now via claude).
I call it fighting shit with POOP.
We need the HITL. As opposed to people who think that Human In The Loop Entirely Redundant is better. But it's dangerous.
At my day job, I use AI to fix config, container, and installation issues so I can spend my time coding instead of struggling to fix mostly other people's mistakes. And really, in this age of python wheels, containers, virtual environments, and fragmented APIs, the cognitive load of doing this by hand would shut me down for the day.
1.5 years in and I haven't burnt out. If anything, I'm ramping up. I'm no longer afraid of adding a web UI, or insane numbers of unit tests, or deploying other people's software.
What I'm not doing is using it to build products, but instead just doing so to augment the supporting stack. All of this is subject to change as the AI landscape evolves.
That's how I understood the article at least.
I believe you misspelled "rip it off."
I guess I shouldn't be surprised that people are using the tools built by ripping off the collective creative works of humanity to rip off individual things, too.
Picasso said that, Jobs quoted it (and to his credit, gave attribution... which I doubt is happening with all of these claude-cloned designs).
I think it was a mistake to add this much complexity to the world of software in the first place, so I'd view AI as a bandaid to a problem rather than addressing the underyling issue. But on the whole, the cost of all this extra complexity, data centers to run AI to fix layers of crud and buildup don't seem to provide much of a net benefit to society (except to those who are at the top and need to see growth to pad their retirement portfolios).
I would suggest not concluding the end of this movie from the first 5 minutes of the story. But then, I really fought against complexity over my career and lost hard. One can either check out as a fossil of the good old days or adapt to the new reality. 6 months ago, AI was about to replace all the engineers and then reality slapped the C-suite hard on that subject as just one recent plot twist.
LLMs can scale technology, but they are terrible with scaling trust. You know what scales trust in Enterprise? Good leaders, good culture, good conversations, good meetings, good narratives, good insights, good decisions. Exactly the things that scaled trust 50 years ago, and exactly the things LLMs cannot directly impact.
But now see what is happening. Rather than doing the hard work of gaining trust and consent, employees are using LLMs to build their localized agents. Of course they are happy! But the Enterprise, as a whole, is not better off, the real problems have not been addressed, the consensus has not been reached.
With AI—or coding agents, to be more specific—I'm perhaps working even more than before, yet I feel considerably more relaxed. It feels like the variance in task difficulty and uncertainty has flattened out. If I had a difficult network-related issue before, it might have taken me hours of research and debugging before even being able to tell what was even going on and how long it would take to fix. Now I can just spawn an agent with the right keywords, in the right environment, and with the right permissions, and get feedback within minutes while focusing on other stuff in the meantime.
While I was pessimistic about where software development was heading just a year ago, I now feel more optimistic and happy about how things are going. My only concern, however, is whether it will reduce the demand for software engineers in the long run.
When I first started using AI agents to automate my work tasks I felt liberated for a few months, but after that I again started feeling burnout. There were days when I tried to compete with AI Agents to complete my tasks earlier like zooming in a race car which added to my burnout.
The quest to learn or gain knowledge will alleviate your burnout and the moment you start unlearning your burnout reappears. Thus I stick to HN for most of the day to kill my burnout though it is overwhelming.
Got to admit, I stopped reading here.
In my experience, burnout isn't related to the amount of work, but to your confidence in being able to do your job and if you find your job meaningful (like, does it even matter?).
I'm probably doing twice as much work now compared to the period just before I burned out, but I'm also nowhere near a burnout. Part of that is general experience, but it's also because I feel like I know what I'm doing (so, no imposter syndrome) and because I've chosen my job based on what I find meaningful to do (is it ethical? does it make a difference in society? is it interesting?).
I understand why LLM assisted development can lead to burnout. You now have a machine that "does most of the work for you". It's a gateway to questions like "how good are you really at your job?" and "anyone could push these buttons, couldn't they?" and "is this what the rest of my life should be?". It probably also reduces how interesting or fulfilling the job is for many people. You've been reduced to a cog in the machine, and you might be questioning your ability to be anything but.
You feel motivated, full of energy, your juggle millions things at once, and then stumble once, then another time. Then your mistakes become more frequent. And you don't even realize you make them, others do... Until eventually you no longer operate efficiently.
Can take a few years to develop.
Take some rest. Especially if you feel productive like never before. It's gonna be hard to shut down for the first few days, so it should be at least a week of rest. Better two.
Chances are: after coming back you'll immediately notice a dozen of stupid decisions you've made.
I think I'm handling this as well, though. I have my own personal retrospective every once in a while where I evaluate the different things I work on and if they're worth continuing, or if there are other things (or just rest) I need to replace one of them with.
Is no one trying to ship polished things to customers anymore, will each of us have a hacky, bugged version of the same thing with different quirks?
--
My first ever software project even before I worked as a swe had less bugs and frictions than all recent projects where AI was used. Some people like mitchellh seem to know what they are doing (I have not taken a look at ghostty's codebase as it's in zig) so I sometimes get the feeling I'm holding it wrong but in the end everyone around me seems to have similar problems with shipping.
The tasks where there's little-to-no speed boost at all -- do those yourself. You'll feel better and happier.
The best thing is you'll have much more time to work on those things now, because AI is doing all the stupid/boring/dumb/mundane/I-hate-this-so-much/I-don't-ever-want-to-think-about-this tasks for you, the ones that normally make your brain dribble out your earholes.
First use of AI code generation only recently - I think the key is to throw away code until you can one-shot the app. You wouldn't employ a dentist and tell them half-way through what they must do next.
That's just my first impression.
Interestingly, I started with Gemini and switched to ChatGPT using the initial creativity of Gemini as the starting point.
So like search results, why go to page 7 if you can just retry/rewrite repeatedly and never move passed page 1 because at one point, you'll find the right page at the top. As they say "too many cooks spoil the broth" so just get the menu selection right and the perfect meal will be delivered, and if it's not, don't send it back, throw it away and reorder! The cook won't care - it's a robot - no feelings.
If you can't one-shot it, or almost one-shot it - then you f##### up, not it.
AI gives you coders, not some "tool" that you can use to make yourself a faster coder.
Code generators reduced the friction for implementing every shitty idea someone has ever had, but because developers seem to have never experienced throwing shitty ideas away (because if it was written in code it _has_ to be important right?) they treat everything coming out of the Codegen as a precious idea that eventually builds up to clutter one's brain leading to Implementation Fatigue the author experienced. The solution? Go through that same process but focus on one idea at a time and make it good.
It does make me wonder if the people experiencing this had hobbies outside of software engineering (let's say, anything creative) they'd be able to spot the signs earlier.
Advocating for killing a single paragraph for the sake of the book is like abandoning a single feature for the sake of the project, which is his central point.
The only difference is if you're referring to the darling as the whole or as one paragraph/feature
Edit: Reveler vs Revealer
Right. That's the problem. In the non-coding world it's the idea that your pile of crap expands into the available space. So, if you get a garage that is twice as large, it will eventually be just as overloaded and piled-up with crap as the first, smaller, space.
The secret to happiness is to control how much crap you put on your pile. It can be that simple. Or, live with the crap you have and maybe a little bit more, but not 40x more.
What things, why, and how did you measure this?
thing is that writing software wasnt that hard even in 2022 with all the cloud, frameworks and stuff
I love it. Will any of them succeed? It’s early days, but seeing potentially life changing growth in multiple areas at once gives me a lot of energy.
No. you got lied to by AI bros. 100x times the code (that if you burn enough tokens that you could actually hire someone to go thru your ideas and make them...) is not 100x times the productivity
Yeah. It hasn't been that way for 25y or more in the US. Lots of 60-80h weeks.
Long story short, I think we’re in a phase where the organizational value function is lagging behind the tech. A “proof of concept” used to be correlated with “proof of work” and some amount of domain understanding, but I think now what we need is a focus on “proof of understanding” or else you’re probably just wasting tokens on a baby version of the problem. A decent proxy right now is that if you have zero external dependencies then your solution is probably a toy.