1. Правило модульности: Пишите простые части, связанные чистыми интерфейсами.
  2. Правило ясности: Ясность лучше, чем ум.
  3. Правило композиции: создавайте программы, которые будут связаны с другими программами.
  4. Правило разделения: отделить политику от механизма; отдельные интерфейсы от двигателей.
  5. Правило простоты: дизайн для простоты; усложняйте только там, где это необходимо.
  6. Правило бережливости: пишите большую программу только тогда, когда из демонстрации становится ясно, что ничего другого не получится.
  7. Правило прозрачности: проектируйте для наглядности, чтобы упростить проверку и отладку.
  8. Правило надежности: надежность — это результат прозрачности и простоты.
  9. Правило представления: сложите знания в данные, чтобы логика программы была глупой и надежной.
  10. Правило наименьшего удивления: в дизайне интерфейса всегда делайте наименее неожиданные вещи.
  11. Правило молчания: когда программа не может сказать ничего удивительного, она не должна ничего говорить.
  12. Правило ремонта: когда вы должны потерпеть неудачу, потерпите неудачу с шумом и как можно скорее.
  13. Правило экономии: время программиста стоит дорого; сохранить его вместо машинного времени.
  14. Правило генерации: избегайте ручного взлома; писать программы писать программы, когда вы можете.
  15. Правило оптимизации: прототип перед полировкой. Заставьте его работать, прежде чем оптимизировать его.
  16. Правило разнообразия: не доверяйте всем заявлениям об «единственном верном пути».
  17. Правило расширяемости: проектируйте для будущего, потому что оно наступит раньше, чем вы думаете.