A year ago, I wrote a blog post titled "Why I'm Not Learning to Code" that went semi-viral on LinkedIn. I argued that humanists have a meaningful place in the tech industry without needing to code. The post resonated with many who felt caught between two worlds.
Today, I've completely reversed my position. I'm learning to code—or at least to "vibe code" with the help of AI. I'm learning to build things with AI coding tools, exploring this new frontier where natural language meets programming language.
Some find this ironic. "If AI can do all the coding for you, why learn coding at all?" they ask.
This perspective misses something fundamental. The more I vibe code, the more I realize how much coding knowledge is actually required to create something that works in production. Far from making coding knowledge obsolete, AI tools have made me want to learn coding even more deeply.
When you vibe code, you're not avoiding the need for technical understanding—you're redistributing where that understanding matters most. You may not need to memorize syntax or write every line by hand, but you absolutely need to understand systems, architecture, and how different pieces connect.
I've watched countless vibe coding tutorials. Most showcase building something flashy but ultimately not that useful, or they only teach you how to build a cool demo without explaining how to deploy it to real users. That gap between demo and deployment is where the real challenges begin.
Wharton professor Ethan Mollick puts it perfectly: "Expertise clearly still matters in a world of creating things with words. After all, you have to know what you want to create; be able to judge whether the results are good or bad; and give appropriate feedback."
He continues: "This underscores how vibe coding isn't about eliminating expertise but redistributing it—from writing every line of code to knowing enough about systems to guide, troubleshoot, and evaluate. The challenge becomes identifying what 'minimum viable knowledge' is necessary to effectively collaborate with AI on various projects."
This concept of "minimum viable knowledge" fascinates me. It frames a provocative question: With AI coding tools in mind, how would you redesign introductory CS courses or coding bootcamps?
Perhaps we need two tracks: one for future professional developers who need deep technical expertise, and another for those who want to become "technically literate" enough to effectively direct AI to code for them. For this second group, how much is "enough"? What fundamentals actually need to be learned?
Despite the proliferation of vibe coding tutorials, this question hasn't been adequately addressed. The line between knowing just enough and knowing too little remains blurry. As AI coding assistants become more powerful, defining this baseline of necessary knowledge becomes increasingly important.
What seems clear is that vibe coding isn't a shortcut around technical understanding—it's a different path through it, with its own learning curve and knowledge requirements. The coding skills of tomorrow may look different, but they'll be coding skills nonetheless.
Agree. Knowledge of systems and architecture is absolutely important in vibe coding.
Agree. People see different things in Vibe Coding, but it definitely makes building things much easier and faster. It will attract more people to try coding, help them see the fun, the easy parts, and the challenges. In every way, it will bring more brilliant people into the 'building' world.