Live data from Hacker News

Reports of code's death are greatly exaggerated

stevekrouse.com

171–180 of 486 posts

Re: Reports of code's death are greatly exaggerated

#171

Earlier quoted context omitted.

99% of humans in a particular specialization, sure. It's the 1% who become experts in that specialization who are able to advance the state of the art. But it's a different 1% for every area of expertise! Add it all up and you get a lot more than 1% of humans contributing to the sum of knowledge. And of course, if you don't limit yourself to "advancing the state of the art at the far frontiers of human knowledge" but…

> 99% of humans in a particular specialization, sure. It's the 1% who become experts in that specialization who are able to advance the state of the art How? By also "synthesizing the data they were trained on" (their experience, education, memories, etc.).

No, that's not all we're doing. If that's all humans ever did, we'd still be living in the stone age.

Re: Reports of code's death are greatly exaggerated

#172
post #143

Earlier quoted context omitted.

In the grand scale of things, a computer is not much more than a fancy brick. Certainly it is much closer to a brick than to a human. So the question is more 'why should this particularly fancy brick have abilities that so far we have only encountered in humans?'

> Certainly it is much closer to a brick than to a human. I disagree with this premise. A computer approximates a Turing Machine, which puts it far above a brick.

but still so so much further to go until you reach human.

Re: Reports of code's death are greatly exaggerated

#173

Earlier quoted context omitted.

You could probably do it in a few days, C is not that hard to compile

Right, and that was a design goal of C language... to be close to the machine.

Yes, and I was responding to

> it would take a few years at least

Re: Reports of code's death are greatly exaggerated

#174

Chris Lattner, inventor of the Swift programming language recently took a look at a compiler entirely written by Claude AI. Lattner found nothing innovative in the code generated by AI [1]. And this is why humans will be needed to advance the state of the art. AI tends to accept conventional wisdom. Because of this, it struggles with genuine critical thinking and cannot independently advance the state of the art. AI…

You know where LLMs boost me the most? When I need to integrate a bunch of systems together, each with their own sets of documentation. Instead of spending hours getting two or three systems to integrate with mine with the proper OAuth scopes or SAML and so on, an LLM can get me working integrations in a short time. None of that is ever going to be innovative; it's purely an exercise in perseverance as an engineer to read through the docs and make guesses about the missing gaps. LLMs are just better at that.

I spend the other time talking through my thoughts with AI, kind of like the proverbial rubber duck used for debugging, but it tends to give pretty thoughtful responses. In those cases, I'm writing less code but wanting to capture the invariants, expected failure modes and find leaky abstractions before they happen. Then I can write code or give it good instructions about what I want to see, and it makes it happen.

I'm honestly not sure how a non-practitioner could have these kinds of conversations beyond a certain level of complexity.

Re: Reports of code's death are greatly exaggerated

#175
post #145

Chris Lattner, inventor of the Swift programming language recently took a look at a compiler entirely written by Claude AI. Lattner found nothing innovative in the code generated by AI [1]. And this is why humans will be needed to advance the state of the art. AI tends to accept conventional wisdom. Because of this, it struggles with genuine critical thinking and cannot independently advance the state of the art. AI…

> AI tends to accept conventional wisdom. Because of this, it struggles with genuine critical thinking and cannot independently advance the state of the art. Of course! But that's what makes them so powerful. In 99% of cases that's what you want - something that is conventional. The AI can come up with novel things if it has an agency, and can learn on its own (using e.g. RL). But we don't want that in most use cases…

You had me at "fuzzy", but lost me at "clean up" - because that's what I usually have to do after it went on another wild refactoring spree. It's a stochastic thing, maybe you're lucky and it fuzzy-matches exactly what you want, maybe the distributions lead it astray.

On the line test, I guess it's highly probable that the joke and a few hundred discussions or blog pieces about it were in it's training data.

Re: Reports of code's death are greatly exaggerated

#176
post #3

From "code" to "no-code" to "vibe coding" and back to "code". What you are seeing here is that many are attempting to take shortcuts to building production-grade maintainable software with AI and now realizing that they have built their software on terrible architecture only to throw it away, rewriting it with now no-one truly understanding the code or can explain it. We have a term for that already and it is called…

> We have a term for that already and it is called "comprehension debt". This isn't any different than the "person who wrote it already doesn't work here any more". > now requiring engineers to manually review AI changes [2] (which slows them down even with AI). What does this say about the "code review" process if people cant understand the things they didn't write? Maybe we have had the wrong hiring criteria. The "…

> This isn't any different than the "person who wrote it already doesn't work here any more".

It is very different. With empathy you can often deduct why people wrote code the way they did. With LLMs there often is no reason.

Re: Reports of code's death are greatly exaggerated

#177

Earlier quoted context omitted.

> 99% of humans in a particular specialization, sure. It's the 1% who become experts in that specialization who are able to advance the state of the art How? By also "synthesizing the data they were trained on" (their experience, education, memories, etc.).

No, that's not all we're doing. If that's all humans ever did, we'd still be living in the stone age.

Can we be sure? Maybe it's just very rare for experience, education and memories to line up in exactly the way that allows synthesizing something innovative. So it requires a few billion candidates and maybe a couple of generations too.

Re: Reports of code's death are greatly exaggerated

#178
It seems to be inevitable that with any new technology we go through a phase of super duper excitement about the possibilities, where we try to use it to the extreme, and through that process start to absorb what it actually is and isn't capable of.

The hype cycle's distasteful of course, but I've accepted that this is how humans figure out what things are. Like a child we have to abuse it before we learn how to properly use it.

I think many of us sense and have sensed that the promises made of agentic programming smell too good to be true, owing to our own experiences as programmers and engineers. But experts in a domain are always the minority, so we have to understand that everyone else is going to have to reach the same intuition the hard way.

Re: Reports of code's death are greatly exaggerated

#179
I agree that programming language can be a better (denser, more precise) encapsulator of intent than natural language. But the converse is more often true; natural language is a denser and more precise encapsulator of intent than programming language.

I think there's some irony in using Russell's quote being used this way. My intent will often be less clear to a reader once encoded in a language bound inextricably to a machine's execution context.

Good abstraction meaningfully whittles away at this mismatch, and DSLs in powerful languages (like ML-family and lisp-family languages) have often mirrored natural(ish) language. Observe that programming languages themselves have natural language specifications that are meaningfully more dense than their implementations, and often govern multiple implementations.

Code isn't just code. Some code encapsulates intent in a meaningfully information and meaning-dense way: that code is indeed poetry, and perhaps the best representation of intent available. Some code, like nearly every line of the code that backs your server vs client time example, is an implementation detail. The Electric Clojure version is a far better encapsulation of intent (https://electric.hyperfiddle.net/fiddle/electric-tutorial.tw...). A natural language version, executed in the context of a program with an existing client server architecture, is likely best: "show a live updated version of the servers' unix epoch timestamp and the client's, and below that show the skew between them."

Given that we started with Russell, we could end with Wittgenstein's "Is it even always an advantage to replace an indistinct picture by a sharp one? Isn't the indistinct one often exactly what we need?"

Re: Reports of code's death are greatly exaggerated

#180

Earlier quoted context omitted.

No, that's not all we're doing. If that's all humans ever did, we'd still be living in the stone age.

Can we be sure? Maybe it's just very rare for experience, education and memories to line up in exactly the way that allows synthesizing something innovative. So it requires a few billion candidates and maybe a couple of generations too.

I want to point back to my remark about everyday people.

if you don't limit yourself to "advancing the state of the art at the far frontiers of human knowledge" but allow for ordinary people to make everyday contributions in their daily lives, you get even more

This isn't a throwaway comment. I do this all the time myself, at work. Everywhere I've worked, I do this. I challenge the assumptions and try to make things better. It's not a rare thing at all, it's just not revolutionary.

Revolutions are rare. Perhaps only a handful of them have ever happened in any one particular field. But you simply will not ever go from Aristotelian physics to Newtonian physics to General Relativity by merely "synthesizing the data they were trained on", as the previous comment supposed.

Edit: I should also say something about experimentation. You can't do it from an armchair, which is all an LLM has access to (at present). Real people learn things all the time by conducting experiments in the world and observing the results, without necessarily working as formal scientists. Babies learn a lot by experimenting, for example. This is one particular avenue of new knowledge which is entirely separate from experience, education, memories, etc. because an experiment always has the potential to contradict all of that.

Post reply on HN