Urgent.News

What's breaking now, across thousands of outlets.

AI

Dijkstra, Knuth, Kernighan: 10 Quotes That Predicted the AI Coding Debate

In 1972, Edsger Dijkstra stood up to accept a Turing Award and gave a lecture called "The Humble Programmer." He had never seen an LLM. He had never watched an agent rewrite a file in his terminal. And yet what he said that day reads like a direct response to the way we argue about AI coding in 2026. So does a good deal of what his contemporaries wrote over the two decades that followed. That's…

1. "The competent programmer is fully aware of the strictly limited size of his own skull; therefore he approaches the programming task in full humility, and among other things he avoids clever tricks like the plague." — Edsger Dijkstra, *The Humble Programmer* (1972)

This quote anticipates the debate around AI coding, where the danger of overly complex solutions is amplified by the assistance of AI.

2. "Testing shows the presence, not the absence of bugs." — Edsger Dijkstra, *NATO Software Engineering Conference* (1969)

This reminder about the limitations of testing in AI-generated code remains relevant, as AI-written code can often evade detection by seemingly flawless tests.

3. "Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it." — Brian Kernighan, *The Elements of Programming Style* (1978)

Applying Kernighan's wisdom to AI coding, if an LLM produces overly complex code and one simply accepts it without scrutiny, the debugging process becomes incredibly challenging.

4. "Beware of bugs in the above code; I have only proved it correct, not tried it." — Donald Knuth (1977)

Knuth's cautionary note about code correctness is particularly poignant when considering AI-generated code, which often presents itself as highly reliable without offering any proof.

5. "Programs must be written for people to read, and only incidentally for machines to execute." — Harold Abelson & Gerald Sussman, *SICP* (1985)

In the age of AI coding, this principle underscores the importance of creating clean, well-structured code that is accessible to both humans and AI agents alike.

6. "The amateur software engineer is always in search of magic." — Grady Booch

This observation from Booch highlights the allure of AI in coding, which can seem like a magic solution to complex problems, but actually masks the true complexity of software development.

7. "Shipping first-time code is like going into debt." — Ward Cunningham

Cunningham's analogy to taking on debt directly translates to AI coding, where the rapid generation of code with AI can lead to significant technical debt without proper maintenance or review.

8. "Move fast and break things." — Facebook internal motto (2009–2014)

This corporate mantra, now outdated, still holds a lesson for AI coding. While speed can be beneficial for prototypes, it becomes reckless when dealing with production code, especially with AI agents that can generate large amounts of code quickly.

9. "Saying that learning to code is unnecessary because of AI is some of the worst career advice ever given." — Andrew Ng

Ng's perspective on the enduring importance of learning to code, even in the era of AI, serves as a counterbalance to the trend of delegating coding tasks to AI agents.

Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.

Read the original at dev.to →

More in AI

More from Saturday 12 September →