Skip to content
quotesby

About this quote

What does it mean?
Poor programming is inevitable and training cannot fix human fallibility.
In plain terms
People make mistakes in code and we must accept that.
What can you take from it?
Build systems that tolerate human error.

Where it applies

  • team management
  • software quality
  • learning

Putting it to work

  • Implement code reviews
  • Automate testing

Questions to consider

  • Can tools replace training?
  • How do you design for mistakes?

Another view

Some argue better training and tools can significantly reduce errors.

More from Alan Perlis

  1. Fools ignore complexity. Pragmatists suffer it. Some can avoid it. Geniuses remove it.

    Permalink to quote #8
  2. If a listener nods his head when you're explaining your program, wake him up.

    Permalink to quote #10
  3. Every program has two purposes: The one for which it was written and another for which it wasn't.

    Permalink to quote #7

Related quotes

  1. My programming language was solder.

    Terry PratchettTerry Pratchett quote #2
  2. You have attributed conditions to villainy that simply result from stupidity.

    Robert A. HeinleinRobert A. Heinlein quote #4
  3. You remember that book called All I Really Need to Know I Learned in Kindergarten? ... Well that's very much true. I find a lot in common in the way I manage t…

    Mohamed ElBaradeiMohamed ElBaradei quote #4