Stephen A. Fuqua (SAF) is a Bahá'í, software developer, and conservation and interfaith advocate in the DFW area of Texas.

Curly's Law and Questions for the Team

February 16, 2009

Coding Horror, almost two years back, christened a name for the principle variously known as "don't repeat yourself," "once and only once," etc.: Curly's Law. Excellent formulation of the principle. In sending this to my development team, I thought it would be useful to pull this from the abstract to the specific through a few questions:

  1. Can you identify something in our programming (any project we’ve worked on) that violates “Curly’s Law”?
  2. Can you think of one or more design patterns that we are using that have helped us to “obey” this principle?
  3. Do you think that following this principle will actually make you a better programmer; put another way, do you think that following this principle will actually result in code that… (if not, why not?)
    1. Has fewer defects
    2. Is easier to maintain
    3. Has better performance