39 comments

[ 2.9 ms ] story [ 57.8 ms ] thread
For me it's simple: even the best models are "lazy" and will confidently declare they're finished when they're obviously not, and the immensely increased amount of training effort to get ChatGPT 5's mild improvements on benchmarks suggests that that quality won't go away anytime soon.
There's been a strong theme recently here on HN of confusing programming (the act of writing code to meet specifications) and Engineering(the writing of specifications, and the oversight of said process, along with overview of testing).

AI is definitely not ready for an Engineering role. My recent experience with ChatGPT5(Preview) via Visual Studio Code tells me that it might perform acceptably as a junior programmer. However, because I'm an old retired self taught programmer who only ever managed 1 other programmer, I lack the experience to know what's acceptable as a Junior Programmer at FAANG and elsewhere.

"Programmer" as a separate role to "engineer" (where the programmer merely implements specs devised by someone else) isn't really a common role at all these days, except arguably for super-junior people.
(comment deleted)
AI can't replace humans, but it can be an exoskeleton for human pilots.

AI code tab-complete is fantastic. It's at least an order of magnitude more powerful than IDE-assisted auto refactors.

AI graphics design tools are probably the single best thing in the field. Editing photos, creating new graphics, making marketing materials, shooting and editing videos is now extremely easy. It's a 100x speed up and a 1000x cost reduction. You still have to re-roll the generations repeatedly, but with a competent editing tool you can speed run any design work. This is one area where non-experts can also use the tools.

Using a calculator won't make you a mathematician, but a mathematicians with a calculator can show you amazing things.
Can AI categorically not be a "real coder" or is the limitation in more trivial things such as scope and breadth? My experiences suggest to me that it is technically quite close.
> These kinds of complex tasks can be difficult for AI development tools to navigate, resulting in hallucinations about where the bug is or its root cause, as well as irrelevant suggestions or code fixes with subtle problems.

How is this any different than the way I program?

I've contributed genuinely useful features to FLOSS projects "as well as irrelevant suggestions or code fixes with subtle problems", mostly the latter as there was always a few stages of improvement and/or finishing by the core devs of the program I used to haunt. Honestly, I was less than half as useful as the current crop of robots and they still tolerated (in fact, encouraged) my involvement.

I'm tired of the anthropomorphization marketing behind AI driving this kind of discussion. In a few years, all this talk will sound as dumb as stating "MS Word spell checker will replace writers" or "Photoshop will replace designers".

We'll reap the productivity benefits from this new tool, create more work for ourselves, output will stabilize at a new level and salaries will stagnate again, as it always happens.

Nope, that's not the reason. It's because it's just a query that probabilistically creates a garden path of tokens out of a compressed form of the training data, requiring a real coder to evaluate which parts of are useful.

Amazing how someone writing for an IEEE website can't keep their eyes on the fundamentals.

I'm fatigued by these articles that just broadly claim AI can't code because its painting a broad stroke against a widely diverse use of AI for different stacks.

It's horribly outdated way of thinking that an singular AI entity would be able to handle all stacks all problems directed at it because no developer is using it that way.

AI is a great tool for both coders and artists and these outlandish titles that grab attention really seem to be echo chambers aimed at people who are convinced that AI isn't going to replace them which is true but the opposite is also true.

"According to the study, AI still struggles with several crucial facets of coding: sweeping scopes involving huge codebases, the extended context lengths of millions of lines of code, higher levels of logical complexity, and long-horizon or long-term planning about the structure and design of code to maintain code quality."

uhhh, not sure even the best people or teams are very good at this either. Condemning AI for not being capable of something we're not capable of, ok...

“If it takes longer to explain to the system all the things you want to do and all the details of what you want to do, then all you have is just programming by another name.”

This is called the specification process, which hopefully is already occurring today.

There's so much self-serving bias in articles like this, as well as the comments on HN, Reddit, etc. It's good to critique AI, but that self-serving line is frequently crossed by many people.

I think everyone is looking for back and white switches. Either coding agents are writing your code or they aren't. Humans will always be in the mix in some form, but the amount and skills they use is going to be radically different as time goes on.

I personally haven't written any significant code by hand since claude code landed. I also have a high tolerance for prompting and re-prompting. Some of my colleagues would get upset if it wasn't mostly one shotting issues and had a really low tolerance for it going off the rails.

Since gpt-5-high came out, I rarely have to re-prompt. Strong CI pipeline and well defined AGENTS.md goes an incredibly long way.

Both humans and coding agents have their strengths and weaknesses, but I've been appreciating help from coding agents, especially with languages or frameworks where I have less expertise, and the agent has more "knowledge", either in its weights or in its ability to more quickly ingest documentation.

One weakness of coding agents is that sometimes all it sees are the codes, and not the outputs. That's why I've been working on agent instructions/tools/MCP servers that empower it with all the same access that I have. For example, this is a custom chat mode for GitHub Copilot in VS Code: https://raw.githubusercontent.com/Azure-Samples/azure-search...

I give it access to run code, run tests and see the output, run the local server and see the output, and use the Playwright MCP tools on that local server. That gives the agent almost every ability that I have - the only tool that it lacks is the breakpoint debugger, as that is not yet exposed to Copilot. I'm hoping it will be in the future, as it would be very interesting to see how an agent would step through and inspect variables.

I've had a lot more success when I actively customize the agent's environment, and then I can collaborate more easily with it.

“Feels primitive,” is holding up a lot of assumptions.

What feels primitive to me is how we approach programming in industry as a process of trial and error rather than one of rigour.

These are tools that automate copy-pasting from Stack Overflow and GitHub, running tools, and generating a ton of noise to sift through. They hallucinate code, documentation, and various other artifacts that are sometimes useful and are occasionally complete BS.

Some people find that they can make useful tools out of these things. Great.

A real programmer is still a human.

Update: nothing wrong with trial and error as a process. I use it a lot. But there are lots of places where we use this method that seem inappropriate and sometimes even dangerous. Yet it’s the most common tool we have and everything starts to look like a nail.

My best understanding/explanation of LLM tools is "plausible extension of a context"

That is, you have some context, ie the prompt and any other text, and the LLM produces a plausible continuation or alteration of that prompt and text.

My intuition leads me to a thought like: To progress, the context must compress into a fractal representation.

I feel very confident that someone smarter and MUCH better paid than me is already working on this.

I can't help thinking that a big factor is how bad our tools were before. There are many leaking abstractions, boilerplate code and cruft. Dealing with that fills a sizeable percent of a programmer's job.

These tools seem great because they are less sensitive than humans to the mess and lift us over the tedious work. But at the same time, they're giving us an excuse to not fix what needed to be fixed and, in doing so, they're adding more crap to the heap.

Maybe what we need is forcing the tools to build on a simpler base, so we can keep an understanding of the results.

But what is meant by "real coder"? Does it mean an experienced senior coder? In that case, no, AI isn't ready to replace one. How about a junior coder who is fresh out of university and starting his first job? Surely that counts as a "real coder"? I'd argue that AI can and does already replace such coders, depending on the type of work they have been assigned.
“If it takes longer to explain to the system all the things you want to do and all the details of what you want to do, then all you have is just programming by another name”

If it's taking you that long to direct the AI, then either you're throwing too small a problem at it, or too big a problem at it, or you're not directing its attention properly.

In a way, your prompts should feel like writing user documentation:

    Refactor all of the decode functions in decoder.rs to return the number of bytes decoded
    in addition to the decoded values they already return. While refactoring, follow these principles:

    * Use established best practices and choose the most idiomatic approaches.
    * Avoid using clone or unwrap.
    * Update the unit tests to account for the extra return values, and make sure the tests check the additional return values.

    When you're finished, run clippy and fix any issues it finds. Then run rustfmt on the crate.
You're holding it wrong, magic robot edition.
True, but it's catching up fast. A year ago, I used AI for small OS scripts. It worked fine and saved me the time of looking up switches for commands. Now, I can ask it to create a simple game of about 200 lines, and it does a pretty good job of writing bug-free code within a few seconds. It's only going to get better. Even if the tech doesn't improve further, I can see a future where all apps are endlessly configurable.

A big part of my career has been the modification of enterprise software to fit a company's needs. Rarely was any one addition more than a few hundred lines of code. I can see a future where there will be simple options for a non-coder to add to an app.

True, it's not a coder, but that doesn't mean it won't fundamentally change how apps are made and it will reduce the number of master programmers needed. It won't replace all programmers, but it will greatly reduce the number that are needed, which country they work in and the language they use to program apps.

Programming has mainly been a career that requires the individual to understand English. That is changing. I can see a future where code can be created in multiple human languages. Programming was well-paid because relatively few people had the expertise to do it. That won't be the case, and the pay will adjust downward as needed. AI might not be a coder, but it will let many more people become coders. In the future, coding will be in the same pay range as clerical work. Companies will be hiring Programming Clerks rather than Programming Engineers.

“If it takes longer to explain to the system all the things you want to do and all the details of what you want to do, then all you have is just programming by another name,”

I think this is going to make the difference between junior and senior engineers even more drastic than it is today. It's really hard to know what/how to even describe real problems to these tools, and the people who invest the most in their tooling now, are going to be most successful. It's hard for someone who hasn't designed a large codebase already to do this in an ai native way where they don't have the experience of abstracting at the right level and things like that.

Today's equivalent, I've often found some of the best engineers I know have insane setups with nvim or emacs. They invest in their tool chain, and are now bringing AI into.

> It's really hard to know what/how to even describe real problems to these tools

I would argue that if you can't describe the problem in plain language then you don't have a very good chance of solving it with code or otherwise.

Personally I find that the act of describing the problem will often reveal a good solution...then it's just a matter of seeing if the LLM agrees with me or if it has a difference idea (for better or worse).

> some of the best engineers I know have insane setups with nvim or emacs. They invest in their tool chain, and are now bringing AI into.

I find this likely, but totally irrelevant to their success now and in the future. AI tools are as much of a trivial choice as any other text editor features. The resulting time spent and code quality are the same regardless of personal preferences.

There is so much more than coding, it’s the business rules, the constraints held in other parts of the company, the undocumented code that holds a company with no written context … you start a project from scratch ? AI can help you but you better be highly specific because hallucinations and errors will be there along the way. Now for the hundreds or billion of loc of private source code softwares that holds thousands of companies with not tightly formatted context and most of it just in some people’s memory … how would AI replace that ? Try let an AI rewrite a full ERP responsible of business logic with costly consequences on business and money … It will be just a tool, where sometimes we loose time and most time save a bit of time if we use it well
AI is apparently not ready to take my order at Popeyes either
So the author is providing some personal annotations and opinions on a summary of a “new paper” which was actually published five months ago, which itself was a summary of research with the author’s personal annotations and opinions added? These are exactly the kind of jobs that I want AI to automate.
It's more likely that AI will let more people "write" random blogs and articles about things they haven't sufficiently actually researched... you're gonna get more spam, not less.
Having your opinions and personal remarks automated by “AI” sounds really smart.