Как стать программистом? С чего начать? (часть 1)

sergeybr94
5 min readFeb 23, 2021

--

Я рассказываю только о том, как стать WEB-разработчиком. Поэтому, все технологии относятся только к WEB.

Так получилось, что я стал web-разработчиком. И я бы не сказал, что в эту сферу я попал случайно. Вполне осознанно. Но изначально я не знал, к чему это меня приведет, сколько шишек я набью на своем пути и как сильно эта профессия изменит мое восприятие окружающего мира и мою жизнь в целом.

Меня зовут Сергей и я начинаю цикл статей о том, как стать программистом. Здесь я буду рассказывать:

  • Зачем вам это нужно
  • Почему эту профеcсию стоит попробовать каждому
  • Дам базовые понятие, на какие типы делятся программисты
  • С чего стоит начать
  • Покажу план действий при обучении
  • Как не потерять мотивацию
  • Буду давать ссылки на бесплатные курсы
  • Расскажу о своем личном опыте

Зачем вам это нужно?

Я думаю, нет смысла рассказывать обо всем известных фактах про программистов:

  • Они гребут деньги лопатой
  • Работают, где и когда захотят
  • Классные условия работы
  • и т.д.

Если все же хочется знать сколько зарабатывают программисты, то вот вам подробная аналитка за 2020 год от Хабр.

Есть и другие вещи, которые смогут вас убедить начать кодить.

Английский

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

Релокация

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

Планирование

Любой программист должен уметь оценивать задачи (например в часах) и планироваться работу. Вы сможете научиться грамотно подходить к большим задача, дробить их на более мелкие и постепенно выполнять. Это станет образом жизни. Тем самым вы сможете добиваться поставленных целей в своей жизни.

Почему стоит попробовать?

Многие бояться менять свою сферу деятельности на другую. Эти страхи бывают совершенно разными:

  • Курсы стоят очень дорого, нужно много денег
  • Это слишком сложно
  • Я гуманитарий, это не для меня
  • и т.д.

Курсы дорогие

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

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

Сложно

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

Вы гуманитарий

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

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

Конечно, у вас могут быть и другие, вполне рациональные страхи. Но правда в том, что для освоения данной профессии вам действительно нужно только время (да, иногда много времени) и желание.

Типы программистов

Есть две градации программистов. По уровню знаний и по типу выполняемой работы.

Уровень знаний определяется не только знанием различных технологий, но уровнем коммуникаций. Такие знания еще называют скилами (от англ. skills) и деляться они на два типа:

  • Hard skills. Уровень знаний технологий и их количество
  • Soft skills. Знания, которые касаются коммуникаций, методов планирования, управления, самоорганизации и т.д.

Как выглядит путь развития программиста по уровню знаний:

Теперь поговорим про вторую градацию. По типу выполняемой работы.

Frontend-разработчик

Занимаются разработкой внешней составляющей сайта. Превращают макет (картинку) сайта в HTML-страницу. Такой процесс называется версткой. Главная задачи таких программистов, это сделать интерфейс сайта более понятным и привлекательным для пользователя, за счет анимации, цветов и плавности работы.

Backend-разработчик

Такие программисты занимаются серверной составляющей сайта. Это невидимая часть, за которой кроется вся магия работы сайта. Работа с базой данных, спроектировать архитектуру и написать алгоритм работы сайта. По всем таким задачам, обращаются к этим ребятам.

Full stack разработчик

Это разработчики на стероидах. Они разбираются как:

  • Сверстать страницу
  • Прописать анимацию
  • Проектировать архитектуру сайта
  • Работать с базами данных
  • и т. д.

Т.е. совмещают в себе frontend и backend разработчиков.

С чего начать?

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

  1. Новичкам, я всегда предлагаю начать обучение c frontend-разработки, а конкретно, стоит изучить HTML. Запомните основные теги, для чего они нужны и какие главные атрибуты у них есть. Не нужно их зубрить, просто запомните, что есть такой-то тег и он нужен для вот этого. Когда будете практиковаться, а это необходимо делать, гуглите какой тег больше подходит для той или иной задачи. Так обучение пойдет быстрее.
  2. Когда будете практиковаться, вам придется столкнуться с CSS. Главное, что нужно выучить здесь - это селекторы, свойства и принципы построения сетки.
  3. Дальше переключайтесь на изучение JavaScript. Этот язык программирования достаточно прост в изучении. Он позволит вам понять основные принципы программирования. Главные темы, которые стоит выучить:
  • Объявление переменных
  • Типы данных переменных
  • Условия
  • Циклы
  • Функции

Если вы изучили все предыдущие темы, начинайте цикл обучения заново. Т.е. опять переключитесь на HTML, CSS или JavaScript и учите что-то новое. Процесс обучения бесконечен, вы постоянно будете находить новые штуки в этих технологиях.

И самое главное

Чтобы начать программировать, надо начать программировать. А чтобы начать программировать, надо начать программировать!

На этом пути обучения вы постоянно будете сталкиваться с проблемой потери мотивации.

Как ее не потерять и на каких ресурсах можно подтянуть свои знания, я расскажу в следующей статье. Там же я подробно остановлюсь на вопросе, что делать, если frontend-разработка вам не понравилась и, что еще необходимо знать каждому разработчику.

В своем телеграмм канале Step by Step, я публикую еще больше материалов для тех, кто хочет научиться программировать.

--

--

sergeybr94

👨🏻‍💻 Full stack developer 👨🏻‍🔧 IT Director of Camera-People (camera-people.ru) 👨🏻‍🏫 Teach programming (telegram - @stepbystep_dev)