Дошли руки до книги Чеда Фаулера «Программист-фанатик».
Я решил написать конспект книги, отжав из нее всю воду, а воды было предостаточно. Конспект позволит тем, кто не читал книгу ранее, познакомиться с идеями изложенными в ней.
![Программист-фанатик. Конспект часть 1. Почему нужно быть худшим и не слушать советы родителей - 1 Программист-фанатик. Конспект часть 1. Почему нужно быть худшим и не слушать советы родителей - 1](https://www.pvsm.ru/images/2019/12/20/programmist-fanatik-konspekt-chast-1-pochemu-nujno-byt-hudshim-i-ne-slushat-sovety-roditelei.jpeg)
Книга известная, ранее издавалась под названием «Страсть к программированию» и на хабре выкладывали главы из нее.
В целом идеи Фаулера иногда очень банальны и очевидны (даже думаешь, зачем об этом вообще было писать, это и так всем понятно); иногда спорны; а иногда любопытны.
Книга разделена, как и полагается, на главы, они названы советами и пронумерованы.
Всего 5 частей и 53 совета.
Главный посыл и идея книги раскрываются с первых же слов:
Книга посвящается тому, как реализовать себя и сделать карьеру. В этой книге описывается стратегия, позволяющая спланировать и реализовать совершенную с точки зрения успеха карьеру разработчика программного обеспечения
Автор в прошлом профессиональный музыкант. И в самом начале высказывает любопытную идею. Он задается вопросом:
Почему так много хороших музыкантов являются также хорошими программистами?
И сам же отвечает на него:
Дело в том, что используются одни и те же функции
Итак. Часть 1. Найди свой рынок
В предисловии к главе еще раз подчеркивается, что профессия и карьера — это инвестиции времени своей жизни. Поэтому карьеру ни в коем случае нельзя пускать на самотек.
Совет 1. Будь впереди или погибнешь
Технологии меняются. Старое отмирает не сразу, оставляя за собой угасающий шлейф во времени. Важно не остаться «Последним из могикан» с умершей технологией на руках. Нужно держать руку на пульсе и отслеживать тенденции.
В конце главы предлагается упражнение. Разделить лист на две части. В правой выписать угасающие технологии, а слева набирающие силу, недавно заявившие о себе. Когда все будет готово, отметить то, с чем знаком наиболее полно. Затем то, в чем есть опыт, но недостаточный.
Дальше Фаулер предлагает оценить получившийся результат: чего больше? прослеживается ли тенденция?
Совет 2. Предложение и спрос
Тут уже все понятно из названия главы, при этом нужно сделать поправку, что речь идет в первую очередь об американском рынке. Говорится о необходимом уровне для вхождения в профессию.
Рассматривается аутсорс и уровень владения навыками. Предлагается такая стратегия:
Смысл выбрать для приложения своих усилий область рынка труда, спрос на которую невысок. Это может прозвучать абсурдно, но если тебя беспокоит заполнение рабочих мест иностранной рабочей силой, достаточно избегать областей, на которых специализируются офшорные компании. Они выполняют работы, пользующиеся высоким спросом.
В конце главы предлагается исследовать рынок труда.
Совет 3. Умения писать код мало
Фаулер советует: чтобы стать незаменимым специалистом, нужно иметь хорошее представление об особенностях бизнеса, с которым связана деятельность. Чтобы разобраться в этом предлагается почитать отраслевой журнал. Понять суть проблем бизнеса, с которыми ему приходится бороться, как он хочет их решить.
Совет 4. Будь худшим
Глава начинается с цитаты Пэта Метени: "В какой бы группе ты ни был, всегда будь в ней худшим".
По сути дела это все что можно вынести из этой главы: играя с лучшими — сам тянешься к их уровню. Если, кончено, они тебе не наваляют за косорукость.
Совет 5. Инвестируй в интеллект
Фаулер советует изменять тип
Совет 6. Не слушай родителей
Рассматриваются старые походы к карьере:
- «Вечная» работа в одной компании.
- Работа только ради работы.
В конце главы предлагается вспомнить принятые карьерные решения. После чего оценить их. Насколько этим конкретным решением управлял страх? Какое решение было бы, если бы страха не было?
Совет 7. Будь универсалом
Если ты хочешь оказаться последним человеком в списке на увольнение, имеет смысл стать полезным в как можно большем числе случаев.
Автор предлагает как минимум пять «степеней свободы» и не ограничивать себя конкретной технологией или ролью. А также не ограничиваться и максимально расширять свои знания в направлениях:
- Конкретная должность. Умение не ограничиваться четко своим сектором, а, если это потребуется, поддерживать соседние и помочь им своими знаниями.
- Платформа/ОС.
- Базы данных.
- Системное администрирование.
- Бизнес. Об этом уже говорилось в главе 3.
Совет 8. Будь специалистом
Суть главы — максимально изучить все, что можно по своему направлению. Фаулер рассказывает историю. Он нанимал людей, и они не могли ответить на вопрос:
Как бы вы написали на Java программу, которая уронит виртуальную
машину Java?» А в ответ — тишина… «Эй, как вас там? Ау!
Совет 9. Не клади все свои яйца в чужую корзину
Тут нет смысла что-то писать. В названии главы и отрывке вся суть:
Ставить во главу угла производителей не имеет смысла еще и потому, что детали реализации программного обеспечения, как правило, держатся в секрете. Ты можешь изучать патентованное программное обеспечение ровно до границы, за которой начинается сервисное обслуживание. Это искусственный барьер, призванный не дать пользователям самостоятельно разобраться с возникающими проблемами.
Поэтому, хотя целенаправленные инвестиции в конкретную технологию являются плохой идеей, если по каким-то причинам ты вынужден так поступать, постарайся выбрать вариант с открытым исходным кодом. Даже если ты не можешь или не хочешь использовать подобное решение на рабочем месте, пусть оно станет платформой для глубокого погружения в технологию.
В конце рекомендуется:
Начни небольшой проект создав две реализации. Сначала используй внутреннюю технологию фирмы, в которой ты работаешь, а затем конкурирующую технологию, постаравшись по возможности воспроизвести ее особенности
Совет 10. Полюби или уходи
Вся суть главы в одном предложении: если ты хочешь достичь высот в своей работе, ты должен быть влюблен в нее.
На этом глава 10, а заодно и часть 1 закончились.
Автор: AGregory