Live data from Hacker News

If AI Writes All the Code, What Do the Programmers Do?

probablydance.com

31–40 of 49 posts

Re: If AI Writes All the Code, What Do the Programmers Do?

#31
post #29

Earlier quoted context omitted.

I wonder if people said the same when compilers first appeared in the software development scene. > the whole LLM premise runs on one little assumption that they ll improve indefinitely. you are forgetting the law of diminishing returns To be honest, I think I'd remain happy if they just stayed at the level they are now, maybe bit faster and cheaper (and ideally more energy efficient), best would be to run it locally…

The difference is you can trust the compiler without knowing what System.out.println("Hello, World!") is going to ultimately look like, and the vast majority of what compilers output will never need human intervention to fix something or human oversight to ensure correctness and fitness for purpose.

[deleted]

Re: If AI Writes All the Code, What Do the Programmers Do?

#32

Earlier quoted context omitted.

> Generally, compilers are deterministic Not really. Maybe more so than they used to be thanks to deterministic algorithms becoming faster, but most compilers still aren't deterministic by default. There are still advantages to non-determinism in compilers, like not having to worry about thread execution order. To be fair, most compilers these days allow you to optionally enable determinism. Then again, LLMs also all…

> LLMs also allow you to optionally enable determinism really? Please explain

What's in need of explanation? Computers are designed to be deterministic, and LLMs run on computers, so LLMs must also be deterministic.

There caveat to that is where external inputs give the illusion of non-determinism. Thread execution order, like we already discussed, is one such example. Technically still deterministic if you understand the external inputs, but for the sake of discussion we can consider external inputs to be non-deterministic. Which is why compilers usually end up being non-deterministic by default. However, computers are designed to be deterministic so there are ways to avoid introducing those external inputs, albeit often at the cost of performance. LLMs and compilers alike can be run deterministically.

LLMs have one additional property not typically found in a traditional compiler — a call to rand() — but rand() is also deterministic when configured with a constant seed and can also be turned off completely by setting temperature to 0.

Re: If AI Writes All the Code, What Do the Programmers Do?

#33

Earlier quoted context omitted.

Not since the advent of the compiler have most developers understood what is being generated. Their efforts have instead gone into validation (often manual, but sometimes automated) to see that what was generated works as expected as that is all that really matters to the business goals. Which is still where the effort is going, although there does seem to be more interest in automated validation now, which is welcom…

This is certainly overstating the difference between compiled code and the source code. If I write an if/else statement, I understand what the computer is going to do when it's evaluated even if I don't know or see the literal machine code.

Only if the compiler is perfectly naive. With the state of today's optimizing compilers, the output might be very different from what you'd expect. But it also doesn't matter because the business goal is the results from executing the program, not the static code. Hence why, as the earlier commenter pointed out, efforts go into validation rather than understanding the generated code. 99% of the time the code a compiler spits out simply doesn't matter. The same is now proving true as we move up a level of abstraction. The code spit out from an LLM doesn't matter any more than the code spit out from a compiler, only validation that it functions as expected matters.

Re: If AI Writes All the Code, What Do the Programmers Do?

#34

- in about 5 yrs of time, this is not going to age well - massive studies ll come out on how 50% of the software engineers dont know or understand what they "generated" at all and how their critical thinking skills have taken a nosedive - every major software company out there that is busy firing juniors now is going to run into the opposite problem: finding talented juniors and they ll command a hefty pay - the whol…

I wonder if people said the same when compilers first appeared in the software development scene. > the whole LLM premise runs on one little assumption that they ll improve indefinitely. you are forgetting the law of diminishing returns To be honest, I think I'd remain happy if they just stayed at the level they are now, maybe bit faster and cheaper (and ideally more energy efficient), best would be to run it locally…

> I think I'd remain happy if they just stayed at the level they are now, maybe bit faster and cheaper

Definitely ! It's so useful as is, even without spitting a single line of code, as an analysis and documentation tool, it's already great. Now a faster and/or cheaper version: perfect. Make it runnable on commodity hardware: icing on the cake.

Re: If AI Writes All the Code, What Do the Programmers Do?

#35
post #33

Earlier quoted context omitted.

This is certainly overstating the difference between compiled code and the source code. If I write an if/else statement, I understand what the computer is going to do when it's evaluated even if I don't know or see the literal machine code.

Only if the compiler is perfectly naive. With the state of today's optimizing compilers, the output might be very different from what you'd expect. But it also doesn't matter because the business goal is the results from executing the program, not the static code. Hence why, as the earlier commenter pointed out, efforts go into validation rather than understanding the generated code. 99% of the time the code a compil…

[deleted]

Re: If AI Writes All the Code, What Do the Programmers Do?

#36

Earlier quoted context omitted.

People loke you're the minority. Most people use the brilliant strategy if "prompt and pray" Because of AI speed is valued over everything else

Some of the code bases I have at work are legacy spaghetti -- hard to reason about. I too employ the prompt and pray strategy and then see if CI fails. I can only be surgical where I already have a grasp on the codebase, or if I was involved from the beginning. Morally, I dislike what AI is doing to the profession. Rigor is suffering.

It's also possible to point the AI at legacy spaghetti and say "document this in detail" as a starting point for unspaghettifying it.

Re: If AI Writes All the Code, What Do the Programmers Do?

#38

- in about 5 yrs of time, this is not going to age well - massive studies ll come out on how 50% of the software engineers dont know or understand what they "generated" at all and how their critical thinking skills have taken a nosedive - every major software company out there that is busy firing juniors now is going to run into the opposite problem: finding talented juniors and they ll command a hefty pay - the whol…

I wonder if people said the same when compilers first appeared in the software development scene. > the whole LLM premise runs on one little assumption that they ll improve indefinitely. you are forgetting the law of diminishing returns To be honest, I think I'd remain happy if they just stayed at the level they are now, maybe bit faster and cheaper (and ideally more energy efficient), best would be to run it locally…

>” To be honest, I think I'd remain happy if they just stayed at the level they are now, maybe bit faster and cheaper (and ideally more energy efficient), best would be to run it locally too, but I don't really need them to get "better" to make good use of them at this point.”

I have bad news … you’re gonna be mad… they’re gonna make it expensive otherwise they can’t get the hockey stick ROI.

Re: If AI Writes All the Code, What Do the Programmers Do?

#39

Earlier quoted context omitted.

I wonder if people said the same when compilers first appeared in the software development scene. > the whole LLM premise runs on one little assumption that they ll improve indefinitely. you are forgetting the law of diminishing returns To be honest, I think I'd remain happy if they just stayed at the level they are now, maybe bit faster and cheaper (and ideally more energy efficient), best would be to run it locally…

>” To be honest, I think I'd remain happy if they just stayed at the level they are now, maybe bit faster and cheaper (and ideally more energy efficient), best would be to run it locally too, but I don't really need them to get "better" to make good use of them at this point.” I have bad news … you’re gonna be mad… they’re gonna make it expensive otherwise they can’t get the hockey stick ROI.

I'd like to see them try to increase prices as long as open source models that are roughly in the same league are available

Re: If AI Writes All the Code, What Do the Programmers Do?

#40

- in about 5 yrs of time, this is not going to age well - massive studies ll come out on how 50% of the software engineers dont know or understand what they "generated" at all and how their critical thinking skills have taken a nosedive - every major software company out there that is busy firing juniors now is going to run into the opposite problem: finding talented juniors and they ll command a hefty pay - the whol…

On your second point... that's the problem... IMO, humans need to read/understand and approve code changes generated by AI. If either through a lack of understanding or skill, they approve changes anyways, that's largely on them an they largely deserve what they get.

Like TFA, I'm a proponent of human gatekeepers in the loop. IMO, the result isn't much better at a team level when you compare dev + ai to a typical team and that level of output... but you get a lot more testing and documentation along the way just through the process refinement and iterations.

I think the harder issue is finding and growing Senior level developers that actually have a material understanding of what is happening and how things are working at a high and low level. The more junior, imo, the more likely someone is to just accept the AI result(s) that introduce more bugs in the process.

Post reply on HN