Как стать программистом, если вы ничего не знаете о коде

Итак, первое, что нужно сделать, — найти правильного учителя. Понятно, что вряд ли у вас будет возможность отбросить все дела и посвятить себя исключительно обучению, поэтому стоит выбрать такие курсы, где занятия идут в основном по вечерам или в любое удобное именно для вас время. Совсем идеально, если не нужно будет никуда ехать и можно заниматься прямо из дома. Вариант, сочетающий оба преимущества, — онлайн-курсы.
Какие курсы выбрать
Отличительные черты хороших курсов: они существуют достаточно долгое время, преподают там люди с большим опытом работы в соответствующей области, наконец, вам не только будут давать достаточный объём теории, но и научат применять его на практике. Желательно, чтобы происходило это в условиях, максимально приближенных к реальным.
Рассмотрим конкретный пример — курсы учебного IT-портала GeekBrains, уже знакомого читателям Лайфхакера. Существуют они уже шесть лет. За это время кодить научились более 70 000 человек — показатель довольно внушительный.
Что касается тех, кто непосредственно будет учить, здесь действительно собраны лучшие из лучших. В отборе приняли участие свыше 300 кандидатов, это и преподаватели вузов, и специалисты крупных IT-компаний. В общем, это люди, которые имеют дело с кодом и знают, как рассказать об этом другим, чтобы было понятно.
Переходим к самому интересному. Практика. Её у вас будет в избытке. Программирование — такая сфера, где теория без умения применять её в деле представляет незначительную ценность. Именно поэтому во время обучения вы будете постоянно выполнять задания, много заданий, чтобы полученная на лекциях информация усваивалась максимально эффективно. Предлагаю посмотреть, как это выглядит в действии.
Начинаем с азов
Ну что ж, вы хотите научиться программировать, но слабо представляете, что это вообще такое. Логично, что первым делом стоит изучить основы. У GeekBrains есть для вас пара интересных предложений.
Во-первых, видеокурс «Основы программирования». За 15 занятий вы не только научитесь разбираться в тонкостях операций с различными типами данных и составлять работающие алгоритмы, но даже напишете настоящую игру. Для человека, который вообще не знал, с какой стороны подойти к коду, это вполне достойно, не правда ли? Напоследок вам расскажут, как дальше строить карьеру, и помогут выбрать конкретную область деятельности, которую и стоит осваивать.
Во-вторых, онлайн-курс «Основы программирования» — вариант для тех, кто предпочитает не только получать новую информацию, но и попутно общаться с преподавателем, уточняя сложные моменты. Тут всё предельно понятно и быстро. Общая продолжительность — две недели, за это время состоятся четыре занятия. Вы познакомитесь с фундаментальными основами создания кода, научитесь разрабатывать алгоритмы и узнаете базовую информацию об основных языках программирования. Для начала большего, наверное, и не требуется.
И в том, и в другом случае после прохождения обучения у вас на руках остаются видеозаписи всех занятий и методические материалы. Если вдруг что-то сотрётся из памяти или вам захочется ещё раз прояснить какие-нибудь моменты, всегда можно будет обратиться к конспектам.
Оба курса бесплатны. Получается, что вы можете познакомиться с интересующей сферой не потратив на это ни копейки. Если зацепит, будете учиться дальше, если нет — ну что ж, знания лишними точно не будут. С базовыми знаниями мы разобрались, теперь давайте узнаем, что нужно сделать для того, чтобы освоить две популярные и очень перспективные профессии.
Веб-разработчик
Особенность GeekBrains в том, что серьёзные профессиональные курсы доступны для новичков. Совсем не обязательно даже изучать предварительно основы программирования — грамотно выстроенная система обучения поможет с нуля вникнуть в детали будущей профессии. Вот, например, профессиональный курс «Веб-разработчик» — вполне достойный выбор.
Обучение займёт 10 месяцев. Да, это дело серьёзное, поэтому придётся потратить довольно много времени. Впрочем, старания окупятся сторицей — средняя зарплата разработчика в Москве составляет 74 000 рублей. Бывает, разумеется, и больше, тут всё зависит от того, насколько кандидат квалифицирован. В ваших силах сделать себя максимально привлекательным в глазах работодателя.
Начнёте вы с изучения основ создания сайтов. HTML и CSS — вот ваши друзья в первый месяц обучения. Два раза в неделю вы будете учиться создавать разметку сайта по всем правилам, осваивать блочную вёрстку и работать с макетом дизайна. Затем вы постепенно познакомитесь с PHP и JavaScript, узнаете, что такое Node.js и векторная графика, а на последнем занятии создадите консольное приложение.
Вот полный перечень курсов, входящих в программу:
- HTML/CSS — основы создания сайтов.
- PHP. Уровень 1 — основы веб-разработки.
- PHP. Уровень 2 — профессиональная веб-разработка.
- JavaScript — интерактивные веб-приложения.
- Node.js — серверное программирование на JavaScript.
- AngularJS/D3.js — векторная графика в одностраничных веб-приложениях.
- YII framework — профессиональная разработка.
В финале вас ждёт самое интересное — стажировка. Да, все студенты профессии в обязательном порядке получают возможность два месяца поработать в одной из крупных IT-компаний-партнёров GeekBrains или даже в самом GeekBrains. Проект «IT-инкубатор», который недавно анонсировали на площадке, поможет ещё и найти команду под реализацию собственной идеи. Лучшего места для того, чтобы с головой окунуться в будущую профессию, не найти, ведь в окружении профессионалов волей-неволей приходится расти над собой.
Мобильный разработчик
Ещё одна профессия будущего связана с созданием мобильных приложений. Изучите сейчас Android и iOS — без работы в обозримой перспективе точно не останетесь. Профессиональный курс «Разработчик мобильных приложений» поможет вам быстрее разобраться с теорией и практикой.
Обучение длится 11 месяцев, а средняя зарплата в этой сфере составляет 130 000 рублей. Соотношение усилий и результата говорит само за себя — оно того однозначно стоит. В конце концов, стоимость обучения вы можете окупить в течение всего одного месяца работы.
Приготовьтесь, будет жарко, ведь предстоит освоить очень много нового материала. Начинаем с Java — от знакомства до написания сетевого чата. Далее по плану Android: общие сведения и архитектура платформы, разработка пользовательского интерфейса и отладка приложений. Затем открываем для себя мир Objective C — от базовых понятий и до тонкостей управления процессом выполнения программы и проектирования интерфейса. На десерт у нас Swift: синтаксис, основные концепции, подходы к созданию игр и разработка собственного приложения.
Программа обучения состоит из следующих блоков:
- Java. Уровень 0 — основы объектно-ориентированного программирования на Java за две недели.
- Java. Уровень 1 — базовый курс.
- Android. Уровень 1 — разработка под мобильные устройства.
- Android. Уровень 2 — профессиональная разработка приложений.
- Objective C. Уровень 1 — программирование под iPhone и iPad.
- Objective C. Уровень 2 — профессиональная разработка приложений и игр.
- Swift — современные технологии программирования под Apple.
Затем… барабанная дробь… стажировка! По её итогам у вас будет опыт в создании полноценного проекта, успешно закреплённые навыки и добротное портфолио, которое не стыдно показать в приличном обществе.
Итоги
Понятно, что хочется узнать, что думают те, кто прошёл обучение: всё ли понравилось, не были ли лекции оторваны от жизни, не занудничал ли преподаватель. Пожалуйста, вот пара отзывов.
Я отучился на web-разработчика в GeekBrains, а сейчас прохожу стажировку здесь же. По роду деятельности я инженер, работаю в электроизмерительной лаборатории. А программированием я решил заняться потому, что очень люблю создавать новое. Особо хочу сказать о стажировке, которую вёл Евгений Картавец. Хороший преподаватель, доступно объяснял и помогал с решением вопросов. Мы занимались разработкой сайта компании, которая выпустила продукт Crawler. Это был мой первый опыт работы в команде, в результате которого мне удалось освоить основные моменты командной разработки. Стажировку я проходил удалённо. GeekBrains были эффективно организованы командные каналы для общения и решения проблем. В итоге я продвинулся дальше в изучении своего языка, PHP, и уже получил несколько заказов на фрилансе. Хочу на постоянной основе работать в штате, для чего и собираюсь развиваться дальше. Новичкам советую ничего не бояться и идти к поставленным целям до конца!
В конце ноября 2015 года я закончил обучение в GeekBrains. Изучал я iOS programming. До этого момента работал в технической поддержке интернет-провайдера. Хотел сменить работу, а iOS-программистом мечтал стать всегда.
GeekBrains мне посоветовал друг с работы, который проходил бесплатные курсы на портале. Я сразу определился с направлением, а после обучения начал удалённо проходить стажировку, где работал над совместным проектом и осваивал такие инструменты, как GIT, Trello и прочие.
Впрочем, необходимость в стажировке довольно быстро отпала, ведь ещё во время её прохождения я устроился на долгожданную работу iOS-программистом. Сейчас я junior iOS developer. А начинающим разработчикам я рекомендую всегда начинать с теории и никогда не спешить.
Удачи!
Другие мнения студентов о курсах «Веб-разработчик» и «Разработчик мобильных приложений» вы можете найти на сайте GeekBrains, там всё предельно честно: отзывы не модерируются, поэтому люди что думают, то и пишут.
Напоследок хочу сказать одно: не бойтесь трудностей. Сегодня вы закладываете фундамент для своего успеха в будущем, поэтому смело беритесь за изучение нового и не опасайтесь, что не получится. С хорошим помощником вам по плечу любая задача.