Join the discussion

Write your take first — we'll ask for email only when you're ready to publish.

  • Hacker News
  • I spend so much more time with generative IA thinking and iterating over design details (or even overall design) than before, when part was consumed by writing the implementation. Bots are often terrible and/or don’t have all your requirements available on this subject, or even your are discovering them along the way and you don’t all the time want the recommendation of the machine.

    From my experience not iterating enough and leaving high level decision to generative IA yield shit. Maybe this is not the case in all projects. But in my work, it would be absurd to complain about not having to know random API details anymore, unless when they actually matter.

    The thing is that I’ve been programming for more than 30 years. Maybe I would have another opinion if I was still learning the things I was learning 20 years ago.

  • I use LLMs at work. I'm expected to and paid to show up and do that, so I do it.

    But I refuse to leave understanding the codebase to machines. I did that the other day as an exception and fortunately my reviewer picked up on things which weren't exactly broken - just redundant and inelegant - e.g. two variables which easily could have been one, passed between several methods.

    We have an automatic reviewer as well and there wasn't even a peep from it regarding any of that.

    And this is really the crux of the issue - LLMs won't ever create elegant and minimal code, because their style is based on the mean, which in turn is dominated by the work of people who shit out a lot of working, but write-only code.

  • You're just bad at using LLMs
  • Same boat, same reasons.

    Skills not exercised degrade as well, if you don't actually write code then your skill at reading and interpretting it degrades, you just become a "looks good" step.

    In theory if disciplined enough you could resist that but our brains seem to take the lazy path whenever it is offered, thinking hard and focussing are a skill and one I don't feel is been exercised when using AI.

  • You took the words right out of my mouth. Writing code used to force you to understand it, but now the former doesn’t guarantee the latter. And most attempts to replicate the latter in other ways (more reviews, self-quizzes, etc) seem to be far less effective at producing deep understanding.
  • > their style is based on the mean

    A base model that has only been pre-trained has output that is based on the mean, but most advances in capability the last three years have come from post-training. The influence of RL dominates every observable characteristic of coding agents today and steers the model towards strategies and practices that are objectively successful for the LLM.

    I think the best code for an LLM is different than the best code for a human. Lots of redundancy, lots of unnecessary and overly defensive code is being reinforced by their training because it is successful there.

    They still take it to far and do all kinds of stupid shit - if you look at the code you'll see it all the time but it actually doesn't cause many problems. Its much more important to focus steering effort on feature scope and architecture. I still ask it to refactor code from time to time and its pretty good at doing that.

  • I lost interest in writing elegant code many years before AI. Professional software development doesn't reward it much. Most customers don't care about it. And I don't have much emotional attachment to or ego investment in stuff that I make for an employer, so I don't really care if it's elegant or not as long as it puts money in my bank account.

    I used to have more emotional attachment to and ego investment in stuff I made for employers, but professional software development is pretty good at making one stop caring about that stuff. Probably for good reason, since software development is not actually the most important craft at a tech company. Business is more important.

  • There are two types of coding in my life: work and hobby.

    Before ~3 years ago, they are more or less similar to me: it's mostly pure creation and sparks joy and makes me fulfilled. I love working and it pays well, and my hobby improves my work skill. It's like living in the dream.

    Now? I can "make it anyway" like the author suggested indeed, but only for my hobby. I don't think I can keep coding the old way during work without getting myself fired.

    I guess there's no much to complain. Lots of people work only for a living. It's a rare privilege to love one's work. I should be grateful that I can choose to keep my hobby.

  • Yep. I'm feeling the same way... even though I'm hardly able to use AI at work, the push is still there for us to use it, making it even more frustrating. Anyway, I hate it, and I'm just sorta phoning it in now and trying to find something else to do. I'm cynical too and feel there is no point to upskilling and using AI for everything, 'cos it's not going to help you keep your job for very much longer than the people that don't use it.
  • My love for the craft has been slowly dwindling for the last 15 years but since AI it’s totally crashed. I’m still doing it for the paycheck but not much of it is enjoyable at this point
  • Look, if I'm a cyclist, then it wouldn't really make a whole lot of sense for me to buy and ride an ebike, would it? Like, if I enjoy cycling, and I want to do it because it feels good, makes me happy and keeps me in shape, then why in the world would I buy and use a machine that does it for me?

    If I was a door dash driver or something, and I just wanted to get from A to B, then yeah, maybe I would ride an e-bike instead. But I like cycling. I'm not going to stop liking cycling just because someone made a robot that also can do cycling.

  • It would absolutely make sense for someone who enjoys cycling to buy a pedal-assist e-bike, especially if they e.g. moved to a hillier area, sustained an injury, or just started having their strength/stamina decline with age.

    (incidentally, the proliferation of unregistered/unlicensed motorcycles marketed as "e-bikes" has done enormous damage to the viability of e-bikes as a general category)

  • > the output doesn’t feel like mine, and I take no pride in what it produces.

    So much this.

    I don't understand how some people seem to have no self awareness or shame in saying "I build X" where "X" was entirely prompted by an LLM.

    It's like ordering a meal from door dash and calling yourself a chef.

  • Let the LLM do the 80% and then you take all the credit by decorating the code in your style.

    What’s intellectually “mine” is the task anyway, not the code.

    You should be able to strip all the creative intelligence out of the code and what you’d have there is a prompt.

  • It's more like calling the restaurant and giving them a description of a custom meal that you want them to prepare for you.
  • I don't agree. That would imply they asked for a piece of software and the LLM one-shotted it, but that's absolutely not what's happening in the vast majority of cases. If two people vibe code the same tool from the same high level desciption the results are going to be quite different.
  • I agree if you one-shot something, but that hasn't been my experience at all (unless the initial prompt is so detailed that creating it took considerable time).

    For me it's more like being a chef but having a cook to cut up things and start cooking them, but you decide when it's done, what spices to put, and how to serve it - arguably the most fun and creative part.

  • That is almost to say that the only part of the project that matters is the code. But the code is only a tiny part. I take joy in describing the thing and bringing that vision to life.
  • No, it's like ordering a meal from door dash and saying "I got food." Using a tool does not mean you didn't do the thing you used the tool to do.

    You're conflating "I made X" with "I personally did every part of X with no help," which is really not something to brag about as much as it is something that might fulfill your own personal sense of value.

  • My first thought after reading this was, good for this person to have only been broken, or nearly broken, I guess, by society finally now.

    I was broken long before AI. I learned that no one was interested in my doodads even before generative AI. People were interested in all this other stuff, like ROI, how much money things make, how practical something is, etc. "No one cares about the code" was beat into me 10-20 years ago. Big ups to Joel for making it this far.

  • This is partially why my pride in my work is not around my code, but the product or output it creates. People care that the interfaces are good, the code style matches, and that it's maintainable. But they don't really care if it's clever or smart or creative. To me, the creativity is in the product, the tool, in what the code does. AI lets me be more creative in the tools I build because I can justify taking the time to build them. I can create more interesting products because I can get past the mundane.
  • Hah, I think I agree with this, but from a cynical, dark perspective.

    I'm an old systems programmer (embedded, c/c++, linux, etc) with an EE background (but not one of them if you know what I mean. I enjoyed software and appreciate the art). But early on I came to believe software engineering at a workplace is not your personal art project. If you want that, great, go write code on your own time(as many of us do!). But on the job I often get annoyed by folks who don't want to do the obviously correct thing, or want to fight against good refactoring or design feedback (usually not from me.. I'm like a 'B' tier programmer and in awe of the 'A' level I work with). People treat software as an art and while you want to be artful in execution, if you are a paid artist, it is a commission work. Honor the requirements of the company (business needs) and not just your personal feelings and desire to only make art.

  • This is 80% ego talking and 20% fear of change.

    The comment about hobby vs. work is correct, and it’s the crux of this.

    OP is attempting to console themselves. “I shouldn’t have to change to avoid ‘falling behind.’ I like how I’m doing it. I’m good at what I do.”

    The fact of the matter is the LLMs can be used to produce effective work faster than you. Yes. You are falling behind. And yes, it will reduce your value in the job market. Eventually it will be a dramatic reduction.

    That doesn’t mean you must stop coding by hand, because you love it. But I don’t think you do love it. I think you love being praised for being smart. The pats on the head. That’s the most likely explanation for why your motivation for coding by hand has disappeared. Once the results stopped being a special output from your special brain, you stopped feeling special.

    You have a choice now that the landscape is changing. You can find a way to produce unique and outstanding results that still matter, or you can slowly fade into a hardened stance of obsolescence and spend your time grumbling about the change.

  • > Yes. You are falling behind. And yes, it will reduce your value in the job market. Eventually it will be a dramatic reduction.

    I think this cuts close to the heart of it. "That knowledge has no value" isn't an easy pill to swallow for a wide variety of reasons, not the least of which is that your value as a developer has gone down. You're not going to get paid for coding, and the market is getting flooded with people who can use LLMs to effect. I can only speak for myself, but everything got a lot easier with Claude and I can build at a scale and speed I've never been able to before. But "easy" doesn't go with "high pay". (I've had two successful coding shops collapse over the decades because someone released a tool that made our work easy and available to everyone.)

    But also from a human standpoint. It's like saying "weaving tapestries has no value" and "making art has no value", which is also true in dollars. Pure capitalists don't get this one, and rightfully so. But for folks like me, there's definitely a sting to it. And I'm also not convinced that it's entirely true, considering indirect effects (that don't enter into the capitalist equation).

    Personally, I haven't intended to make money by coding for years, and, God-willing, I'll never have to again. Never really cared about pats on the head. I just get to code for the joy of it, making software that I can then use after the fun part is done.

    So my choice is this: I can easily use LLMs to write code, but I won't because it's boring. And I'm lucky, being out of the game, to not need to care about getting paid for it or what other people think about it.

    (There is actually a case where I'd happily use LLMs to build products, assuming it was a technically valid approach to the problem: where I care about the mission and feel the work benefits the world. Less fun than coding by hand, certainly, but if the goal is good, gotta support the goal. But for me, places like that are a tiny, tiny slice of the market. And they don't tend to be exactly rolling in cash.)

  • You're going to probably be downvoted because the truth is hard and the collective human ego is self-reinforcing, but I think you are correct.

    'Quality' is a function of filling in the gaps of the new tools, not eschewing them entirely.

  • > And yes, it will reduce your value in the job market. Eventually it will be a dramatic reduction.

    Maybe not. Look up Jevons paradox. Maybe software engineering was a bit overvalued before, anyway. And now it'll come down a bit. But I don't think the job is going to go away. It will just become a little bit less high paid.

  • Holy projection what a sad small little outlook
  • "But I don’t think you do love it. I think you love being praised for being smart. The pats on the head. That’s the most likely explanation for why your motivation for coding by hand has disappeared."

    I think you (and almost everyone in this thread) are missing an important point here: even without relying on external input on our work, we feel less proud of the work we produce by hand when we know we could have prompted our way there orders of magnitude faster.

    If I build something cool by hand, and I enjoy the process of building it, then why does AI affect anything? The problem lies in how I feel about the final result. It feels fundamentally bad to know that however hard I worked on this, it would have been better, faster, or both had I used AI to produce it. I think it really is that simple.

  • What in the world? I’ve built a thing by hand before and enjoyed the process of doing it. I don’t think I’m unique in that. I’ve also built many things with AI and enjoyed them much less.

    I think the reason so many people are frustrated is that they _know_ they are falling behind, they _know_ the thing that they like doing is not something they can easily get employed to do. That sucks.

    Do you actually believe that people don’t know whether they are enjoying a task or not?

  • This.

    This is more or less precisely how I feel. Other creative fields have already begun to get a handle on how AI is a soul-deadening thief of joy in their fields. I have hope for illustrators and painters and photographers and musicians and makers. With those friends and in those communities I see people who have already done the thinking, can already express their feelings, and are already making commitments to do work in ways that defend them.

    The software development industry has still to reckon with the extent to which it is punching itself in the face, and it is precisely because AI does have at least some utility in software, precisely because some of the final form necessarily a cognitive 50% grey, even just for interoperability alone.

    by dofm