As developers, saying "no" to clients sounds, on it's face, like a bad idea. You want to do what the clients need, you don't want to upset them, and, frankly, you want the hours. But the truth is, in order to build websites that are cost-effective and sustainable, you have to say "no" sometimes.
About a year ago, I was deeply enmeshed in fixing a rather badly-developed Drupal site for a client. In my frustration and anger, I wrote these commandments. I thought these would go without saying, but obviously, they needed to be said.