Как стать программистом с нуля самостоятельно

С чего начать учится программированию с нуля чайнику?
Такой вопрос поступил недавно от одного из подписчиков рубрики «Программирование с нуля«.  Давайте разберёмся, можно ли стать программистом с нуля самостоятельно и какие варианты есть для того, чтобы освоить программирование самостоятельно и начать зарабатывать на этом.

Постарался дать самый лучший — на мой взгляд — путь. Предупреждаю — он не из легких!

Скажу сразу — если вы решите изучать программирование только самостоятельно, не вкладывая денег — придется потратить больше времени. Рассчитывайте на освоение новой специальности примерно через год, если занимаетесь обучением параллельно с другой работой.

Про альтернативный — быстрый путь — я расскажу к конце статьи.

Каким программистом стать?

Первоначально нужно решить, какое направление программирования вас интересует. Если речь идет о изучении разработки с нуля и вы хотите начать скоро зарабатывать на этом, то на мой взгляд варианта два: разработка для мобильных устройств или веб-разработка.

Лучший выбор в такой ситуации — на мой взгляд — начать изучать веб-разработку. Здесь ниже порог входа для новичков и есть возможность раньше начать выполнять несложные заказы.

Поэтому дальше я буду рассказывать о том, как самостоятельно изучить веб-разработку и начать программировать под веб.

Как самостоятельно стать программистом с нуля

Что нужно чтобы стать программистом

Если бы я начинал с нуля изучать веб-разработку самостоятельно (понимая, что без вложения денег это более долгий путь), то сам себе я бы порекомендовал такой путь:

1. Разобраться в HTML и CSS

Хороший курс для базового освоения HTML и CSS: https://webref.ru/layout/learn-html-css

После этого стоит посмотреть на возможности Bootstrap, который стал стандартом де-факто для ускоренной разработки веб-приложений: http://getbootstrap.com/

Этого будет достаточно для следующих шагов.
Возможно на этом этапе вы захотите остановиться и изучить CSS подробнее. Это даст вам возможность работать верстальщиком — человеком, который делает из дизайна статическую HTML страницу, после чего программист ее оживляет, реализуя логику проекта.

На этом тоже можно зарабатывать — как на фрилансе, так и работая в ИТ-компании, которая специализируется на веб-разработке.

Но раз мы решили стать программистом — двигаемся дальше!

Как изучить программирование с нуля

2. Познакомиться с jQuery

Для этого я рекомендую книгу «jQuery — учебник для начинающих»:
http://anton.shevchuk.name/jquery-book/

Если понравилось — можно продолжить разбираться с frontend и начать изучать Javascript.

Если следом пойдет https://angularjs.org/ или http://backbonejs.org/ — то это путь во фронт-енд разработку. Хорошая специальность, тем более, что такие знания пригодятся любому программисту, который выбрал веб-разработку.

Мой совет — пока остановиться на jQuery и двигаться дальше.

3. Освоить серверный язык программирования

Тут выбор большой. Самые перспективные языки программирования — Ruby, Java, Python, Node.JS (Javascript для сервера).

Самым простым языком программирования для начинающего будет Python. Если вы изучите Python, а затем фреймворк Django для веб-разработки — у вас будет все необходимое для самостоятельной реализации довольно сложных проектов.

Хороший вариант — язык программирования Python и Django

Плюс — Python и Django научат вас «правильному» программированию. Минус — они не так популярны, поэтому начинающему будет сложнее найти заказы. Хотя это меняется, а хорошие специалисты в Python одни из самых высокооплачиваемых программистов. Python не только простой и понятный для начинающих программистов язык программирования, но и используется во многих крупных компаниях.

Если готовы найти себе ментора или пойти на курсы по программированию и потратить дополнительное время на свое развитие, чтобы потом продвигаться быстрее — начните с Python.

Для самостоятельного освоения посмотрите:

Язык программирования Python за 10 минут

Язык программирования Python — подробно для начинающих

Среди других материалов рекомендую Learn Python The Hard Way. книгу «Простой Python. Современный стиль программирования». И, конечно The Python 2 Tutorial и The Python 3 Tutorial.

Для Django — https://docs.djangoproject.com/en/1.10/intro/tutorial01/.

Уроки или курс Django на русском — http://itman.in/uroki-django/

Быстрый вариант — PHP и WordPress

Другой путь — начать с PHP и работы с популярными CMS. Если вы изучаете программирование сами и хотите быстро начать работать — начните с PHP.

Многие считают PHP «не совсем настоящим» языком программирования и для этого есть основания. PHP редко используется в крупных веб-приложениях и заточен только для веб — использовать его в других областях не получится.

С другой стороны — PHP лидирует по количеству запущенных в мире сайтов. На нем основаны самые популярные CMS (системы управления сайтами).

Для старта рекомендую книгу: «Изучаем РНР и MySQL» авторов Линн Бейли и Майкл Моррисон

После этого разберитесь с созданием тем под WordPress — это вероятно самая популярная CMS в мире, если оценивать по количеству запущенных сайтов.

Хорошо разобравшись с этим, уже можно найти работу. Под PHP и WordPress очень много сайтов, поэтому работы хватит всем.

Как начать зарабатывать программистом

Многие представляют работу программиста-фрилансера так:

Хочу стать программистом

Или так:

Как стать программистом с нуля

На самом деле это выглядит примерно так:

Программирование для начинающих

Если вы готовы к работе программиста и ищете способ зарабатывать — добро пожаловать на фриланс! Фриланс-биржи позволят вам найти простые заказы (возможно почти бесплатно на первых порах) — чтобы получить практику. Как правило, работа в ИТ-компании может быть прибыльнее, если вы просто ищете работу программиста.

Уже после пункта 2 — освоив HTML, CSS и jQuery — можно идти на фриланс биржи и брать несложные заказы, нарабатывая профиль.

Знаете английский? https://www.upwork.com/

Совсем нет, даже со словарем? http://freelance.ru/

К тому времени, когда вы сможете самостоятельно делать сайты, вам будет проще найти клиентов — будут отзывы и опыт.

Быстрый путь в веб-разработчики

Исходя из моего опыта, на самостоятельное изучение программирования уйдет от 6 до 12 месяцев, при этом 6 месяцев — это если вам кто-то помогает.

Чтобы ускорить процесс входа в ИТ — ищите возможность пойти на тренинг (возможно понадобится не один) или найдите человека, который будет заниматься с вами. Реально без человека, который передаст вам свои знания- очень сложно, можно просидеть год за книгами и так и не начать. А со знающим человеком, который может просто рассказать о сложных вещах — намного легче.

В свое время я выбрал путь входа через тренинг. При том, что я довольно много знал о разработке, это сэкономило мне примерно полгода.

Обобщив свой опыт я понял, что самый быстрый вариант — начать «с конца». Так появился курс программирования для начинающих, которые серьезно приняли решение начать карьеру программиста, и ищут оптимальный путь.

Коротко — мы начинаем с создания полноценного проекта на Python и Django, в процессе работы осваивая необходимую базу HTML и язык программирования.  На все уходит 2-2,5 месяца, если у вас уже есть опыт, и 3-4 месяца, если начать с нуля. За это время можно реально получить навык программирования, убрать страх «я не смогу» и разобраться с направлениями и необходимой базой для веб-разработки.

Конечно, при таком подходе возникает много вопросов, поэтому самостоятельно я его не рекомендую — вам нужен человек, который сможет вас провести «за руку».

Подробнее напишу об этом подходе в следующий — как он работает и почему экономит время, почему начать стоит именно с Django и Python.

Учиться на программиста

В любом случае, будут вопросы — пишите!

Как стать программистом с нуля самостоятельно: 32 комментария

  1. Первый родители-программисты, которые всему научили своих детей. Таким детям даже не нужно идти в университет Как вообще такой бред может в голову прийти? нет слов!

    1. Это не бред, у меня есть наглядный пример. Другу, отличный программист, много зарабатывает, вышки нет, родители программисты.

  2. Допустим, что вы разобрались с тем, что такое программирование и каким программистом вы хотите стать.

  3. Статья очень интересная, спасибо. Как найти наставника чтобы начать с нуля. Спасибо за ответ.

    1. Жамшид, чтобы найти наставника нужно в первую очередь общаться и спрашивать об этом людей.
      И если вы найдете такого человека — расчитывайте на необходимость много работать самостоятельно и оплатить работу вашего наставника, даже если он не просит об этом.

      Я беру 2-3 людей в месяц для индивидуальной работы, если они готовы серьезно заниматься и реализовать проект под моим руководством.

    1. Дарья, я сейчас занимаюсь только индивидуально. Час занятия стоит $30.
      Курс веб-разработки на Django и Python — $600. Правда он расчитан на людей, которые уже немного знают HTML и имеют опыт программирования хотя бы на школьном уровне.

      Напишите мне подробнее про ваши цели и опыт — постараюсь подсказать, с чего лучше начать.

  4. а что делать если я знаю [HTML + CSS + JavaScript(«»)] backend [php+mySQL («15-25%»)] ?
    не подскажете где найти продолжение программирования ;
    Благодарю !

    1. Лучшее развитие вы получите, занимаясь над реальными проектами в ИТ-компании. Попробуйте отправить резюме на junior-разработчика в компании, которые специализируются на PHP и Javascript, ваших знаний должно быть достаточно, если вы можете самостоятельно разработать сайт с помощью перечисленных языков.

  5. Мне всё очень понравилось, спасибо,мне 14 лет и я хочу стать программистом меня это очень интересует,так хочеться чтобы мне кто-то помог бесплатно но к сожалению это платно ,я с детсва проходил игры полностью ,мне очень хочеться стать программистом если что пишите на мою почту вот a414550@gmail.com

  6. Учусь в школе, планирую стать программистом.Подскажите пожалуйста какой-нибудь источник ,благодаря которому можно быстро освоить язык программирования.И еще я бы хотел уточнить разве не Paskal самый простой язык программирования?

    1. Илья, если вы учитесь в школе, не гонитесь за скоростью освоения языка. Поступайте в профильный ВУЗ и параллельно изучайте программирование. Несколько источников перечислены в статье. Вам я также порекомендую Гарвардский курс CS50 — https://www.edx.org/course/introduction-computer-science-harvardx-cs50x

  7. А что делать мне, если я знаю основы РНР, HTML5, CSS-3, Bootstrap 3 есть свой личный сайт?

    1. Реализуйте свои знания :)
      Переговорите со знакомыми, найдите бизнесменов и предложите им создать сайты за минимальные деньги или бесплатно. Зарегистрируйтесь на фриланс-биржах. Выполните несколько проектов, наберитесь опыта — и отправляйте резюме в компании, которые занимаются разработкой на PHP.

  8. Привет! Мне 35 лет. Давно нравится программирование. Но, никак не решался начать изучать. Вот решил стать программистом, хоть это и звучит нереально в моем возрасте. Хочу зарабатывать на этом. Сергей, подскажи пожалуйста с чего мне начать в моем возрасте. Я обучаем. Два высших образования. Владею тремя языками. Буду благодарен ответу и дальнейшему сотрудничеству. Спасибо!

    1. Rustam, легче всего начать зарабатывать сейчас будет на Front-End, вероятно. Но это все равно потребует времени для выхода на нужный уровень.
      Со знанием языков можно попробовать себя на позиции менеджера проектов или Sales в ИТ-компании.
      И параллельно изучать программирование.
      35 лет ни о чем не говорят, было бы желание. Программирование можно освоить в любом возрасте.

  9. Толковая статья для начинающего путь программиста. Благодарность автору :-)

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *