Книга разработчика на каждый день
Шрифт:
Изучая сферического коня в вакууме, нужно как минимум знать, что такое конь, сфера и вакуум, чтобы понимать, о чем вообще идет речь. Недостаток понимания хотя бы одного из понятий препятствует пониманию контекста и вопроса в целом. Поэтому, прежде чем продолжать, однозначно стоит отвлечься, чтобы в первую очередь закрыть дыры в имеющихся знаниях. При этом решением может быть, как поиск простого односложного ответа, так и изучение дополнительной темы. В конечном счете, выбор остается за вами. Eсли же смежная тема, как таковая, не особо важна, и Вы не очень хотите отвлекаться от основного вопроса, можете ее пропустить, как только проясните интересующие вас моменты. Это также вполне себе рабочий вариант.
Возвращаясь
Так вот, вариант этот хорош тем, что учебная программа в каком-то виде проработана под нужды новичков. Не могу говорить за всех, но предполагается, что учебный материал уже адаптирован, все необходимое найдено и включено в учебный план, а все лишнее отфильтровано и исключено. То есть после прохождения такого курса программистом Вы скорее всего еще не станете, но будете разбираться в базовых вещах, и сможете наращивать темп на пути к своей цели.
Кроме того, существуют курсы, организуемые IT компаниями, по окончании которых есть шанс трудоустроиться в эту же самую компанию и продолжить обучение на конкретного специалиста. Я бы сказал, это хорошая возможность быстро освоиться в теме с наименьшими трудозатратами на поиск необходимых знаний. К тому же такие курсы обычно бесплатные. К сожалению, немногие компании этим занимаются.
В довесок к посещению курсов, да и без них тоже, будет большим преимуществом, если у вас есть товарищ или знакомый, разбирающийся в теме, который мог бы вам быстро что-то растолковать или разъяснить сложные для понимания моменты, обратить ваше внимание на важные нюансы и дать дельный совет.
Вышеописанная практика широко применяется в IT сфере и именуется менторингом (хотя и применима в любой другой отрасли). Соответственно ментор – это как раз тот самый человек, который вас направляет и ведет. Ментор, к слову, не является преподавателем. По большому счету, он не обязан вас учить. Это скорее исключение из правил. Учиться Вы должны самостоятельно. Задача ментора – помочь определиться, на каком этапе Вы находитесь, выявить пробелы в знаниях и помочь их устранить. Если же принимать во внимание других товарищей по учебе, тут Вы вольны научать друг друга сколько влезет.
Какой бы путь обучения Вы не выбрали: очный, онлайн, самостоятельный или еще какой-то, – в любом случае придется обращаться за информацией к интернет ресурсам.
Особенно мне пришелся по вкусу такой сайт, как www.tutorialspoint.com. Скажу о нем всего пару слов.
Здесь собраны обучающие материалы касательно множества современных популярных технологий. По сути tutorialspoint предоставляет документацию, адаптированную под новичков. Материал написан очень простым языком, последователен, логичен, разобран на достаточном для использования конкретной технологии уровне. Думаю, что не сильно совру, если скажу, что одного этого источника может быть вполне достаточно, чтобы овладеть большей частью, необходимых для джуниора знаний. Единственная трудность, с которой можно столкнуться при работе с этим сайтом, это незнание английского языка. В остальном ресурс просто изумительный.
Очень часто поиски решения определенных задач ведут на один из крупнейших IT форумов – stackoverflow.com. Здесь разработчики всего мира обсуждают любые вопросы, связанные с программированием. Это настоящий кладезь опыта решения реальных проблем и передовых знаний. Если, работая с какой-либо технологией, Вы столкнулись с трудностями, скорее всего кто-то уже изобрел
велосипед до вас или, по крайней мере, обсуждал эту проблему. В худшем случае всегда можно задать вопрос и попросить о помощи лично. Ресурс также преимущественно на английском, хотя есть и поддомен сугубо для русскоговорящих пользователей – ru.stackoverflow.com.Также хотелось бы отметить несколько толковых блогов. Например, habr.com, mkyong.com, блог сурового челябинского программиста samolisov.blogspot.com. На этих сайтах можно найти кучу практических примеров использования различных библиотек. Кроме всего прочего, только здесь я смог найти непростые для понимания темы, досконально и глубоко разобранные, как ни в одном другом источнике.
Еще одним особенно полезным типом ресурсов, которые хотелось бы упомянуть, являются так называемые “песочницы”. Песочница представляет собой реализацию той или иной технологии в виде онлайн терминала или командной строки. Это значит, что можно прямо в браузере выполнить код, написанный на каком-либо языке (например, Java, Python, SQL, JavaScript, Go и многие другие) и получить результат выполнения, не разворачивая дополнительного программного обеспечения на локальном компьютере. Тот же tutorialspoint предоставляет внушительный список различных песочниц.
Плюсы такого подхода очевидны. Можно быстро проверить, как работают несколько строк кода. Можно поиграть с незнакомыми языками, не тратясь на настройку окружения. Можно моделировать решения задач и даже делиться ими с другими людьми. Одним словом, песочница – вещь удобная и полезная.
В дополнение к перечисленным источникам нужно озвучить платформы, ориентированные непосредственно на учебу и самообразование. Многие из них также предлагают множество курсов по самым разнообразным тематикам. Главная их цель – помочь пользователям организовать свой учебный процесс, предоставляя определенный набор инструментов.
У таких вот платформ очень интересная задумка. Однако, попробовав одну из них, я быстро утратил интерес к занятиям, построенным на их основе. Во-первых, я и без дополнительной помощи могу самоорганизоваться. Во-вторых, платформа не помогла мне с поиском информации. Таким образом, лично для меня такой подход показался не особо эффективным. Тем не менее, не стоит сбрасывать его со счетов. Если требуется решить проблему организации процесса самостоятельного обучения, такая практика, скорее всего, будет весьма полезной. Пусть и не для всех.
Конечно же, это далеко не весь список ресурсов, которые могут быть полезны. Их сотни и тысячи. Это не значит, что сайты стоит разделять на плохие и хорошие. Зачастую очень хорошие ответы спрятаны в совершенно разных местах. Ответ на один вопрос размещен на одном сайте, другой ответ – на каком-то еще. Просто есть ресурсы, на которых концентрация хороших ответов выше, чем в среднем по больнице.
Не хочу говорить ничего плохого в чей-то адрес, просто приведу забавный пример. Очень часто я натыкался на один и тот же форум в поисках разного рода информации. Я переходил по ссылкам на него десятки раз и ни разу не получал хоть какого-то вразумительного ответа на мои вопросы. Символично, что в оформлении этого форума размещено чучело дохлого оленя или лося с роящимися вокруг него насекомыми.
Со временем, закрывая для себя очередную тему, узнавая что-то новое, должен наступить момент, когда Вы действительно знаете и понимаете, что готовы. Готовы к собеседованию. Все верно, рано или поздно придется пройти техническое интервью, чтобы проверить себя, понять, где Вы находитесь, и туда ли вообще идете, да и банально устроиться на работу. В том случае, если Вы уже работаете, скорее всего, вас все равно ждет какая-либо запланированная беседа, будь то собеседование на очередную должность, вступительное интервью на проект, плановая аттестация или что-то еще.