Most of you are familiar with the virtues of a programmer. There are three, of course: laziness, impatience, a... — Larry Wall
Most of you are familiar with the virtues of a programmer. There are three, of course: laziness, impatience, and hubris.
Author: Larry Wall
Insight: Programmers get mocked for these three traits, but Larry Wall is pointing at something real about what actually gets things done. Laziness isn't about doing nothing—it's about refusing to waste effort on repetitive tasks, which drives you to automate them. That impulse to avoid tedious work has given us enormous chunks of modern infrastructure. Impatience pushes back against slow, bloated solutions and demands better. And hubris? The confidence to believe you can solve a problem others haven't, or solve it differently. The funny part is that these "flaws" aren't unique to programmers. Any creator or builder has them. The parent who rigs up a better system for organizing kids' chores, the chef who gets annoyed with traditional recipe steps and invents a shortcut, the person who refuses to accept "that's just how it's always been done." What programmers do is lean into these impulses deliberately, almost as a philosophy. The real insight is that some of our most productive traits don't look virtuous at first glance. We spend energy trying to eliminate what we think are our character defects, when sometimes the trick is channeling them toward something useful. The question isn't whether you're lazy or impatient—it's what you're going to build with it.