Перевод статьи Нолана Грейса «How to read your way to becoming a better developer».
Если вы как программист хотите стать лучше, вам помогут две вещи: написание кода и чтение всего подряд!
Я уже довольно длительное время занимаюсь программированием, так что у меня была возможность опробовать обучение в разных условиях. Я разбирался с возникавшими проблемами самостоятельно, работал в командах. У меня даже была возможность учиться в университете. С учетом всего моего опыта я понял, что для программиста лучшим способом улучшить свои знания и навыки является написание кода и чтение! Как только вы прекращаете делать одно или другое, прогресс ваших навыков замедляется.
Очень многие люди настолько увлекаются написанием кода, что забывают о должной осмотрительности. Программирование это интересное занятие, потому я тоже (каюсь!) часто игнорирую документацию. Но пользуетесь вы старыми инструментами или новыми – все равно остается многое для изучения. Вы сэкономите много времени и сил, если заранее позаботитесь о хорошем фундаменте прежде чем браться за новый инструмент.
Я хочу предложить вам к прочтению свои любимые ресурсы по технической тематике. Надеюсь, они вам помогут.
Официальная документация
Когда вы уже определились, с каким инструментом хотите работать, лучшее, с чего можно начать, – изучение официальной документации. Начиная работать с чем-то новым, постарайтесь удержаться и не рваться сразу в бой: загляните сперва в документацию.
Это не только поможет вам стать лучшим программистом, чем вы были до того, но и сохранит ваше время и силы. Читая, вы не только изучаете какую-то конкретную тему. Вы расширяете свое понимание сферы разработки ПО в целом, а это облегчает усвоение следующих тем.
Как минимум, прочтите руководство «С чего начать?» и поработайте с приведенными примерами. Прежде чем идти дальше, убедитесь, что вы поняли простые составляющие нового языка или фреймворка.
Многие разработчики не любят писать документацию, так если вы нашли качественную информацию, это значит, что писавший счел ее нужной и полезной.
Статьи онлайн
Другие источники, где стоит искать актуальную информацию по техническим темам, это онлайн-публикации. Поскольку вы читаете эту статью, я предполагаю, что вы уже открыли для себя Medium (в нашем случае будем считать таким полезным источником Techrocks.ru, – прим. перев.). Medium – мой самый любимый ресурс статей и блогов.
Medium полон информации по широкому спектру тем, как технических, так и не-технических. Если вас интересует какой-то вопрос, велика вероятность, что вы найдете здесь статьи по этой теме.
Что еще хочется сказать в пользу Medium, так это то, что такое разнообразие тем не снижает качество и глубину подачи информации. Такое случается с другими информационными ресурсами, которые стремятся охватить более широкую аудиторию. Платформа Medium легка в использовании, что делает ее прекрасным местом как для поиска качественной информации, так и для публикации вашего собственного контента.
Обратите внимание на два моих любимых источника статей: freeCodeCamp и HackerNoon.
Следующий ресурс, о котором мне хотелось бы упомянуть, это Hacker News. Это сайт, управляемый Y Combinator, инкубатором стартапов. Hacker news позволяет пользователям публиковать ссылки на технический контент, а сообщество может голосовать «за» и «против» этих публикаций в зависимости от их качества.
Hacker News во многом похож на Reddit, но он не так подавляет. Там только одна лента с информацией, которую курирует сообщество. Это облегчает просмотр материала и чтение статей по утрам.
Книги по программированию
Для меня самый лучший источник знаний о новых вещах – это книги по программированию!
Особенно я люблю издательства Manning Publishing and O’Reilly Publishing. Обе компании выпускают огромное количество книг по тысячам тем.
С этими двумя издательствами вы можете быть спокойны: вы найдете любую нужную вам информацию, от новейших фреймворков нейронных сетей до помощи в работе с устаревшими системами.
Поделюсь с вами знанием, которое мне тяжело далось. Если вы предпочитаете читать бумажные книги, я советую вам научиться любить электронные. По программированию существует слишком много книг, которые слишком часто обновляются.
Я был ярым сторонником бумажных книг и собрал собственную внушительную коллекцию. Это было прекрасно, аж пока мне не пришлось переезжать! После перетаскивания коробок с тяжелыми книгами я полюбил читать книги на своем iPad. Так что учитесь на моем опыте и подписывайтесь на Safari Books Online.
Safari books online это сервис с ежемесячной подпиской, дающий вам доступ к большему количеству технических книг, чем вы сможете когда-либо прочесть. Сейчас этот сервис принадлежит O’Reilly Publishing, но они предлагают и книги Manning Publishing, а также многих других издательств. Подписка Safari Books Online стала одним из лучших вложений денег, которое я когда-либо делал.
Научные статьи
А теперь об одном из самых пугающих источников информации. Чтение научных статей может казаться устрашающим занятием, но оно стоит вашего времени. Мир полон талантливых людей. Так почему бы не воспользоваться работами самых лучших и ярких?
Возможно, вы думаете, что научные статьи слишком запутаны и тяжело читаются. Ну, простой поиск в Google показывает, что вы не одиноки в таком образе мыслей.
Поначалу они действительно могут пугать, но пускай вас это не останавливает.
Не спешите и следуйте этим советам:
- Почитайте краткий обзор.
- Посмотрите диаграммы.
- Почитайте выводы.
- Решите, стоит ли читать эту статью.
Когда попадается что-то непонятное, запишите это или поищите пояснение дальше по тексту. Со временем чтение научных статей будет становиться все легче. Если встречаете важную ссылку на другую работу, остановитесь и пройдите по ней. Иногда бывает полезно прочесть сначала другую статью или по крайней мере понять, о чем там говорится.
Искать хорошие научные статьи лучше всего в документации к инструментам. Множество приложений и фреймворков зарождались как часть научных проектов какого-нибудь университета или компании. Например, Apache Spark вышел из AmpLab Калифорнийского университета в Беркли. Вы можете найти больше информации об этой разработке и истории Apache Spark на сайте AmpLab или в официальной документации Apache Spark.
В поиске научных статей можно также обратиться к Google Scholar или arXiv. Оба сайта позволяют поиск и чтение доступных научных статей.
Если хотите найти сервис для более серьезной работы, возможно, стоит подумать о подписке на DeepDyve.
DeepDyve это доступный по подписке сервис, дающий вам доступ к тысячам научных журналов. Он даже может рекомендовать вам статьи, основываясь на вашей читательской истории. Этот сервис чрезвычайно полезен, когда вы начинаете читать научные статьи.
Чужой код
Последнее по порядку, но не по значению. Читайте код, написанный другими людьми. Идите на GitHub. Найдите подходящие проекты и взгляните, как программируют другие.
Просматривая код реального проекта, вы посмотрите на программирование под другим углом, отличным от того, что основывается на книгах и научных статьях. Иногда программирование может быть беспорядочным. Использование инструмента в идеальном мире может отличаться от использования его в мире реальном. Так что взглянуть на процесс глазами человека, который уже этот инструмент опробовал, всегда полезно.
Прежде чем закончить я дам вам еще один совет. Чем больше вы учитесь, тем более тупыми кажетесь себе. Вы начинаете понимать, сколь многого еще не знаете. Порадуйтесь этому чувству и считайте его своим достижением. Учите новые вещи постепенно, по одной за раз. Смиритесь с тем, что вы никогда не будете знать всего. Надейтесь на помощь окружающих и старайтесь научиться как можно большему, чтобы и окружающие могли рассчитывать на вас.
Если у вас есть другие источники информации, которые помогают вам в учебе, поделитесь ими в комментариях!
[customscript]techrocks_custom_after_post_html[/customscript]
[customscript]techrocks_custom_script[/customscript]