Хотите научиться программировать, но не знаете, с какого языка начать, что читать и в каком порядке двигаться? Это совершенно нормально: информации в интернете слишком много, и новичку трудно понять, за что хвататься. Мы собрали практичный пошаговый план для тех, кто начинает с нуля, — от первой строчки кода до первого проекта в портфолио и откликов на вакансии.

1. Выберите направление

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

НаправлениеЧем занимаетсяС чего начать
FrontendЧасть сайта, которую видит пользователь: страницы, меню, формы, интерактивностьHTML & CSS, затем JavaScript
BackendСерверная часть: базы данных, аккаунты пользователей, API, бизнес-логикаОсновы HTML & CSS, затем PHP, Python или Node.js плюс SQL
Full-stackОбе стороны — от интерфейса до сервераСначала основы frontend, затем один backend-язык

Это решение не на всю жизнь: основы везде одинаковые, и направление можно поменять позже. Главное — не пробовать на старте пять языков одновременно. Полный список наших курсов — в разделах Front End и Back End.

2. Начните с HTML & CSS и одного языка программирования

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

После HTML и CSS выберите один язык программирования и выучите его как следует. Для frontend это JavaScript; для backend — PHP, Python или Node.js. Понятия, которые вы освоите в первом языке, — переменные, условия, циклы, функции, массивы — почти так же работают и в других. Поэтому второй язык даётся заметно легче.

  • Для старта: курс HTML & CSS — семантическая вёрстка, Flexbox, Grid и адаптивный дизайн.
  • Следующий шаг: курс JavaScript — от основ языка до DOM, асинхронного кода и работы с API.
  • Бесплатная документация: MDN Web Docs — один из самых надёжных источников по HTML, CSS и JavaScript.

3. Учитесь не читая, а создавая

Программирование похоже на плавание: сколько бы видео вы ни посмотрели, пока не зайдёте в воду — не поплывёте. После каждой новой темы сразу применяйте её в небольшой задаче. Золотое правило простое: меньше смотрите, больше пишите. Именно поэтому на наших курсах 80% времени отводится практике.

Несколько идей небольших проектов для старта:

  • одностраничный сайт о себе — онлайн-визитка;
  • промостраница для любимого кафе или спортклуба;
  • список задач (to-do list) или калькулятор на JavaScript;
  • страница прогноза погоды, которая берёт данные из открытого API.

Не попадите в «ловушку туториалов»

Самую частую проблему новичков называют tutorial hell: человек заканчивает один курс, начинает следующий, в видео всё кажется понятным, а перед пустым редактором он не знает, что писать. Выбраться из этой ловушки несложно:

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

4. Сделайте учёбу ежедневной привычкой

Заниматься понемногу каждый день эффективнее, чем раз в неделю просидеть за компьютером целый день. Новые знания закрепляются повторением, а короткие, но регулярные занятия спасают от ощущения «я всё забыл».

  • Выделите для занятий постоянное время — например, рано утром или после работы.
  • Ставьте на каждый день маленькую конкретную цель: «сверстать меню на Flexbox», «повторить методы массивов».
  • Коротко записывайте, что узнали, — через несколько недель будет видно, какой путь вы прошли, и это отлично мотивирует.

Чтобы понять, как код работает «изнутри», загляните в наш раздел «Как это работает?» — там 100 бесплатных анимированных уроков. Переменные, циклы, функции, рекурсия, массивы и другие темы по JavaScript, Python и PHP разобраны построчно: видно, какая строка выполняется, что меняется в памяти и что выводится в консоль. Отличное дополнение к ежедневной короткой практике.

5. Освойте Git как можно раньше

Git — система, которая хранит версии вашего кода, а GitHub — платформа, где этот код можно разместить онлайн и показывать другим. Многие откладывают Git «на потом», хотя пользоваться им с первых недель гораздо полезнее:

  • если что-то сломали, можно вернуться к предыдущей рабочей версии кода;
  • все ваши проекты собраны в одном месте — в профиле на GitHub;
  • работодатель видит на GitHub ваш реальный код и то, насколько регулярно вы работаете;
  • работа в команде без Git невозможна — это база, которую ждут от любого разработчика.

Для начала хватит нескольких команд (после того как вы создали репозиторий на GitHub и подключили его к проекту):

git init                          # включить Git в проекте
git add .                         # подготовить изменения к коммиту
git commit -m "Главная страница"  # сохранить версию
git push                          # отправить код на GitHub

Официальная документация и бесплатная книга «Pro Git» доступны на git-scm.com. Если хотите изучить Git системно, наш курс Git & GitHub на практике разбирает терминал, коммиты, ветки, merge и Pull Request.

6. Найдите ментора и сообщество

Учиться в одиночку можно, но так дольше и сложнее. Одну ошибку можно искать часами, а опытный человек заметит её с одного взгляда. Кроме того, ментор подскажет, что стоит учить сейчас, а что можно отложить, — и это экономит массу времени.

  • Ментор проверяет ваш код, объясняет ошибки и показывает следующий шаг.
  • Группа и сообщество мотивируют: вы видите, что другие проходят через те же трудности.
  • Код-ревью учит видеть разницу между кодом, который «просто работает», и хорошим кодом.

В Prowid занятия проходят в живом онлайн-формате, каждый урок длится 80 минут, а после него вы получаете видеозапись. После каждой темы — домашнее задание с подробной обратной связью. Ментор на связи с группой и во время уроков, и между ними — не нужно копить вопросы до следующего занятия.

7. Первый проект в портфолио и отклики на вакансии

Портфолио — это доказательство ваших навыков. Для работодателя открытый код на GitHub и работающий в интернете проект убедительнее, чем фраза «я окончил курс». Несколько советов для первого серьёзного проекта:

  • выберите тему, которая решает реальную задачу: небольшой бизнес знакомых, ваше хобби, простой инструмент на каждый день;
  • доведите проект до конца: мобильная версия, аккуратный дизайн, ссылка, которая открывается в интернете;
  • напишите на GitHub README: что делает проект, на каких технологиях он сделан, как его запустить;
  • держите код чистым — работодатель его тоже прочитает.

Когда начинать откликаться на вакансии?

Не ждите ощущения «я полностью готов» — чаще всего оно так и не приходит. Если большинство пунктов ниже про вас, можно начинать откликаться:

  • вы знаете основы выбранного направления и можете сами с нуля собрать небольшой проект;
  • на GitHub есть несколько завершённых проектов, и вы можете объяснить их код;
  • вы каждый день работаете с Git;
  • у вас есть аккуратное резюме, а в требованиях вакансий большинство слов вам уже знакомо.

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

Коротко: ваш план

  1. Выберите направление и не пытайтесь выучить всё сразу.
  2. Начните с HTML & CSS, затем переходите к одному языку программирования.
  3. Сразу применяйте каждую тему на практике и избегайте «ловушки туториалов».
  4. Занимайтесь каждый день, пусть даже понемногу.
  5. Пользуйтесь Git с первых недель.
  6. Не стесняйтесь просить помощи у ментора и сообщества.
  7. Доведите до конца первый проект и не бойтесь откликаться на вакансии.

Если пока не понимаете, какое направление вам подходит, приходите на бесплатный пробный урок: познакомитесь с преподавателем, увидите, как проходят занятия, проверите свой уровень и получите ответы на вопросы. Никаких обязательств. А если уже решили — начните с курса HTML & CSS: это фундамент веб-разработки.