Programming as Theory Building
If you ever need an endorsement of trying to chase citations all the way back to their sources, look no further! I recently read a post by Steve Krouse, Vibe code is legacy code, where it mentions the refrain:
QUOTE
Programming is fundamentally theory building,
That one has been rattling around my brain for weeks, now. My industry is still in a massive shake-up brought on by how good LLM agents have gotten at producing code. Needless to say, there are a lot of opinions on LLM usage. Trying to negotiate out my own relationship with the technology and overcome a growing pit in my stomach that represents the question “Am I cooked?” is something I’m actively working on.
Steve Krouse’s quote digs into this citation — a paper by Peter Naur, who was influential in the earliest years of computer science as a forming discipline, and was married to Christiane Floyd, who was heavily involved in the production of the first coding IDEs.
(I did just attach his name to the term “computer science”, but it is worth noting that he didn’t like that term. He preferred — and coined — the term “datalogy”, which still sticks as the term for the discipline in his native Denmark.)
Lemme level with ya — this is going to get real heady, real fast. As background, Naur rejected the idea that computer science was itself a direct descendant from raw mathematics. This paper builds on that idea, and talks about the interface between actual programmatic processes/development and the human beings who create them. Many of the citations on this paper are philosophical essays and excerpts — one of them seeks to distinguish human thought from hydrogen atoms.
Stick around, though! If you share my anxiety about the role of humans in a world where LLMs have pretty much beaten us out in the act of writing code, this paper may be as cathartic for you as it has been for myself.