Эта история изначально была опубликована на Hashnode.

Есть несколько статей, объясняющих, почему научиться программировать так чертовски сложно, и это правильно. Как новичку, мне тоже пришлось пройти через множество затруднений и стрессов.

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

1. Сократите варианты, выберите один

Существует так много областей разработки программного обеспечения, например, веб-разработка, мобильные приложения, настольные приложения, разработка игр и т. Д. Вы не можете освоить все из них одновременно. Многие люди, которые хотят начать программировать, очень не понимают, что им следует делать, и, поскольку они не уверены в одном вопросе, они продолжают прыгать по областям и группам в них. Допустим, вы решили изучить веб-разработку, опять же, есть много языков, фреймворков и мнений, много шума. Люди будут спорить о JavaScript против Python против Ruby против какого-нибудь нового классного ребенка.

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

Что бы вы ни выбрали, будет непросто. Пройдите вводные учебные пособия и упражнения, усвойте базовые концепции и синтаксис.

2. Ресурсы

Когда вы начинаете учиться, важно выбрать правильные ресурсы. Небольшой поиск помогает, но, опять же, есть много вариантов. Как мне выбрать, какой из них использовать? Вот несколько моментов, которые я имею в виду при выборе учебника / книги:

  • Насколько быстро он охватывает основы и синтаксис и подводит меня к созданию чего-то значимого. У меня не займет много времени просто охватить базовый синтаксис.
  • Требует ли учебник / книга, чтобы я действительно писал код или нет? Я считаю, что учебники / книги с фрагментами кода или обновленное репозиторий Github намного более полезны.

3. Работа над проектами / Написание большого количества кода

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

  • Разбейте приложение на небольшие этапы и выясните, как делать что-то одно за раз.
  • Не бросайте, пока не закончите.
  • В качестве своего первого проекта я сделал приложение для отслеживания проблем сообщества, это было простое приложение CRUD, в котором вы могли входить в систему, поднимать вопросы, обновлять статусы и публиковать / удалять комментарии.

4. Не глотать, пожевать еще раз позже

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

5. Зная, что изучать дальше

Для меня это была самая сложная часть. Как мне узнать, что изучать дальше? Что еще я должен знать или как повысить свой уровень? Поскольку не существует четко определенного, продуманного пути к тому, что разработчику следует изучить, после определенного уровня очень трудно сказать, действительно ли он добивается прогресса или нет. К счастью, тогда я изучал Ruby on Rails, и RailsCasts - это потрясающая серия скринкастов, затрагивающих все важные аспекты создания приложения, и я мог просто пойти туда и посмотреть скринкасты по темам, о существовании которых я даже не подозревал. Хотелось бы, чтобы таких сайтов было больше на других языках и других разделах разработки программного обеспечения.

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

6. Чтение кода

Чтение кода - недооцененный, но очень полезный инструмент. Чтение кода, написанного старшими людьми, помогло мне понять, где что использовать, как организовать код и множество других хороших практик. Немного сложно понять, какие репозитории читать на GitHub на вашем уровне. Поищите на GitHub и найдите репозиторий, который расширяет ваше понимание, но не является полностью подавляющим.

7. Проверка кода

Отзывы помогают понять положительные и отрицательные стороны вашего кода. ИМО, это единственный лучший способ улучшить качество кода. Обзор кода дает вам несколько точек зрения на то, как решить проблему, и является простым способом передачи знаний. Новичкам следует присоединиться к местным сообществам разработчиков кода или найти наставников / старших специалистов, которые могли бы проводить обзоры кода, следовать различным каналам Slack и страницам узлов Hashnode, чтобы найти наставников.

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

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

Сейчас я провожу учебный курс по программированию, чтобы помочь большему количеству людей научиться программировать - https://altcampus.school