Back to Blog

The Lost Art of Damascus Steel and Programming

Why the fundamental knowledge of how things work matters more than ever in the age of AI

August 15, 2025

ai programming history human inspired ai assisted

Throughout history, humanity has developed remarkable techniques and technologies, only to lose them to time. Today, as artificial intelligence reshapes how we build software, we face a similar risk with programming itself becoming a lost art.

The Lost Arts of History

Consider Damascus steel. For centuries, from 900 to 1700 AD, craftsmen produced blades of legendary sharpness and durability. The exact techniques were closely guarded secrets passed down through generations. Yet after 1700, the knowledge simply disappeared. Modern metallurgists have spent centuries trying to reverse-engineer these methods. While we can create steel that looks similar, our best attempts remain approximations of the original.

The same story applies to Roman concrete. The Pantheon and other ancient Roman structures still stand today, their concrete unmarred by cracks despite two millennia of exposure. Meanwhile, modern concrete often begins deteriorating within decades. The precise composition and curing methods the Romans used have been lost to history.

These aren’t isolated incidents. Across every field of human endeavor, knowledge that once seemed essential can vanish when we stop valuing it.

The “Don’t Learn to Code” Movement

Today, a chorus of tech influencers and podcasters are telling aspiring developers not to bother learning programming fundamentals. They argue that AI will handle the coding, so why waste time understanding how computers actually work?

This advice isn’t just shortsighted. It’s dangerous.

When we stop learning how things work, we become dependent on tools we don’t understand. We lose the ability to fix what breaks, improve what falls short, or innovate beyond what our tools can currently do.

Why Fundamentals Still Matter

The push toward “vibe coding” and AI-assisted development ignores a crucial reality: large language models are non-deterministic. They can produce different outputs from the same input. They hallucinate. They confidently generate code that looks correct but contains subtle, dangerous bugs.

Without understanding how to code, how will you recognize when the AI has gone wrong? How will you debug the mess when your production system breaks at 3 AM? How will you know if the generated solution is elegant or a fragile hack that will collapse under real-world load?

Programming isn’t just about producing working code. It’s about understanding systems, reasoning about edge cases, and building software that can evolve. These skills require deep knowledge, not just the ability to prompt an AI.

History Repeats Itself

If we follow the advice to stop learning how computers work, we risk creating a generation of developers who can ask AI for code but cannot understand or maintain it. We’ll have software that runs but nobody can fix. We’ll become entirely dependent on tools that we cannot improve or replace.

This isn’t speculative. We’ve already seen what happens when knowledge disappears. Damascus steel and Roman concrete stand as monuments to what we can achieve—and warnings about what we can lose.

A Hard Truth

There’s another side to this discussion that rarely gets mentioned: programming is genuinely difficult. It requires logical thinking, attention to detail, and the ability to hold complex systems in your mind. Not everyone finds this natural or enjoyable.

If learning to program feels impossibly hard for you, perhaps the honest answer is that software engineering isn’t the right profession. There’s no shame in this. The world needs people with all kinds of skills. But pretending that AI eliminates the need to understand code, or that coding should be effortless, does a disservice to everyone.

Good software engineers understand their craft deeply. They know why things work, not just that they work. This depth of knowledge cannot be outsourced to an AI assistant.

Conclusion

Learn to code. Not just because it’s immediately useful, but because we cannot afford to let this knowledge become another lost art. Understand how computers work, how software is built, and how systems interact. Build things from scratch occasionally, even when AI could do it faster.

Don’t follow the influencers telling you that knowledge is obsolete. History teaches us exactly where that path leads.