97 вещей, которые должен знать каждый программист

Это перевод серии статей 97 Things Every Programmer Should Know.

Перевод вступления (переводы статей - ниже):
Добро пожаловать на главную страницу проекта 97 вещей, которые должен знать каждый программист, жемчужины мудрости для программистов, собранные от ведущих практиков. Вы можете прочитать статьи, прошедшие в книгу (прим. пер.: список их переводов - ниже), плюс другие статьи, не вошедшие в книгу, просмотреть не законченные статьи, просмотреть список авторов, а также узнать, как внести свою статью. Если вы просто хотите прокомментировать статью, пожалуйста, прочитайте как стать автором, так как часть этого относится и к вам.

Здесь нет никакой общей идеи повествования: цель сборника - просто собрать многочисленные и разнообразные взгляды на то, что следует знать программистам, по мнению участников проекта. Это может быть что угодно от совета по коду до культуры, от использования алгоритма до agile-мышления, от внедрения ноу-хау к профессионализму, от стиля к сути и т.д.

Конечный срок для избрания статей в книгу уже прошёл, но сайт ещё открыт для ваших статей. Для книги были выбраны 97 статей, которые теперь опубликованы в серии 97 Things (97 вещей) издательства O'Reilly. В серию уже входят 97 вещей, которые должен знать каждый архитектор программ и 97 вещей, которые должен знать каждый менеджер проекта. Вы можете узнать больше о серии и проекте 97 вещей, которые должен знать каждый программист в этой статье InfoQ.

Надеюсь, что вам понравился сайт! Не стесняйтесь говорить об этом проекте (ссылайтесь на http://programmer.97things.oreilly.com, http://tr.im/97tepsk или http://tinyurl.com/97tepsk; прим.пер.: или на http://www.transl-gunsmoker.ru/p/97.html, если вы хотите сослаться на мои переводы). Вы можете быть в курсе новостей, следуя @97TEPSK на Twitter.
Переводы 97 статей, вошедших в книгу:
  1. Действовать осмотрительно.
  2. Применение принципов функционального программирования.
  3. Спросите "А что бы сделал пользователь?" (подсказка: вы - не пользователь).
  4. Автоматизируйте ваш стандарт кода.
  5. Красота заключается в простоте.
  6. Прежде, чем вы приступите к рефакторингу.
  7. Опасайтесь повторного использования кода.
  8. Правило бойскаутов.
  9. Сначала проверьте свой код, а уж потом вините других.
  10. Внимательно выбирайте инструменты.
  11. Кодируйте на языке предметной области.
  12. Код - это дизайн.
  13. Разметка кода имеет значение.
  14. Разбор кода.
  15. Программируйте обоснованно.
  16. Комментарий о комментариях.
  17. Комментируйте только то, что не говорит сам код.
  18. Непрерывное обучение.
  19. Удобство - это не -илити.
  20. Выпускайте программу раньше и часто.
  21. Отделяйте бизнес-исключения от технических.
  22. Много занимайтесь осознанной практикой.
  23. Языки предметной области.
  24. Не бойтесь сломать программу.
  25. Не выделывайтесь в ваших тестовых данных.
  26. Не игнорируй эту ошибку!.
  27. Не просто изучите язык, а поймите его культуру.
  28. Позвольте трупу упасть.
  29. Не надейтесь на "А тут происходит волшебство".
  30. Не повторяйтесь.

Бонус-статьи, не имеющие отношения к циклу, но схожие по назначению:
  1. Отделяйте интерфейс от реализации.