I worked hard a couple of years ago to reverse engineer a game to produce a very specific tool. Recently, the game was updated, so I worked on my free time to do a free contribution to the community, and then, a few hours later a tool that does the same thing appeared entirely vibecoded.
Even if some parts of the community care about how a tool was made – Most don't, they just want something that fulfill the goal.
Now even my hobby programming was overtaken by AI, something I did for love and expected no pay out of it whatsoever, which is... depressing, to say the least.
The problem is, baking something and sharing it with others brings people together, there's smalltalk, catching up, other human stuff. Which in the end is kinda the point of it.
Like your post says, with programming, it's mostly just a race to what achieves the goal, with the exception of demoscene and retro programming, I guess. I started learning ARM assembly so I could make a lisp implementation in it. It will be useless, no one will use it, and an AI could bang one out in a few minutes, but overcoming that struggle to understand things in different ways has to be the goal with hobby programmers like myself, I guess.
If you were running a marathon and, halfway through, everybody just hopped in a cab and drove to the finish line, you'd be disappointed.
So when the audience has moved on to synthetic music (stretching the analogy now!), and musicians have as well, it's still possible to continue on your own, for the pure enjoyment of it. But much has been lost with the global transition.
While doing the whole project, I learned a lot about reverse engineering itself, the tooling, understanding static vs dynamic analysis, etc. Which was the most fun part of the project itself.
The rate at what people are delivering projects removes that opportunity heavily, even in hobby communities, which is part of the point!
I've always enjoyed the process rather than the end-product, which is why this personally affects me more than other folks I guess. Some people are motivated on producing more, I was more motivated by the learning process behind it, and those two things aren't compatible, so speed is winning the race, sadly, even if you're not profit motivated. I admit I'm a bit more of a doomer, I still use AI tools at work, but I guess it was time to search for hobbies that are not related to programming anymore.
I think just about everyone in the industry appreciated hand-typed programming as a job, because it was a pleasant enough craft to practice and for a solid couple of decades programmers were treated extremely well in comparison to the vast majority of other careers out there.
Today, juggling a bunch of agents to do what you want them to do, figuring out how to verify their work, remediating problems, and spreading yourself thin cognitively—all the while looking over your shoulder at an increasingly precarious job market—is notably less pleasant for a lot of people. It sounds and feels a lot more like an engineering or product management role—something a lot of programmers would never in a million years have signed up to do voluntarily.
I'm probably an 8 out of 10 on the cooked scale—I'm juggling a suite of ten iOS apps and haven't written or read a line of code in over a year—but I get where these people are coming from. I think the suggestion that they can reclaim what they've lost in this new job they've been loudly expressing distaste for by adopting a new unpaid hobby will ring hollow to them.
This makes no sense. Everybody I know, including me, who hates the big picture of what AI has done loves programming immensely and does it as a hobby as well as a job. The people at my job who are most positive about AI are those who didn't particularly enjoy programming. You're applying Occam's Razor backwards.
The last 20 years of experience have told me that that's the #1 variable that correlates with the death of a project, so I'm in no hurry to speed that along. People have been trying to find some way to skip that difficult step of actually understanding what's happened since programming was invented, and its always a bad idea - because that process of internalising a projects structure is the single most valuable thing for a project. Creating a project structure that can be internalised by human beings - and then doing that - is software engineering
But i get where you sre coming from
However there are other folks in my company who, with very little programming knowledge, have produced viable, workable solutions for our company to use. All projects that were in my list of TODOs that I hadn’t gotten around to.
It was in that moment that I realized I’m very quickly going to be surpassed if I don’t adapt and move quicker with AI solutions. Since then my output has increased a bunch.
I’m not the most stoked on it, but as with all companies, results are far more important than the journey. So long as it works and is at least mostly maintainable, leadership does not really care how we got there.
But all of this was forcing my hand because people without the foundational skill set were creating equivalent output to my artisan, bespoke solutions. Writing is on the wall.
It's not necessarily a given that the person you're replying to agrees on the latter, and therefore they might not be stoked on you starting off by agreeing with them but going on to make an argument that supports the companies responsible for the very thing they're complaining about.
I think there's a contradiction in you stating that management thinks LLM-generated output is "maintainable". They went to business school, they don't know what that means. It's your job to explain to them the consequences of shipping code faster than the people whose job it is to understand it can do so.
Now all I have to do is make sure they're not peddling an actively bad idea and if not I can just tell the bot to incorporate their dubious ideas.
In the past it was all, I'm not familiar with this construct that solves our problem perfectly, why don't we cludge adapter pattern in here again.
True, but dealing with agents is still easier than dealing with people (at least for introverted personalities). That being said, you still need to deal with other people's army of agents.
I'd love to genuinely love these blog posts but they are all the same! They're all like "now that machine are better than us $xyzargument". I'm so pissed off when I read so blantant lies like AI "writing code better than me" maybe better than you! But in general it's just a big lie.
> the economics of purely hand-written code have changed
who are you to know? I still hand code and produce a lot of value because I do care and polish everything I do. There are some pieces of the software that I wrote that I never touched again, they work perfectly, no errors no customer complaints
There are a lot of mediocre programmers aren't there, I wouldn't be surprised if on average Claude is doing better than what exists. It's not a "lie", anyways, just a point of view.
I'm ok with vibecoding scripts, I love programming the machine and making the end user happy and not dealing with bash! I don't judge scripts quality as long as they are tools in the workflow, I dont care about that, unless they will somehow be part of the production. The name Script implies that, there isn't any architecture and Claude Opus sucks at architecture
For me, it writes code that mostly works, which is great. It insists on adding some of the least readable comments I've seen. It also likes to pad out the code to about double or triple what I would write.
It doesn't seem to have that little voice that says "hey, this approach sucks" so it needs the harness or the prompter to tell it to go back and refactor. Even Fable and Opus struggle with this.
I don't begrudge the business for making the prudent choice of making me use AI, I just sort of lament that what I spent years enjoying and getting good at was so utterly derivative that it was perfect for the LLMs. It would be insulting if it weren't just a fact.
I would recommend "The Leprechauns of Software Engineering" by Laurent Bossavit for an insightful and entertaining overview of just how much of software "engineering" is based on "truths" that we don't question.
On the other hand, if you mean tight, performant, simple, well-factored code, then yeah. LLMs simply aren't there, and may never be. On the other hand, maybe that matters less than we thought it did. Time will tell.
To me it's just crazy of how dumb it is to test an idea with a vibecoded shitty app. I'm not saying it should be perfect from day zero, let's pretend we are talking about cakes, how crazy it would sound you will tell people to try and judge your new idea of a cake you don't even know how it taste or what's inside?
For the first group, it doesn’t matter how good your cake is. If you spend a year perfecting it, you won’t sell them any more cakes. And for many products, this group is basically 100% of customers.
It's disappointing that the prevailing sentiment now is that architecture is less important than we thought. Software is always going to be getting more important, and all of it should be well thought out. If these people had these tools in 2004 they might've made thousands of fragmented buggy social media startups and actually slowed progress on that front.
I completely agree. The fact that the software from places that are very vocally pro-AI (microsoft, salesforce, etc...) is still so full of bugs is really contrary evidence.
Those weren't lies. The AI does produce better code than those people. They simply weren't very good programmers to begin with.
I think this goes a long way to explain why there is such a huge difference in opinion about the quality of AI-written code: Some people say LLMs write code far better than they could, and others say the code is always terrible and requires a great deal of fixing before it's acceptable. How can two different developers say those very different things about the same product?
It might be a tough pill to swallow, but if you think your LLM is producing better code than you could produce... well, I might have some bad news for you about your own skills.
But in the new environment of LLM-assisted coding, the LLM produces acceptable code so much faster than I can write it. Just taking time to understand and retool the LLM's output means an order of magnitude lower productivity and it doesn't feel like that's acceptable in this era.
Folks I know are landing 10+ PRs a day and nobody is reviewing anymore, and these are not companies that would have been skipping code review 2 years ago. The whole culture is turning against taking the time to comprehend and reason about our own work.
There is a wide range of code that will do the same job. 15s vs 2h for code 60% as good? 10 minutes for code 80% as good? 10 minutes today and 10 minutes tomorrow to fix something that is 30% as good?
A lot of people are going to draw that line in a different place and now that people can make that trade off you will quickly find they will and it probably wont fall where you would like it to.
At the end of the day a business pays you to produce value that will earn them money / customers. They don't pay you to write good code. Sometimes those two align and both sides are happy but they don't and often wont.
I wonder, given LLM's ability to "produce code faster" are they also producing value faster? I don't see it as an end user. Software is getting worse and worse, buggier and buggier, every release. I don't see it at my company either. We're producing massive quantities of code constantly, but still every project is on fire and every line of business is way behind schedule.
"The AI labs are scared of their own models, surely they must be credible sources on how powerful those models are"
"They are asking the government for regulation, they must be even more responsible than the average company"
"They are claiming to be a software engineer who automated their job with AI, surely I have to buy their course"
There are many boilerplate pieces of software that an LLM can generate faster than a human, but nearly half a decade into the LLM era there is no evidence that it's leading to the apocalyptic end of software organizations. And that's all with the subsidy in place that is now disappearing. Everyone online is lying for money, and that money is coming out of the same investor-subsidized marketing budgets.
I've resolved to just building stuff for my own businesses and myself for fun. If an opportunity or enlightened soul comes along that wants to benefit from my knowledge, great. But I think it's best to just let people feel the full brunt of what's coming. Sometimes the only way to learn the lesson is to stick the fork in the socket.
And the skills they provide are transferable. Patience, attention to detail, staying on task.
There's also a tension in your comment. Are we prioritizing "advancing society" or programmer feelings? If it's the former, then it doesn't matter if AI is better than humans, whatever moves us forward faster is better. If it's the latter, then we're talking about holding back progress for the sake of a programmer's feelings.
For the record, I'm a lifelong programmer who loves AI because now I can experiment with new ideas at a scale I could not before. I feel zero loss. In fact using AI brings back the magic of technology that we lost in the 90s with the "business-ifying" of tech.
The second thing revolves around this:
> In fact using AI brings back the magic of technology that we lost in the 90s with the "business-ifying" of tech.
This is the complete opposite of my experience. AI seems like the logical conclusion of the business-ifying of tech. Get rid of all those pesky nerds, and the MBAs can just create whatever grift pops into their head.
I'd argue you're conflating two independent axis: technological progress and societal inequality.
AI is useful today and is getting more powerful and efficient. This is obviously great for humanity! It's enabling discoveries that were previously out of reach, and allowing us to accomplish the same amount of work with less effort.
AI is also generating massive amounts of money for the wealthy and powerful and increasing inequality. This is not great for humanity!
I do think it's important to keep in mind that this centralization of power and wealth is not caused by AI directly: the pattern exists whenever there's a desirable but scarce resource. The same argument that AI is increasing inequality can reasonably be made about concrete, steel, and steam engines. The problems caused by AI are really human problems at their core. It's possible AI could even help us fix them! (I'm not at all hopeful.)
I was just pointing out the logical tension in the comment I was replying to.
> This is the complete opposite of my experience. AI seems like the logical conclusion of the business-ifying of tech. Get rid of all those pesky nerds, and the MBAs can just create whatever grift pops into their head.
I have dozens of extremely nerdy projects going thanks to AI. I wouldn't have had time for any of them because I was too busy making money to spend 100+ extra hours programming my wildest tech fantasies, but now that's possible!
AI also makes it possible to do hardware programming, reverse engineering (when Anthropic isn't censoring itself) and all manner of other geeky pursuits.
I'm genuinely happy that you're having fun with it. I can't get over the feeling that _I'm not building anything._ To me, it seems like hopping on an IRC channel and copy-pasting code from a greybeard instead of writing it myself. I just don't find that satisfying at all.
programming will likely be the same. fewer people who care to be craftsmen, more hobbyist, a few artisans who really dig deep and make new patterns (we still dont see AI sampling out of distribution).
>reduction of the job to a hobby takes that away from them.
this is your personal feeling. they never had anything in the first place, just that the market was valuing a certain skill for what it could output. the perspective you are posting is purely a construct.
I didn't mean to say sewing and knitting weren't impactful - on the contrary, they are analogous to programming: they were impactful but now they're basically hobbies. Maybe there are more developments left in the clothing making process - not sure.
Programming is the art of automation, and is being taken to new levels. It'd be quite damming to the field if a substantial % of the world's output over many decade hadn't brought us here, tbh.
Were builders crying when the Hagia Sophia was built? Projects come and go, nothing is forever.
One step closer to the matrix. Send the white rabbit over, I've got your floppies ready to go. No ai, and developed without an active internet connection, so you can listen to music safe in the knowledge that your music isn't listening to you.
The part of programming that sucks the most is untangling ambiguity. In my current app I had an ultra simple proxy convention, but it sucks. I have since settled on a different single convention to cover 6 different scenarios of traffic redirection, but it was a challenge to distill simplicity from chaos of the wilds and write all the various tests. It’s moving forward faster now but it was like starting over to get this rolling.
What I find is fun is building things that solve real problems I have. Then my problem is solved, I am paying nothing for it, and I can extend it however I want for any reason without downstream restrictions.
There is so much AI still cannot do in software. If you ask AI to build a faster WebSocket solution, for example, you will get more of what’s already there. I have a WebSocket library I wrote myself 4 or 5 years ago. I thought it was fast, turns out it wasn’t. I wrote my own perf tool for it and had a defect in the perf tool that spit out wrong results, but that defect showed me where the performance bottleneck was. Now my library is 40x-100x faster than other WebSocket libraries. I did use Claude to analyze my earlier perf bug, and it made the same mistakes I was making. If you want to go faster than popular battle tested solutions you have to be original and AI just isn’t quite there.
I think it could be argued this is exactly what programming _is_.
Work is a significant amount of my waking life. I chose this career because it is something I enjoy. But AI is removing a lot of the enjoyment for me. And saying "if you don't like it, just switch careers" is not helpful, and ignores the difficulty and cost of doing so.
Building software is hard for humans, managing the complexity of large projects has been at the frontier of our intellectual capabilities for a while, leading to well known issues in cyber security and exploding costs. At some point machines are simply better suited to the task.
So AI is kind of just bringing that to its logical conclusion.
I don't mean that in the sense of "the world is against us". But the Googler walkouts from yesterday years were pretty embarrassing for a lot of executives and MBAs.
The culture has also never been kind to people in adjacent professions. I've met many designers and PMs who feel programmers are difficult to work with and walk over everyone else.
I think there are a lot of people out there who got one reason or another are excited that programming is now more accessible without the programmers.
There's the more positive angles as well, such as small businesses who've struggled to afford bespoke software. Now it's available to them cheaply, or at least cheaper than before.
This stuff isn't just a tool to make a carpenters life easier like a bench saw. It's available to everyone who's wanted a new wardrobe without the time and cost of something bespoke or hand made. AI is IKEA flat pack furniture. Cheap, easy, and surprisingly good.
Normally, such new tools weren't a perfect fit for automating shilling and didn't involve trillions of dollars on the line.
What do you say to someone that is bothered though? I don't know why it effects my enjoyment so, but it does.
My problem with AI is that it now excels at the part of the job that was my favorite (writing code) and it leaves me to do the part that I suck at (being a manager). In 18 months or so my job satisfaction has gone from pretty high to abysmal.
This is ok. You will process the change, and you'll come out stronger for having done so. It takes time to decide what you want to do in the world, and even more time to decide how to react to the world changing and moving away from your planned path. And it takes even more time to actually see if the world is moving in a way incompatible with your plans.
It will be tempting to cycle into negative predictions and negative self-talk. This will not help, and will not be productive.
You, ryandvm, built a career around something you love, and that is amazing. You can choose to do it again, to find something you love, to be stalwart about how you work and who you work with, or any number of other options. The thing that nobody can change is your agency.
I struggle with the nature of work every day, and have for months. It has caused me to re-evaluate what I work on, why I do it, how I structure my finances, where my kids go to school, literally everything. Still the ship turns, as it must.
Reach out if you want to chat.
I don't feel like it's patronizing to remind people about achievements they've accomplished and that they're still a capable person. Nothing we say to each other here on HN should be taken as "This is how you must live you life" but more like "Here's is something I hope helps you, if not, no worries", as we hopefully assume good faith out of each other.
I too have lost something I loved, I gained it after years of relentlessly focusing on maximizing what I loved and minimizing what cost me energy. And now the world flips on me.
The good news? I got pretty good at consciously finding the energy givers and drainers and optimizing for the givers, so I'll just keep doing that. I'll either start enjoying micro-managing LLMs, or find something else entirely. Or find that the LLMs need less and less micromanaging, or start enjoying whatever they need next year. (Point an army of agents in a direction?)
I came from the molecular biolab with Linux as a hobby, then when to software dev and infra. What's next ? Idk, I still love biology, keeping eyes and ears open...
* I made the classic mistake of assuming the present was permanent. It never is anyway, small changes always ruined the present. The accumulation of small changes over my career has changed the way I work probably as much/more than AI has changed it this year, if you can believe that.
* I discussed the family budget with my wife, and made a plan to halve our income requirements. It will require a race in the short term, but allows a coast later on. This is key for me - almost all my tension regarding this phase is about the future earning potential of our household. If that goes away, who cares how work changes?
* I made the other classic mistake of not remembering how much I have changed and adapted over time. The breadth of things I have worked on is pretty remarkable, and the things I have learned to do are crazy. While things are changing fast now, they aren't changing quite as negatively or immediately as some claimed they would. There's room to adapt.
* I stopped assuming I had to work the way people said I should. Aside from CEO mandates, there's a ton of wiggle room in how you produce code. I read changesets and make manual adjustments to the pattern, etc. I write my own parts when I want to. I specify a design that I want rather than asking for whatever the AI wants. I get to own everything but the typing that way, and my RSI is improving dramatically b/c of it.
* I use AI to set up programming challenges when I feel disconnected. It sets up a tangible problem, and acts like a coach only when I need it. I use this to preserve the feeling of sharpness. Earlier this year I challenged myself to write, in C, from man pages only, a "ping" and "traceroute" clone. I did so on a flight back from a work trip.
* And I started reaching out to friends to hang out more. It's hard to doom about AI when your friends and you are having a beer and playing Container or Captain Sonar. Life has always been what's "out there" not what radiates from your monitor.
Derek Thompson, in "I Know Why the Mathematicians Weep": "If intelligence becomes less uniquely human, we may come to value more highly what remains uniquely human: our capacity to relate and to care for one another".
Funnily my bot was called Cladius van der Bot, nice name ;)
I doubt most people will be developing a rapport with an AI agent trying to sell you that contract at work, or helping you when you're irate and have escalated a problem a few times.
All of those except for therapy are awful career fields. Musicians, actors, artists (outside the tip top of the field) are all the butt of jokes about how broke they are. Social work chases people out once they realize how powerless they are for such poor pay.
Therapist might make out well for a bit, but it seems like a loaded term these days .
If you're aiming for the top, sure. There are plenty of people who make a living doing stuff like that and are happy because they enjoy it. You're unlikely to be one of those people if you move to an area where there's an extreme over-supply and try to "make it big", or try to be "pure" to the art and eschew commercial options. e.g. An actor in LA, the starving artist in a loft in NY.
> Therapist might make out well for a bit, but it seems like a loaded term these days .
Loaded how? I was thinking of psychologists, licensed mental health professionals, physical, occupational, and speech therapists.
People could learn things on their own but still pay teachers
Trainers, coaches, therapists… yes.
even the job of freelance engineer is customer relation. how good are you at extracting product requirements? understanding a clients workflows? these take relational skills and are often what freelancers are paid for, beyond the ability to produce code.
Maybe we just sit around campfires and tell stories as the billionaires warm their hands on their burning data centers.
Don't forget that everything anybody owns is just a system we invented, my house, my garden, only a piece of paper that we all accept keep others from it.
We can reinvent ourselves. Idk, to me this is a comforting thought. But I agree it's still lacking. It's not simple, discussing things online helps develop language and vision around it.
I stopped assuming I had to work the way people
said I should. [...] I get to own everything but
the typing that way
I think this gets to the heart of my disconnect with the "I miss coding" crowd. I still get to do most of the stuff I found fun w.r.t. creating software.Typing the actual lines of code was fun, sometimes, but it was never the goal. I feel like I'm still solving the same problems.
No amount of processing will move someone from ordering a steak to just enjoying their given peanut butter sandwich instead. They ordered the steak, and now the restaurant is telling us all too bad there's no steak anymore - eat your damn sandwich.
The comment you're referring to aims to be helpful and empathetic, but the fundamental problem with it is that it essentially dismisses the very real problems people are raising. It tells you that the change is inevitable and that you shouldn't and/or can't fight it. It tells you that what you're dealing with are your own feelings and, although they're "valid" (in the sense that it's understandable and human to have them), you need to work on overcoming them or finding a way around them. And if you can't, then you should either move out of the way of the progress or you'll remain unhappy.
It's an incredibly frustrating way of being talked to, one that I've seen managers employ quite a lot. I call it the "management aikido", because it takes your own impetus and turns it back on you, by reframing whatever issue you brought up to put the onus on you. Most of the managers I've seen use this technique believe they're doing a good thing by "empowering" you to deal with problems. What it does, in fact, is discourage you from raising issues in the first place.
On top of having the same "management aikido" vibe, @jvanderbot's comment ends up being "socially insensitive", for lack of a better way of describing it.
Over the course of history, we've seen great shifts -- typically tied to technological evolution -- that caused significant suffering to a group of people but (arguably) ended up being a net positive for our society. And when we look back, we inevitably feel a sense of empathy for those people and we recognize that what happened to them sucked and we express the hope that maybe next time we could do better as a society.
And then it happens again, like it's happening now, and we not only fail to do better as a society, but we talk like trying to do better is unreasonable.
That, in essence, is what makes @jvanderbolt's comment sound "religious" to you: the unquestioned assumption that what is happening is supposed to be happening and that it's you who has a problem that you have to work on.
I'm definitely stealing "management aikido" by the way, thanks for that. :)
Even if one were to continue doing everything by hand, it will still be harder compared to others who aren't. As in, companies will come to expect more/faster work than you are capable of, so it still affects us old farts that don't want to change.
We'll find something else, sure, or just retire... but not everyone is/was ready to.
I'm not sad on a personal level per se, I can still be positive and look to the future, but I lament what we increasingly no longer have.
I've always taken the view that it was luck - lucky that my interests aligned with the market, lucky the market put value in what I am interested in doing, and lucky that I was given the chance.
I was never in it for the money, I was always in it for the enjoyment, and I will remain in it for the same thing.
The market for my knowledge and skills might come and go, there might have been a brief moment in history when someone like me could make a living off these skills, but like so many other creative careers that time was always going to be fleeting
I worry about burnout.
Then the next day after this brain haemorrhage inducing experience I just waste 2h remotely on gathering mental capacity to simply know what next I need to do and next 2 says I repeat until weekend.
Simply because my boss is developer in love with LLM and machine gunning 20 PR daily.
Not to mentioned PR with more code than I can reasonable can understand and say anything about it in a project I didn't touch.
So, currently I can only say I hate my life. I'm looking for an idea which pays similar but is as mindless as humanly possible
I went from being a passionate programmer spending all my free time working on code, to be unable to write a single line for even my most loved personal projects for 6 months. Fully awake, in the middle of the day, I would boot up my computer and within 10 minutes my body would put itself to sleep. I'd wake up hours later with my laptop barely past the login screen. It took me 6 months before I could do personal projects again. 1 year before I could do professional work again. 2 years before I could juggle both. I've fully recovered (or at least I did right before LLMs hit the scene), but it takes a lot of time and I lost a lot of money not working for that year. If I could go back in time, I would have quit that job earlier because it is far easier finding jobs as a passionate developer rather than a recovering burnout.
Do they know they are, essentially, expending you?
It seems like your boss is doing work that doesn’t actually add value without you to review the code. But maybe the company isn’t set up to fairly evaluate the fact that review provides more value than creating code, with a workflow like your boss’s?
I don't about the OP's specific situation, but there are definitely managers and management consultants that consciously try "expend" their employees.
Jeff Bezos is a famous example. IIRC, to avoid "complacency," he wants constant turnover of employees. Hire new people, burn them out while they're new and enthusiastic, then replace them. That's why it's occasionally leaked that Amazon consider such-and-such employment market mined out (e.g. everyone's either worked for them or is wise to their ways), so they have recruit further afield.
When I joined I thought this is peaceful place, after a month this changed tremendously.
And this is third job like this in a row so I have no hope to find anything even slightly as peaceful as 5y ago
If my boss talked to me this way I would leave as soon as possible. Update your resume and get searching, I wish you the best of luck.
Get resumes out.
https://jacobin.com/2023/03/automation-union-busting-product...
Outside of LinkedIn Lunatics and social media engagement bait, I agree that nobody is saying you can't enjoy programming.
Of course we can all still enjoy programming. I still do some personal projects manually. It's fun and it also keeps my skills sharp.
It also makes you realize how much non-optimal stuff slips into entirely AI written codebases if you're not paying attention to the code. I can push on Opus 5.5 or Astra all day and get output that works, but when I get into the code and start processing it myself I ask a lot of questions that result in "You're absolutely right!" responses followed by having the LLM clean up what it did.
The sad part is knowing that the golden window or programming job enjoyment has closed. We had a relatively small window where software jobs paid extremely well to do work we enjoyed. My happiest career memories were working with small teams at startups where we would sit in a room together and be focused on coding for hours.
I'm sad for a second reason: The years before AI took over, my jobs had been trending away from that focused coding time for other reasons. The trend in the industry was to stuff companies full of roles like product owner, scrum master, cross-functional project managers, and other roles. These are highly valuable in small quantities with the right people in place, but at some point it got out of control. Most of the companies I was with felt like a constant circus of meetings and debates over what to build, with little time left for that focused coding work anyway. I still cringe when I remember a meeting with a CTO who explained his target ratios for engineers to designers to product managers to engineering managers to project managers where we realized software engineers were becoming a small minority on the software engineering teams. I disliked it at the time, but now I'm extra sad that my last window of possible focused paid-to-code time was spent mostly in meetings and Slack debates.
When you do that, a team can just go. Instead, in many places there's all this bullshit about "Application X is built by Team A, but Team B and C will do the QA." Or "Team D is in charge of Applications Y, Z, and Q, so they can't get to your feature request for Q this PI, because they've got high-priority work for Y and Z." So now you've self-blocked all work on Q just by screwing up your org chart. And we haven't talked about the fact that Team A is in the US, Team B is in Europe, and Teams C and D are in India, so now let's add time zone nonsense to all of the above stupidity.
You don't need as many of those ancillary roles if people involved actually understand Lean and how to run an SDLC, but in my experience, there are too many devs who don't care about anything other than slinging code and too many managers more interested in expanding their own rice bowls and looking important than in actually streamlining how stuff makes it to prod. And then you need a pile of PMs or Scrum Masters to sort out the mess.
If anything, I enjoy programming more now with AI assistance, not vibe-coding. The depth and breadth of my work has increased greatly (yes, I still read and write a lot of code and documents, that the agents build on); I'm like a kid in a candy store.
Projects that would have seemed too daunting now seem feasible to tackle. I could even get started on implementing my dream language, or a knowledge management system for agents, or ... the possibilities are endless.
Now, my software engineering is for my own company, maybe that makes a difference. There is no one breathing down my neck to use more AI where it does not make sense, or to use AI this way or that. I am in the driver's seat, and I only delegate to AI what I need it for, and what it is good at. There is still much that is required of me that the AI cannot do, not anytime soon.
That is 100% the difference. Most people working as employees aren't passionate about the company as an entity. They won't love your baby like you do. What they did love was taking your baby for walks; now they're left with just changing dirty diapers.
Ever since AI reached a certain level of quality, I haven't been able to stop (vibe) coding. I've discovered that I really enjoy designing and building products, more than tinkering; occasionally, I come across algorithms or other technical details that I find interesting, and I switch to manual mode.
At some point in my career, I just got tired of having to read tons of documentation for fragmented libraries and frameworks, and AI is a "solution" to that.
Cynically, this could be seen as plumbing, but there's an art to designing efficient and usable products, that I personally enjoy very much.
People enjoy different things. Its not strange. Treating it as strange is kinda insulting, so I'd recommend that you rethink how you phrase this.
Yes! Which means that the argument frequently seen here of "AI is terrible because everyone hates using it" is not valid.
Seems like the same old story. Rude people defending other rude people so that they can collectively continue to justify their own rudeness. Usually with arguments that don’t stand up to scrutiny. And usually using a fresh account.
While interests have a wide variety of norms, communication has a much smaller space of shared norms, and "strange" implies a negative value judgement in most of them. I'm comfortable with my comment.
I feel that the fact that people feel the need to pile on people who enjoy writing code is a problematic trend on HN, whereas telling them to maybe consider other peoples' priorities and preferences is not. The paradox of tolerance is apt here.
> Strange implies a negative value judgement
It sounds like you've internalized some negativity around being "not-normal" -- how I would define "strange".
In a society of vice, greed, and perfidy, acting nice for no reason is "strange".
So, as many things that can be compared and have a "normal" can be strange.
Deviant implies negativity, but I would say pacifists are "deviants".
Any negativity with "strange" has to come with context.
Well that’s your problem right there, also a wider problem in programming culture. You might have had a lot more fun if you minimized dependencies and just built everything else you needed on your own. That’s fun, more fun than Vibecodin anyway. That said most programming jobs even in yesteryear was framework management so I’m not surprised people are happy to give that off to AI.
From my anecdotal experience it absolutely is more fun (I yearn for the early days when this happened more), but it's also extremely inefficient and slow when you need to ship a product, and increasingly difficult when your code has to run on high-level platforms (like the web, mobile, etc). Building frameworks and re-inventing wheels is one of my favorite things to do, but it rarely makes business sense to do that unless you're in a very niche space.
Been working on my own ORM / Framework for 15 years at this point. Had a laundry list of things I wanted to finish that would have taken me another 3-5 years and it was done in about a month. Still controlled every function name, every preference, every comment, even went in and manually rewrote function names and adjust how it did things. At one point I had to manually intervene in an algorithm because the AI fucked it up badly. Most of it's first try was garbage. It's true. But still in the end I didn't really have to type it out. Sometimes you've been living and breathing a code base for so long that you can just skim the function names and their contents and be content. So that's what happened. It only took a few sessions and I was done.
So it's over. Not only is it "done" exactly to my preferences with exactly all the right method names and configurations I have always dreamed of. It also has 100% unit test coverage AND on top of that I have a suite of benchmarks profiling it against similar libraries in order to provide an honest assessment.
This would simply not be possible before AI. It's a little bittersweet that my ongoing project is "done" but now I'm building things with it. So it's not all bad.
I encourage you to stop calling it "vibecoding" when you are, I presume a long time software engineer, and shove your hand into the guts of the code and force it into the submission sometimes.
> just built everything else you needed on your own
Exactly what I'm doing. Made my own task manager. Have my own harness. Have my own fork of $browser. Whatever.
I'm okay with this.
That seems like an solution to the kind of programming that is piping together little pieces of business logic with all kinds of different APIs and services all over. I agree that AI is helpful to distill the piles of documentation and things to learn.
But I mostly enjoy a different kind of programming where you work on a big complicated problem / business logic that sits mostly within the bounds of a defined language setting. The craft of finding more and more elegant, far-reaching, and correct abstractions, and then being able to build things out confidently from those well found abstractions is, in my mind, the greatest joy, and also what AI seems the worst at.
> AI is a "solution" to that
Reading AI documentation/notes is better then? Or is the implication that you can oneshot all apps/code without reading the claudespeak that explains it?
Not necessarily one-shot, but still in a fraction of the time it would take you to manually wade through the implementation.
This was pretty much already the case half a year ago, with some more patience and tolerance for worse UX.
Nowadays we're getting to the point where the autonomous implementation can deliver UX like software produced by teams at Apple or Google and the like, and with optimized performance.
i'll have a specific technical architecture in mind -- API specs, a list of cloud services, a general idea about how code should be broken into modules. i'll write it all out and let the pieces get filled in by AI.
it's not really 'vibe coding' as the term was originally envisioned where you just describe a top-level goal (e.g., "make me a new version of minecraft. no mistakes please."). it's a different level of abstraction where the models are primarily doing implementation and not design.
for me this lets me do the fun parts of designing software BUT i don't have to slog through documentation and learn a bunch of DSLs to get it going.
I'm much more on your side personally though, because first, when you know there's a better and faster way to do something it does take away from the enjoyment of doing it the old way. Some of the enjoyment for me came from being unusually good at something vs. everyone else.
And second, even my hobby projects are always something that I want to make real, more than they are something that I want to do just for the fun of working on them. Even though I enjoyed the programming and puzzle solving process, the end product is still the main goal. So I'll be using AI at home as well (and it is nice to reify projects faster than before).
And all this also ignores the fact that even "only" losing your enjoyment of paid work, and not your hobby work, still sucks!
Having said all that, I recently read Use Of Weapons (1990) by Iain M. Banks and this passage encouraged me about the future:
"Can’t machines build these faster?" he asked the woman, looking
around the starship shell.
"Why, of course!" she laughed.
"Then why do you do it?"
"It’s fun. You see one of these big mothers sail out those doors
for the first time, heading for deep space, three hundred people
on board, everything working, the Mind quite happy, and you think,
I helped build that.
The fact a machine could have done it faster doesn’t alter the fact
that it was you who actually did it."
"Hmm," he said.
"Well, you may 'hmm' as you wish," the woman said,
approaching a translucent hologram of the half-completed ship,
where a few other construction workers were standing,
pointing inside the model and talking.
"But have you ever been gliding or swum underwater?"
"Yes," he agreed.
The woman shrugged. "Yet birds fly better than we do, and fish
swim better. Do we stop gliding or swimming because of this?"
He smiled. "I suppose not."
"You suppose correctly," the woman said.
"And why?" She looked at him, grinning. "Because it’s fun."AI excelling beyond a human at writing code is not an objective truth.
I would say even without AI, a manager telling a developer what to code or how to code, will never be better than that engineer themselves being the driver and the developer.
For me personally, quality code has a strong human component. Only I know what's best for the code, based on:
1. my deep understanding of the long history of the organization and of its mission and concepts 2. my intricate personal relationships with the users and the other developers 3. all of my hundreds of unique, personal experiences troubleshooting problems, which are always a combination of code and interpersonal relationships, the open source community, and opposing stakeholders.
Until AI becomes AGI (and that's a big if) and you can train it on 43 years of experience, it will just be an approximation of a true person's holistic engineering pedigree. It will always be asymptotic to true competence. It will always be second-best, even with a human driver.
Now I can work on much larger and much more challenging projects where I care more about the end result than learning little details.
Something has certainly been lost, but I’ve at least gained something else in return. I can also do use an empirical approach now, like testing whether a big change would be beneficial without having to map it out and try to estimate the effect. This has made what I try to work on more research-like than engineering-like; I’m trying to figure out if something is possible rather than how to best implement something I know is possible.
I still worry that soon there won’t be any way to contribute economically, that the machine will eventually be better at everything, but this is a much broader problem than just software or even engineering.
It is an amazing time to be alive, scary and uncertain, but amazing nonetheless :)
Now I understand the meaning of the famous opening sentence of the 1859 novel A Tale of Two Cities by Charles Dickens: “It was the best of times, it was the worst of times, it was the age of wisdom, it was the age of foolishness, it was the epoch of belief, it was the epoch of incredulity, it was the season of light, it was the season of darkness, it was the spring of hope, it was the winter of despair.”
Edit: I really don't understand the down votes, what did I say that's do bad?
Edit: To add to that, even in my "micro-mangaged" projects, the parts I didn't review end and treat like a block box temporarily up being the parts that introduce bugs.
My problem is it doesn't even do that. LLMs still aren't good at writing code (despite the hype) and you have to review everything they produce, which takes just as long as writing it myself would. But the industry is falling all over itself to use them to write code, doing a worse job than humans would. It's extremely frustrating.
Something has to give; the constant onslaught of slop and workflows changing every few months just isn't sustainable. Either we slow the fuck down and figure out what we're even doing here, or the AI improves so much that we're all out of a job.
From what you're always commenting, I could believe that you were exclusively using Haiku 4.5, which would explain how the tool produces only garbage while the rest of the world pretends AI was great.
Just out of curiosity, do you use like Opus 5.5 in Claude Code, and you still find the results inadequate?
All features should now be created via this workflow. It’s basically a ticket going in, a few rounds of questions back and forth with the LLM, then waiting for an hour until it finishes.
Then having to read/review 2k lines of AI-generated code. It’s terrible.
I have always been the opposite, despite mostly having IC roles in my career. Still, I don't enjoy the change, mostly because the UX of this tooling is absolutely miserable when you need to do anything serious with it. I am past the point where I thought it was user error and think it's just fundamentally baked into the ecosystem to be annoying to work with. At least in most management situations, the employee isn't going to gaslight you, question every tiny decision you make (or worse, subvert ones it finds more 'favorable' for itself) or just make up wild, easily disprovable bullshit in a constant stream of verbal fecal matter. I've worked with maybe one person that came remotely close to that and they were easily ignored. This stuff's persistent and unavoidable.
I am getting a lot more done, but I am a lot more tired.
It may be obvious to conclude that good programmers are good reviewers but I think all variations exist. I wonder how many people don't like their jobs anymore because they don't like reviewing code written by AI.
By far my biggest use at the moment is just getting all the software I use to function as I want it too.
I love solving problems, programming was always about that for me. The sucky part was always "I know the solution and written it out, now I need to use a text editor to actually make it work like that", and the fun part was always figuring out how to solve the problem, making sure it actually does solve it in real-life, and once it's been implemented, iterating on it until it gives people some sort of pleasure to use.
Most of the other passionate programmers I've met in life have thought about programming the same way, all of us favored approaches with less code, not more, because typing sucks and is slow, and more code means more bugs. I haven't met any of you "I love typing special characters into a computer" people in real-life, and I'm wondering where I could, because clearly it isn't just you who feel like this, seems there is a somewhat large section of programmers who enjoyed the typing experience more than the problem solving part of programming.
What's always been clear, is that people get into programming for different reasons, and some of those reasons might no longer lead to the lucky life of working with what you love and get paid handsomely for it, which sounds terribly sucky and scary, and I do feel for the people that now have to face this.
Regardless, I apologize if I misunderstood "writing code", I take that to mean "typing code" as the other stuff we do around is more "problem solving" than anything else, regardless of what the activity is (thinking, designing, troubleshooting, etc).
An interesting HN search for comments with "I love writing code" that has some false-positives, but has programmers stating clearly they like the action of manually typing code: https://hn.algolia.com/?dateRange=all&page=0&prefix=false&qu...
Nobody enjoys anything that isn't problem-solving, with debatable exceptions for drugs and hormones. Fun is learning. The learning is either subtle and inexplicit, or partly subtle and inexplicit. You engage with a medium, you interact with the work, you make edits, you learn stuff. If you're shepherding an AI then you do all that on a different level, in a different way, a way that isn't better as such. You're doing a different thing. (Meanwhile, the AI doesn't have any fun.)
I've also never really experienced that professionally. I started as a professional programmer in 2012 and I've always been pushed to do some form of "agile" where you figure stuff out while you work because building detailed specs upfront is too costly and time consuming
So now I'm being told it's fine to pivot to these AI tools and it's awesome, you just plan upfront and execute. But I genuinely don't think I have those skills. My workflow has always been "have a rough idea where we're going and fill in the blanks as we go"
So now I'm trying to adjust to this new work, planning upfront with more detail and I'm struggling.
Coding is how I used to work through problems. I was really good at it. Now I feel like a fraud. Just a hacker, not a software engineer. I don't know how to get to where I need to be, and I'm really unsure I even have it in me to learn and entirely new way of being
I went from feeling on top of my life, my career on a great trajectory, and really confident I could build anything that anyone needed, to feeling completely worthless
And there's such little empathy out there for anyone going through it like me. AI is here now loser, keep up, get on board or get replaced.
If you read this far thanks. And if anyone has any advice for me, how to go from "thinking through problems by coding your way through them" to "doing the thinking upfront" then really, I'm all ears.
Comments such as "now that economically 'traditional coding' no longer works" get over it. Or a recent one "get over your anthropocentric view of intelligence, AI is here now".
These views (and many more besides) are short sighted, I do think anthropocentrically. The economy is a proxy for the lives of real people, the economy matters only because it deals with real people. People who feel, have agency, who live and die.
Two super AI's talking to each other maybe the most intelligent things in the universe but they don't matter.
Humans matter, human lives matter, human feelings matter.
I think that this really needs to be internalized by a lot of people. I really appreciated when my boss sat our team down and said "Yeah this is the new normal, and I know its not what you signed up for. Its fine to feel sad that your job is changing in such a dramatic way." No, it didn't help anyone actually adjust, but sometimes you just need someone to empathize and tell you its OK to feel bad about this when everyone around you is excited.
> If you read this far thanks. And if anyone has any advice for me, how to go from "thinking through problems by coding your way through them" to "doing the thinking upfront" then really, I'm all ears.
I'm trying to replace it with "thinking through with AI" to limited success. A lot of people recommend having the AI "plan" the thing and review the plan, which is OK. I've also had it do a prototype and poked around a bit, summarized the learnings, and then did it again in an iterative manner without rough edges I've found. Whether you are given the space to do that is up to your org -- its hard sell to "do it again" but I've found that the second attempt leads to better results since I can prompt my way around the problems. Sometimes this also leads to a "Not even wrong" moment where I found out that I framed the problem wrong and the AI dutifully carried out doing the wrong thing.
Unfortunately, I don't have a lot of first-person advice for you; as I say in that essay, I was also a bottom-up programmer for a long time and was deeply skeptical of top-down approaches. What changed my opinion and my practice was just doing things for long enough that I started having a sense of where things were going to go before I did the exploratory work to find it out, and eventually the exploratory work was unnecessary and I could create a basically-correct top-down design early on. I don't know how you build that experience without actually getting in the reps (which has some implications for future generations of developers, if we have any).
That said, my second-person advice would be to use the agents for the design part of things, too. "Here's the problem, how would you design it?" and then have a conversation with them, push back on the things that seem wrong, imagine reviewing this as a finished design from a coworker and seeing where it looks right and where it doesn't. Ask why it designed things a certain way; suggest alternatives for it to evaluate and think about what it's weighing. Basically borrow the robot's experience to augment and build up yours.
One-shotting without review is very quick but has its downsides: burnout, less understanding of the code base, less interacton with your colleagues, you miss the poor choices the LLM made so the code base might rot.
Writing everything manually is much slower and in some circumstances not what you want anyway.
Is there a middleground where you get significant parts of the productivity/speed increase but retain the most important parts of the manual process? I have found I preferred the copilot style of working, but the interface was not really optimized.
Instead of spewing out code at 20x speed can we settle for 5x and remain in control? That would be my ideal and more sustainable, right?
Who is forcing you to use AI?
Then AI came a few years ago and that was interesting as a tool to play around with and do some simple small code (snippets) generation or as a buddy to discuss problems and find solutions. Meanwhile I was getting more and more bored with implementing stuff that I did already so many times at previous jobs. Same principles, different code base.
Last year I started at a new job and was at first hesitant, but I decided to go 100% AI with doing a rewrite of an existing application that will be phased out. So actually I could develop from scratch with the help of AI. First I copy/pasted code, then this year I found out about AI agents.
Never in my life have I been so productive in creating features/functionality while the code that AI generates doesn't differ that much from what I would have written myself. But then in a few prompts and 10 times as fast. Including unit tests. Which at many places that I worked were more often not a thing, then that they were.
Looking back at my 'career' it also made me realize that I do like "tech", but don't like coding as much as other software developers, I guess. I really like AI to make functionality and things working in a very short timespan. I enjoy 'AI-coding' much more than I'd have thought. So many things that you could/would not even try because it would cost too much effort, time or money. Now I can test within a morning a few different features to see which one fits best and works best.
I am now a happy 'developer' like I was when I started in this career a long time ago. I don't miss the coding part, at all. And AI will only improve, so personally I don't see a bright future for a lot of software developers to be coding in the traditional sense.
How do you know that? Do you read AI code? I heard (DHH, Uncle Bob, my own co-workers) that reading the code is no longer an economically viable activity. And if you are not reading the code, how would you know what it looks like.
That's the reason why I still try to inspect the generated code to see how my problem was solved and if it reads plausible. There are also moments that I am surprised by the implemented solutions which look very elegant and "smarter" than what I could have come up. These are also the moments I learn from AI. I can even ask AI why it did things certain ways and it gives a nice summary of arguments. But I am often also critical towards AI if I am in doubt, resulting sometimes in a sort of discussion and sometimes I can convince AI (with more context) that the solution it created should take another route. It really feels like working with a really fast co-worker. And on top of that, I am better in writing up my thoughts to discuss things instead of talking with someone. Doesn't mean I don't discuss in real life with co-workers, but it is so easy to use AI for it too.
Yes of course. But sometimes, when no one is watching, you can quickly sneak a peek at the code changes. It's ok!
I claim that AI "writes 80% of my code". But realistically I am in the hot path of my agent ("cd repo", "claude", "do X", "fix Y", "no not like that"), and that's essentially equivalent to writing by hand. I am afraid others will soon see through my charade.
3Brown1Blue recently posted an excellent video on how he's thinking about AI's impact on math, which of course is in a similar position as programming. One of the points he made was that machines' abilities to lift heavy things has no bearing on the value of exercise -- which is to say that, just because AI can now code/do math extremely well, that has no bearing on the positive effects (the "mental exercise") one gets from programming/doing math "the old way;" the same can be said about one's enjoyment.
The problem here, though, is that I used to get the enjoyment/"exercise"/upskilling/etc from the same 8 hours that paid for my life. Now, I have to squeeze that in _outside_ of those 8 hours. So AI has, very clearly and simply, reduced my downtime outside of work -- I literally have less time for non-programming hobbies and activities because of AI.
I think someone here occasionally opens ChatGPT web, free version of course, and copy-pastes some fragments. They claim it is still very, very far off from being useful. At first I was feeling sorry, but now I feel awesome.
It’s amazing. It’s like living in a museum and the pay is great too. I always wanted to leave tbh but now I’m heavily reconsidering riding this one out..
When 20% of your waking hours are free, and 10% of your mental energy.. it's pretty hard to argue that work isn't your life.
"Enjoying programming" for me as an engineer/computer scientist is akin to mathematician studying topology, enjoying idk, arithmetic or solving quadratic equations". Whether someone actua, lly gets dopamine from it strictly personal but in the grand scheme of things those are trivial things below me.
Sadly lots of "programmers" are really just "technicians" that happened to pick up skills in some niche and didn't approach computational problems from first principles.
One simple change that has really helped me is to take the git tool access away from the AI. This has made me quite critical of AI excesses in the design of the code and I feel free to rollback its changes and to request redos. I grok the changesets better as a result.
I rather think of it as 'controlled', and I am (hopefully, crossed fingers) getting more maintainable and better-designed results out of it long-term compared with my peers' results.
This AI shit has degraded most of what I enjoy. Artists, musicians, and writers are drowning in a sea of slop. Mathematics is looking like it won't have a human future. Programming is something you can't get paid for.
The future sucks.
I got into this industry because I enjoy programming, and I wanted to get paid for what I enjoy.
It sucks that the fun part of the job is gone.
I used to love taking the time to whiteboard my project, write the code in peace (with maybe a background show). Go through the steps of structuring, debugging, testing.
Now I can write a prompt to basically do what I do instantly, and now I'm the manager and tester of something I didn't truly even make.
So sure the upside is I can do more, and I basically have to use it because I can't even keep up with what people want me to do without it. And it also seems so silly to go back.
Everything fun is just gone.
That's the economy. It's not like all our problems are solved or everything that needs building is finished, even in very AI-forward tech companies. We are busier and working harder and longer hours than ever, and we've been hiring thousands of people in India.
It sucks on that end too.
A few years ago the owner of a local bar and friend of mine, comes up and asks about building a loyalty program and bar operating software. It sounded well thought out and really good for his business, but I told him, at that scale you would need 20 or 30 other bars to split the cost of development, it just was not economically feasible. But with what I have seen out of codex, I started talking to him about it again a few days ago.
Even with art, I have a lot of ideas and concepts but can't draw or paint. Now I can create images that I personally enjoy. I don't post this slop anywhere, but I really enjoy it. One of my favorites recently is a humanoid robot 3d printing a baby robot to give birth, I am sure no one else would like it, but it makes me happy.
It's a great future.
With open source you can also have it improved, and have less trash software in your life.
Codex created a custom build of firefox with a feature I wanted (essentially the ability to override ssl dns like you get with curl --resolve option). Also, it was able to take apple-music-for-linux that I like for streaming apple music and update it so it would work again. There are incredible possibilities here.
It turns out after enough time nihilistic techbros insisting that they were making a better world while they visibly damaged it, you start to build a dislike for the whole enterprise.
Maybe when they focused impact, someone should have told them that humanity wasn't looking for Chicxulub style impact.
But who cares, at least a few of them are getting richer at the moment.
99.8% of artists all start out at a similar place. They have good "taste", but they suck at making art. Only through practice and feedback from other artists were they able to improve their skills and creative sight, and these things in turn further developed their "taste" in art.
The art pieces that people enjoy are the culmination of an artist spending countless hours practicing, failing, retrying, and experimenting with different ideas. You don't get a Zdzislaw Beksinski without endlessly iterating and honing your craft.
This is one of by biggest gripes with AI: it creates an incentive for people to skip all the hard work that results in great art. Why spend thousands of hours developing your art skills and your unique artistic fingerprint when you can press the instant gratification button right now? I know its not something you can blame a single individual for, but when society as a whole starts taking shortcuts that's when we'll really see a degradation in art.
Yes, we'll have lots more art for people to enjoy, but fewer artists.
For humans, taste is learned through friction against the details of your problem, and finding what ends up sliding smoothly through the details of the medium you're working in. For AI, it's the same, but it comes from the details of the training data.
We've automated taste well enough for most production needs, and its only going to get better over time. If you don't think it'll be good enough for artistic needs too, you're placing a pretty hard bet against AI.
"Taste is all that's left" is pure cope. Taste is one of the first things where humans become useless.
But then you could argue that it has nothing but trained taste, and isn't creative. Then somebody could ask what you mean by that, and you could throw up your hands and say "I don't know", which is the decent thing to do, because none of us know, but it means something.
It isn't about the merits of the output, except that there are some creative outputs that it won't produce. But we can't formally describe those, because they're creative. They're all different, they have different qualities, there's no formula, and you don't get there by training. Once you "get there" you have to get there again, which is to say, keep being creative. This process can be mediated by actually daubing actual paint around.
It's not about placing bets on the ability of AI.
"Taste" can also include the human behind the piece. For example, I love listening to black metal. My "taste" as a consumer of black metal includes sombre atmospheres, oppressive walls of noise, dissonant, angular rhythmic guitar sections, etc.
But my "taste" in black metal extends to the artists behind the music. Black metal has a huge issue with racism and white supremacy. There is a lot of sonically interesting music made by hateful individuals in the black metal scene that I don't listen to because the artists values are antithetical to my own.
In a similar manner, art made primarily through generative AI may technically resemble art that normally matches my "taste", but I find myself wholly uninterested in it because the artists behind it have values that are antithetical to my own.
PS: I'm not trying to say "AI artists = nazis". I'm trying to say that your own motivations and world view behind the art you create influence whether I'll engage with it or not.
So, if we're going to preserve human art, we either need AI to fail naturally, or we need to explicitly reject it. The same goes for the rest of human creativity.
I keep putting quotes around "taste" because its hard to properly describe. Whatever it is, it seems like a mixture of observing what has worked for others, personal preference, worldview, etc. "Getting good at" taste is therefor hard to quantify.
Furthermore, having good "taste" in the art you consume doesn't translate to having good "taste" in the art you create. There exists a gap between the appreciation and application of said "taste", and you need to practice creating a lot of stuff to shorten that gap. And again, these two sides of "taste" are deeply intertwined. The kind of art you consume tends to change as you hone your creative skills and begin to see the technique behind it all, and that in turn influences the kind of art you may wish to create.
At the end of those twenty hours, quiz them. Get them to solve a problem. Who do you think will do better?
Learning happens when the brain struggles with problems. Trying to shortcut that only prevents learning.
Again, it's hard to quantify or validate. One thing I will say is that people can often misinterpret the things that make a certain piece of art work. It's often the little details, or even the absence of detail that make or break it. This is the sort of stuff that requires you to train your eye to notice.
For example, Da Vinci is often heralded as a master of the human form and proportions (the Vitruvian man). But many of his later works often eschewed realistic proportions, with his figures often being 10-11 heads tall. This is a subtle detail that influences how a piece feels, and yet most people would completely miss it!
They're buying it from the AI. They haven't produced anything new.
The big issue here is that through all of human history, effort was a necessary prerequisite to making art. Whether that effort came from mixing paint together before sitting down in front of an easel, hiking through the back country to find the perfect spot for a photograph, or fixing n-gons in Blender all evening. If you created a piece of art, there was a shared understanding amongst other artists that you cared enough to put in the work to make something. For most artists, it's the work/journey/process they cherish, not just the end goal. Putting in the work to make your art is usually the only "gatekeeping" that happens in the art community.
But AI is allowing people to short circuit the path from idea -> creation, which begs the question: is that actually creating? Is prompting for a picture substantially any different than tweaking your search on Google images until you find a photo that resembles what you had in mind? Is creating just having a shiny new picture, or is it the hours/weeks/months of effort, failure, and successes that happened leading up to the picture?
Point is: you can call it "gatekeeping" if you want, but all we're really saying is that creation != ideation.
Where this becomes even more of an issue is imagine somebody spends substantial time with these tools to create something - editing the output of vid models for example. Some would say that's not art but at the end of the day it is just using a tool.
So the central challenge has always been the same: discoverability is the difficulty. It’s just even harder now, and we need to find ways to promote the good stuff.
AI will make things cheaper and more abundant - at the cost of a few people not enjoying their jobs. So what.
You could've made the same argument at any time in history because all technologies do the same thing. Things will go on, mastery will remain.
Investors I know are investing on the prediction that people will be less able to participate in the profitable parts of the economy in the future, and most transactions will be between businesses.
We're building a future for humanity where people are both unhappier and poorer.
For companies in this bubble creative destruction is the order of the day and this manifests in me-too behavior from executives coupled with breathless enthusiasm for new technologies. It can often be excessive from the POV of an outsider looking in but not embracing the new thing fast enough could be the difference between filing Chapter 11 or having a trillion dollar market cap for these firms. All of this could occur within the span of 6 months.
Companies/Organizations outside this bubble don't face the same pressures (at least in a compressed timeframe) so they lag a little bit in responding to trends. But make no mistake the 'creative destruction' is occurring in full force and will wipe out any firm that's not ready for what's coming.
Is this a skill that makes up the bulk of the economic value of a SWE? That's up for debate. Either way, it is a skill that commanded premium salaries not that long ago and was a non-trivial cost for any forward thinking technology company.
That has all changed very abruptly. It is _cheap_ now to produce source code. The expectation is that this will reduce the labor cost and make companies more productive i.e. productivity = output (software) / input (labor cost).
There are whole classes of companies whose service was to provide tools for SWEs (i.e. devtools) that have no foundation to build on now. The entire SaaS ecosystem is predicated (in part) on the cost of standing up a fit-for-purpose web app to solve some internal business problem being too high to be worth it for most large enterprises. Hence why they are okay spending hundreds of thousands or millions per year in subscriptions to these companies. That's changed now with AI being able to spin up entire products soup to nuts at the cost of a few hundred dollars worth of tokens.
In summary, the changes in how we work within the past 6 months to a year have been nothing short of seismic. If you or your firm are not experimenting with AI tools then it's important that you pay attention now because the chance that your business will be gone or your job will be eliminated has increased 100x. Whether you like it or not the job description for being a software developer has changed.
I feel like the point is still being missed, and it's very similar to the way software engineers are trying to cope. The argument you are making "Well yes now this part of math we will not need to do again, but now we can do this instead" however the issue with most people just don't want to do that....
Like who are we kidding, the type of nerds who were attracted to math and software were into it because we saw it as an art-form, it was a craft, it was being the only one in your city to be able to solve a complicated math problem, it was immortalizing yourself because you discovered a proof and added to the ever expanding human knowledge.
Imagine a leather workman who's life passion is making insanely high quality handbags, who takes joy in knowing everything he touches will last someone a lifetime and give them joy everytime they use it. And then not gradually, but almost overnight someone comes to his door and tells him we can make bags 50 times better than you at 1/tenth the price. But don't you worry, you can make more money overseeing the factory, or selling people on how good this bag is, and explaining that to them.
I mean, ok, that just is not what I wanted to do with my life. I never wanted to be a manager, I never wanted to be a salesman, I never wanted to be a writer. A craft I enjoy doing has been taken away from me, I should be allowed to mourn, I don't care that I can do something else since I never liked doing it in the first place. I enjoyed solving problems and writing code, I don't care if people say "well thats never what programming was about it was actually about becoming a manager all along" I never wanted to be a manager, I never wanted to manage, I never wanted to be a proof reader.
I just hate this existence.
Anyone who can speak with any nuance on where humans (the only actual intelligence on earth) can vastly outperform the best models has their voices buried.
Algo feeds are a plague brainwashing people with news/info about only on the extreme views thanks to it optimizing for engagement to serve the most ads. Your favorite really really smart but boring professor's thoughts from University would never get shared online in todays world for example.
Great to hear that the author found peace somehow, though I would advise not to worry too much about what you consume out there if it affects you to the point of needing justification.
Thanks blog!
If that sounds like you, then don't be discouraged to keep thinking.
Fully agree. It's still (or even more than ever) more entertaining than watching Netflix. Why should I care if other people use agents to do the programming?
Detractors say it causes needless suffering, accelerates global warming, bad for you in excess. Some say it simply doesn't taste nice, and are met with "Have you tried wagyu-7.1, it's much better than sirloin-flash-3".
We get it, you’re vegan, but your agenda is extremely off-topic in this case, to the point of being flamebait.
Its something I've noticed in many folks. You'd say something like "well sure, did you try using a different model" and you will be met with screeching. Its almost as if they've shut off facts and made up their minds.
An example: a year back I wanted to show that AI doesn't hallucinate that much.
Here's like a 20 comment long conversation with a person who believed that ChatGPT hallucinates easily. It took them a long time to prove it - they used toy examples and it did't work because they'd never used the thinking version. Then they had to resort to esoteric examples in the benchmark which still didn't work.
Or if you prefer "have you tried the new iPhone, it's much better than the HP iPAQ".
Phew!
I enjoy writing complex programs because I get appreciation for my work. I don't really care that much, but I'm sure we humans love being appreciated for what we do.
I finally freed from typewriting mundane stuff like yet another API endpoint or subscribing to rabbitmq, and can focus of creative work and really building useful things.
It is indeed, and full disclosure, I am 100% one of these folks.
Much like there are people that still forge full-scale two-handed swords in their garage.
Magnificent and fulfilling work, but with questionable economic value.
1725 points|df07|11 years ago|854 comments
https://news.ycombinator.com/item?id=11348798
Obviously entrusting an entity to do everything is different from using a dependency or library, but aren’t LLMs for work just a natural progression of this? Programming is about automation. Programmers have been automating and outsourcing their work since the concept of SDKs were invented. Or even since high-level languages were invented. The industry was already doing this, and doing it excessively, long before Claude. left-pad happened a decade ago and we’ve learned nothing.
> Second, even if the package’s logic is correct, I can’t help but be amazed by the fact that developers are taking on dependencies for single line functions that they should be able to write with their eyes closed. In my opinion, if you cannot write a left-pad, is-positive-integer, or isArray function in 5 minutes flat (including the time you spend Googling), then you don’t actually know how to code. Hell, any of these would make a great code screening interview question to determine whether or not a candidate can code.
> Finally, stringing APIs together and calling it programming doesn’t make it programming. It’s some crazy form of dependency hacking that involves the cloud, over-engineering things, and complexity far beyond what’s actually needed.
Obviously LLMs make the situation even more dire, but I think people are overlooking that the industry was automating itself out of programming as a craft even before them. It's just the automation involved reuse of the work of other humans.
This isn't just "a bit more automation". It's "now we don't need lift operators".
Open source development has become buried in an avalanche of AI generated code as well so the character of a lot of hobby programming in that domain has changed drastically.
And that's OK.
Change comes to every profession, and it's never universally helpful or productive. I'm very much in the middle of the road on the AI booster/skeptic continuum, but I know it's not going away.
And getting to "enjoy" the work was always just a perk. Where in labor law in any country throughout history guarantees enjoyment of the work? Surprisingly few people throughout history have been able to say they enjoyed their work. It's always been a trade of time for money, everything else is table stakes. I'm finding new ways to find enjoyment both in the job and out of it, and if that time-for-money trade stops being worth it, I'll figure out something else.
0: https://www.newyorker.com/magazine/2018/11/12/why-doctors-ha...
Probably in 2015 or so, I think it started shifting towards a net negative -- and now, it's gone deeply and starkly into making the world a worse place.
How would you reverse this trend, I dont know, but AI basically puts us in the same boat as the doctors in that article.
If you’re a The Art of Computer Programming-reading, code golf-competing, blogging neat elegant hacks kind of programmer, were you really getting that experience coding at work?
But I would prefer to have a job.
These are talkers who have never produced anything, taken everything from open source while looking down on OSS authors. They one-shot a note taking app and feel they have done something culturally significant.
AI in software is the greatest farce since NFTs and attracts the same people. All web software got worse, nothing new is being written and everyone just talks about their precious conversations with the clankers like commenting on a football game.
The dumbest people always win temporarily.
People don't talk about this overlap but it is real, remember that SBF lead Anthropic's Series B with stolen customer money from the Bahamas. Caroline Ellison participated too, in individual capacity.
https://www.privateequitywire.co.uk/ftx-ceo-leads-580m-serie...
Zero job interviews involved discussion of NFTs, Bitcoin, etc.
100% now discuss AI.
No friends ever asked me about NFTs. Almost all use AI or ask me how to use it.
Terrance Tao was impacted not at all by NFTs.
Maybe "this time is different" only for me, but I suspect it's truly different.
Perhaps everything that you said is 100% correct, but people are easily swayed by things that “sound right” being overly aggressive opens your position (in people’s monkey brains) to “enlightened centrists” that leave the door open for bolder opposition.
Many people have been genuinely helped or feel like they have been genuinely helped by LLMs in coding, they aren’t going to change their opinions based on fiery rhetoric and accusatory tones. Much like I can’t force myself to believe in Santa Claus regardless of how aggressively my nephews claim he is real.
it's hard to be swayed into skeptic camp if you see how it works and it really solves those hard problems that took hours. Genie is out of the bottle
Furthermore, it becomes practically impossible to argue for doing things the hard way for all of the solved problems, which were and are necessary for being able to learn the craft deeply. At the very least, deeply "enough" to advance the state of the art.
In short: 1) Humans are necessary. 2) Knowledge and experience are necessary. 3) Humans need time and practice to gain knowledge and experience.
When one side argues that one or all of the above points are false, I don't believe them.
Realistically, we are seeing people even in the most pro-AI groups begrudgingly concede #1 and #2, while expecting #3 to just sort itself out.
In my opinion, the whole anti-LLM coding thing is purely ego preservation. And I get that, who the hell want's to believe their high paying job is going away? To say using LLMs cannot achieve results bigger than 'one-shotting a note taking app' is really just not true.
Comparing it to NFTs is absolutely wild also. NFTs literally were mass psychosis and had no value whatsoever. You're saying someone can't build software, even just for themselves, or otherwise, that doesn't have any value at all? How could that be true?
You are on an online forum geared towards programmers, using the world wide web created by a programmer. The concept of a video game did not exist before they were being programmed.
You think the world just appeared as it is and everyone only does things for money? Never because, unlike people who use every shortcut possible, they actually care about the details?
If you go with agentic route, randos with money to spare on latest models, beat you. If you go LLM-free, AI corpos say "all the better for us! More free untainted dataset!"
Humans are so lazy and obsessed with cost-cutting, efficiency, and "line go up" that we'll willingly walk ourselves into such a bleak inhuman future.
They are happy to have their ads-maximized agreed-to-all Cloudflare/Anthropic/OpenAI/Google/Apple/Microsoft accounts so they can one-click deploy that "worker" with all the UI gears spinning automatically, because who needs to know how to configure a web server anyway? :^) And wow, have you heard that Cloudflare offers an operating system now??
> Please don't put generated text in HN posts. Write your text yourself—HN is for sharing between humans. For the same reason, please don't automate posting.
really? i feel like the overwhelming sentiment in every comment section is staunchly anti-ai. it's far more common to see people lamenting their job prospects or complaining about having to review mountains of slop PRs.
If you had to larp as an anti AI person just to say the stupidest thing possible, this is what you would say.