Comment by w4yai
1 day ago
Nothing new. Whenever a new layer of abstraction is added, people say it's worse and will never be as good as the old way. Though it's a totally biased opinion, we just have issues with giving up things we like as human being.
> Whenever a new layer of abstraction is added
LLMs aren't a "layer of abstraction."
99% of people writing in assembly don't have to drop down into manual cobbling of machine code. People who write in C rarely drop into assembly. Java developers typically treat the JVM as "the computer." In the OSI network stack, developers writing at level 7 (application layer) almost never drop to level 5 (session layer), and virtually no one even bothers to understand the magic at layers 1 & 2. These all represent successful, effective abstractions for developers.
In contrast, unless you believe 99% of "software development" is about to be replaced with "vibe coding", it's off the mark to describe LLMs as a new layer of abstraction.
> unless you believe 99% of "software development" is about to be replaced with "vibe coding"
Probably not vibe coding, but most certainly with some AI automation
The difference is that LLM output is very nondeterministic.
And because of that, we check in the generated code, not the high-level abstraction. So to understand your program, you have to read the output, not the input.
It depends. Temperature is a variable. If you really need determinism, you could build a LLM for that. Non-determinism can be a good feature though.
How would you do that? If it's possible, it seems strange that someone hasn't done it already.
1 reply →