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