2013-08-15
Мы живем в потрясающее время. Никогда прежде возможности для самообразования не были так доступны. А площадки для обучения переместились из школьных кабинетов и лекториев в блоги, веб-касты, видео-тренинги и интерактивные форумы. Уж с таким инструментарием стыдно не учиться новому. Но увы, такое обилие ресурсов вынуждает нас тратить большое количество времени на фильтрацию информации.
Как же заставить себя учиться новому?
Эти советы были написаны для разработчиков, но могут пригодиться и во многих других сферах.
- Преодолеть лень
Изучение чего-либо нового всегда начинается с преодоления рутинного настроения, мешающего сделать первый шаг. Так бывает, когда вы хотите переключить канал телевидения, но не делаете этого, потому что до пульта не дотянуться. К счастью, есть несколько простых способов для вдохновения и мотивации. Самый простой из них – «маленькие шажки». Не нужно брать препятствие нахрапом, гораздо лучше готовиться к заданию небольшими этапами, начинать потихоньку. Если вам нужно взять пульт, стоит сначала размять пальцы, потом слегка наклониться вперед, и только потом уже встать. Шаг за шагом вы преодолеете свою лень, и цель не будет казаться настолько неприступной.
- Смотрите на профессионалов
Первым делом определитесь, что именно вы хотите изучить. Это может оказаться чем угодно из того, что вас когда-либо интересовало. Очень важно иметь серьезную склонность к изучаемому предмету, именно она будет играть роль топлива первое время. Как только вы определились с предметом изучения, будь то язык программирования, фреймворк или инструмент, необходимо провести поиск соответствующих сообществ. Где угодно – на YouTube, Vimeo, HackerNews, блогах или даже в Twitter. Просмотр того, что сделали другие люди, даст вам уверенность и в собственных силах.
- Войдите в поток информации
Как только вы убедитесь в своих силах, пора превращаться в губку и начинать впитывать в себя знания. Спросите у Google, какие пособия для начинающих он знает. На StackOverflow есть множество ссылок на ресурсы, которые могут вам помочь. Русскоязычная версия StackOverflow:#ХэшКод. (спасибо Rom4eg). Можно спросить у Quora, она вам подскажет, что почитать и посмотреть.
- Смотрите и слушайте
Погружаясь всё глубже в океан знаний, вы можете захотеть попробовать новые формы информации – подкасты и скринкасты. На YouTube есть канал разработчиков Google, а на Net.tuts – огромное количество онлайн-курсов для разработчиков PHP и JavaScript. Ещё есть CodeCademy и CodeSchool.
- Время действовать
Итак, вы прочли бессметное число учебных пособий, посмотрели тонны видео, и теперь гораздо лучше понимаете технологию, которую желаете освоить. А что дальше? Пора проверить свои знания. Лучший способ научиться чему-нибудь – поробовать что-нибудь сделать.
Выберите для себя проект, который вы можете воплотить с помощью изучаемой технологии. Определите спектр простых функций и реализуйте их. Скорее всего, в процессе реализации вы столкнетесь с проблемами. Как только произойдет первый сбой, попробуйте найти решение самостоятельно (с помощью Google, разумеется). Именно сейчас вы начинаете путь эксперта в данной технологии. Чем больше будет камней и препятствий на вашем пути, тем мудрее вы будете в итоге. Говорят, «мудрецами становятся те, кто совершил самые глупые ошибки». Именно такие люди пробуют нечто дикое и несуразное и выходят за пределы технологии. В результате они приобретают глубокое понимание принципов её работы. Так сила Джедая приходит к ним.
И к вам придёт обязательно.
- Блоггинг
В своём путешествии очень полезно записывать свои маленькие победы (или неудачи). Блоги – это наиболее популярная площадка для выражения своих мыслей в техническом сообществе. Когда вы записываете всё, чему научились за определенный период, ваши мысли становятся более чёткими и структурированными. Кроме того, кто знает – вдруг, читая ваш блог, кто-то другой учится у вас.
Со временем вы сможете создавать скринкасты, учиться по которым так любят начинающие.
А ещё блоги помогут вам улучшить ваши коммуникативные навыки, которые не менее важны, чем изучаемая технология.
- Почувствуйте волну
Социальные сети стали универсальным способом оставаться на связи и узнавать новое. Facebook и Twitter хороши для поверхностного взгляда на информацию. На StackOverflow можно находить, читать, комментировать самые разные темы (Категории Most Voted и Featured – лучшие кандидаты к просмотру для начала). А на той же Quora по определенным запросам можно наткнуться на весьма забавные вещи. GitHub тоже обязателен к изучению и поиску горячих тем.
- Встречи и конференции
Социальные сети – это прекрасно, но ничто не заменит настоящего человеческого контакта. Скорее всего, вы найдете группу или сообщество для встреч и мероприятий в вашем городе. На таких профессиональных встречах вы узнаете об интересных проектах, над которыми работают другие люди, а, может, найдёте решение давней проблемы.
- GitHub
GitHub – это основная площадка мировых open-source проектов. Это сокровищница знаний и творческих подходов, выраженных в виде кода. Как только достаточно освоитесь в определенной технологии, начните искать интересные проекты на GitHub. Читайте исходный код. Читайте столько, сколько сможете. Так вы научитесь ещё многим вещам:
Как организовать большие проекты;
Какие интересные библиотеки используются в проектах;
Какие бывают паттерны и общий дизайн;
Какой должна быть документация проекта;
Какие могут быть паттерны тестирования;
Какие могут быть решения у неординарных проблем.
Всё это великолепие ждет вас там. Для приобретения этих знаний нужно совсем немного: любопытство.
- Концентрированное обучение
Если вам кажется, что вышеописанный процесс отнимает слишком много времени, можете попробовать скоростной вариант. Скорее всего, вы много раз о программах «Изучите что-нибудь там за 24 часа», но это здесь ни при чём. Вот за пару недель – вполне реально. Если вам это кажется разумным, можете попробовать прибегнуть к книгам Seven Languages in Seven Weeks или Seven Databases in Seven Weeks. Несмотря на то, что эти книги направлены на изучение языков и баз данных, вы можете применить их подход и к другим технологиям.
Еще есть вариант изучения языка «аппаратным способом». Основа этого подхода – утверждение, что невозможно овладеть навыком без ежедневной практики. Поэтому для достижения результата вам нужно выполнять упражнение за упражнением.
Развиваем правильные навыки
Программирование – это в основном левополушарная деятельность. В ней задействованы аналитические силы мозга, ищущие пошаговые возможности для решения проблем. Чтобы задействовать и правое полушарие, выберите себе творческое занятие по душе, например, рисование, 3D-моделирование, оригами, игру на музыкальном инструменте, да даже изготовление фото-книг для своих близких. На самом деле программирование очень часто требует творческого подхода. Если вы когда-либо находили решение проблемы во сне – вы понимаете, что имеется в виду. Всё потому, что ваше правое полушарие обрабатывает информацию совсем другим способом, и агрегирует идеи со всех возможных источников.
В качестве итога
Приобретение новых навыков – всегда интересно. Это новый опыт, который положительно влияет на ваше мышление. Но для начала преодолейте свою лень. После этого начинайте путешествие в Интернет за знаниями.
Мы надеемся, что вы поможете нам сделать статью лучше, добавив в комментариях русскоязычные ресурсы, которые помогали вам в освоении новых знаний.
Перевод: Люся Ширшова. По материалам Net.Tuts.