Friday, September 26, 2008

Programming Proverbs

I was listening to an On Point show last night about proverbial wisdom and it struck me how much software engineering is overwhelmed with proverbs. Someone even wrote a book of them, Programming Proverbs

Here are a few I can think of:

  • KISS (Keep It Simple Stupid)
  • DRY (Don't Repeat Yourself)
  • When in doubt leave it out.
  • Choose two: Good, Fast, Cheap
  • There's no silver bullet
  • “Perfection is achieved, not when there is nothing more to add, but when there is nothing left to take away” - Antoine de Saint ExupĂ©ry
  • No Broken Windows

People don't often take proverbs seriously. But I find them extremely useful when writing software. I don't think I'm the only person who finds them helpful. How often do you think about the DRY principle, or KISS, when writing software? These proverbs have invaded the language of software engineering. I think their value suggests something about either the nature of our industry, or the current state of it. I wonder if other industries are riddled with proverbs.

I found a good list http://www.multicians.org/thvv/proverbs.html.

Which big ones did I miss?

Updates

Here are a few more from Eric
  • YAGNI (you ain't gonna need it)
  • PICNIC (problem in chair, not in computer
  • BAD (behaves as designed)

1 comment:

ekerwin said...

I can't believe you missed YAGNI (You Ain't Gonna Need It) - has to be one of my favorites to say, while DRY is of course, my favorite to adhere to.

 
Web Statistics