3 Virtues of a Software Developer

Every professional — even and especially the technically-inclined — needs to know Larry Wall’s three virtues of a software developer:

  1. Laziness: The quality that makes you go to great effort to reduce overall energy expenditure. It makes you write labor-saving programs that other people will find useful and document what you wrote so you don’t have to answer so many questions about it.

  2. Impatience: The anger you feel when the computer is being lazy. This makes you write programs that don’t just react to your needs, but actually anticipate them. Or at least pretend to.

  3. Hubris: The quality that makes you write (and maintain) programs that other people won’t want to say bad things about.

It’s a bit tongue-in-cheek but there’s real truth throughout; I’m obsessive about optimizing my workflows to the nth degree so that I never have to do “X” or “Y” or “Z” manually, ever again.

The catch is, of course, that I might spend my entire life trying to optimize that very workflow and system which is anything but lazy — it’s a full life, a life well-lived, full of meaning and wonder and worthwhile investments.

  1. 2

    It's funny those almost read like a list of cardinal sins for an entrepreneur.

    1. 1

      fun to think through, for sure.

Trending on Indie Hackers
I analyzed >1,000 indie SaaS projects and bought 6 for over $15M in total! AMA 42 comments 12 Lessons Learned As A CTO 21 comments Top 20 tools for Startups 11 comments Launch IH: 🎉 Vuestic UI - Free and Open Source UI Library for Vue 3 🎉 11 comments Seeking feedback on MVP. Is value prop obvious? 9 comments Download Product Hunt Upvoters List in 2 Mins 6 comments