Join the discussion

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

  • Hacker News
  • I'm not really sure what point this article is trying to make
  • I don’t think there is anything important in there.
  • True postmodernism has finally been reached by AI!
  • Software developers still need to think. Models can't do everything. That's it.
  • > You can’t just give a 3000-word, 4-page detailed dense spec and expect it to follow everything, and the larger the codebase, the less it can pack everything in, nor are the vast documents you can feed it worthwhile.

    This point seems lost on a lot of principals. I’ve had very little success with these grandiose designs and change requests from RFCs/specs. The context windows just can’t keep it all together and very quickly the approach unravels.

    I posit that the further ICs were from writing code at this point in their career, the more they suffer from AI psychosis. It’s the same ivory tower they were already on, just a different order they’re giving.

  • As a hobby coder, not a professional programmer, I have recently found one of the biggest advantages is being able to very quickly prototype ideas in HTML/CSS/JS and iterate on the UI/UX upfront. This way I get "tangible" feedback and can get a better feel of whether an idea is worth pursuing before investing big time on proper implementation.

    Just wondering if the professional programmers here are finding the same thing? Or different?

  • It really depends on how you use it. I’ve switched up how I interact with LLMs repeatedly over the years, as the technology has developed.

    Now, it’s at the point where it’s like running a development team of very eager amnesiacs. I’ve found the trick is exhaustive documentation by a lead agent, and then having a fresh agent work as a coordinator across as many subtasks as the project sensibly allows. This way the individual components stay on spec, as does the ultimate integration. It’s only really this year that this workflow has started to actually function, and it still needs human supervision - but less and less over time.

    I give it two years, tops, and everyone everywhere is building bespoke software because it’s trivially easy.

  • And yes, there is also another sane and rewarding option: write everything just by youserlf without any assistance. Let's not forget about that one, shall we?
  • sane as in your boss will let you do that?
  • My personal experience is the larger the task you ask it to do, the less attention it pays to the details - for a very large task it seems more prone to missing test coverage, writing duplicate code, not refactoring where it should etc. So I try to split into smaller tasks where possible (also makes it easier to review).
  • You have to be able to write the software yourself in order to judge the results and get good software out. Otherwise the system claims the goals are met, the tests pass, and the human driving the system puts up a new PR. If they don’t know any better it must seem like the AI system is better than them and knows what it’s doing.

    All the loops and agents don’t protect you from generating garbage.

    Which sucks because then how are you supposed to improve your skills when you’re just getting the answers all day… answers you can’t verify?

    People are more confident than they ought to be. Always have been. But AI throws gas on that fire.

  • And you immediately give up your IP for someone else to use. The 4th option, if you have something in your mind worth building, is to just build the thing, without an LLM.
  • ??

    almost every inference operator either has ZDR or an opt out from training

    unless you think they're just lying and training on business users data

  • What IP? Everything can be duplicated within a 1week to a month...
  • Sure if you use remote AI services, but any companies working on niche markets where they want to protect their IP, or they simply work with sensitive stuff, will rely on local AI instead.
  • About "implementing by words bit": I don't believe English is a great language to program.

    It's not type-safe, not object oriented, not functional. Has poor tools to highlight syntax or navigate through "wordbase", doesn't fail fast. It has no tests and has too large room for machine or other humans to interpret it.

    Very often it's easier for me to express my thoughts in Java, which is ironically known to be a "wordy" language. But it's nowhere close to wordiness of English.

  • The proponents response is: Natural language (in any language) is much more accessible - almost 100 times more.
  • Coding with AI has now introduced feature dopamine. At times this results in the system being prone to more failures because AI may have missed edge cases. Also i am experiencing a decline in job satisfaction and i'm more prone to procrastination because I know the agents will do the work 10x faster than me. I am personally worried about this shift and I fear becoming less knowledgeable over time or not feeling the need to keeping up with new tech stack as agents do the work.
  • With previous engineering trends like blockchains and microservices, you could choose not to jump on the bandwagon. However the coding agents trend is different and is changing the very fabric (sry for Claudeism) of software engineering, for better or worse. I do know we will never go back to mainly programming through code again, that’s for sure.
  • There are still companies who refuse to believe this and still put Senior+ devs through hell during an interview process with junior level algorithm memorization.

    In all aspects there will be dinosaurs and deniers and there will be embracers.

  • >you could choose not to jump on the bandwagon

    I think it's not an option. The benefits are just too large for me.

    >I do know we will never go back to mainly programming through code again, that’s for sure.

    I think, in some niches, i.e. where there's something not well represented in the training set, it still makes sense to write code by hand. But I am not sure that it will continue.

  • I'm starting to think there is no AI bandwagon per-se - instead the bandwagon most people associate with AI-assisted development is more a bandwagon of sloppy code and low standards - which irresponsible use of AI enables but isn't a prerequisite for (outsourcing sweatshops have been practicing it long before the dawn of LLMs).
  • > I do know we will never go back to mainly programming through code again, that’s for sure.

    Say who?

  • Knowledge work has changed...But it doesn't solve company internal governance nor politics. When it takes anywhere between 2 weeks and 3months to do anything ( including approvals for non prod access) in most organizations...Code has never been the problem.
  • Fortunately, I haven't jumped the bandwagon yet, so I don't even have to think about going back :)
  • One aspect AI is weak in is controlling complexity. If you tell it to implement something it will go ahead and implement it, without considering how much complexity it adds to the system or weighing alternatives. An experienced engineer on the other hand may decide the feature is too minor relative to the complexity it adds, and may decide to not do the feature. Or he may make some clever compromises to get most of the functionality while keeping the codebase simple. AI is weak in this judgement, it doesn't spontaneously exercise architectural restraint. As a result the code may progressively become too complex even for AI manage, and it becomes whack-a-mole where you can't make a change without breaking something.
  • Have you found any solutions to this? It would be a big unlock to give it this kind of judgement
  • I found it follows conventions and documentation well. So if you have a well designed core, it can easily add independent features without increasing overall complexity. Maybe it doesn't work in some very tangled domains like games, but some basic crud and saas stuff is pretty much a solved problem now with agents. They will trivially add features that humans would have pushed to a backlog forever as not worth the effort.
  • If you tell it to implement something it will go ahead and implement it, without considering how much complexity it adds to the system or weighing alternatives.

    Recently I asked Claude (Fable) to use multiple threads to speed up a computation that could take several seconds to run while the user was waiting. Instead, it found a way to start the computation earlier in the background while the user was doing other things, so that it would be finished by the time the user was ready.

  • I feel this mostly is a side effect from lack of domain knowledge. Most of the time this has happened to me, it's because I myself did not cleanly know how a problem should be solved to begin with. If you have a clear picture of what you want, approximately what syntax goes where and why, thats really when LLMs shine in my experience.