1. Premature Optimization: Do not optimize too early before you know bottlenecks and problems in the live environment.
  2. Bikeshedding: Do not spend time on minor topics 
  3. Analysis Paralysis: Do not analysis too much.
  4. God Class: Avoid big classes that control many other classes.
  5. Fear of Adding Classes: Add new classes if necessary and do not fear about the complexity.
  6. Inner-platform Effect: Try to use available features of your OS instead of re-writing them in your programming language.
  7. Magic Numbers and Strings: Avoid magic and undocumented numbers in your code.
  8. Management by Numbers: Do not rely too much on numbers like LoC.
  9. Useless (Poltergeist) Classes: If class is not doing anything valuable, remove it.