Содержание

Программирование с нуля: с чего начать и как выучить

Фото: Patricia de Melo Moreira / Bloomberg

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

1

Какой язык программирования учить первым?

Программирование — это процесс создания программ (программного обеспечения). Для этого программисты пишут исходный код на одном из языков программирования.

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

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

Другими популярными языками считаются Java и C. Они сложнее, особенно для новичков, но владение ими обеспечивает лучшее понимание того, что вы делаете и что происходит с вашей программой. Вместе с языком Pascal язык С обычно изучается в вузе на профильных факультетах.

Использование других языков программирования зависит от цели деятельности. Например, в качестве серверных языков популярны php, Java, ruby. Из клиентских языков наиболее перспективен Java Script. Для разработки сложных высоконагруженных проектов требуется C++. На этом же языке пишутся игры. Еще одна перспективная сфера — разработка приложений для мобильных устройств. Тут используют Java, Objective-C, Swift. Любой опытный программист знает несколько языков, однако код на работе он пишет только на одном из них.

Какой язык программирования учить прямо сейчас: 9 самых востребованных 

2

Нужно ли программисту знать математику и английский?

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

3

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

Евгений Кучерявый, автор блога онлайн-университета SkillBox, рассказал, чем занимаются веб-разработчики и какие языки им непременно нужно знать.

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

1. Обучение HTML

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

2. Обучение CSS

Внешне написанная на HTML интернет-страница будет напоминать простейший текстовый документ. Чтобы «оживить» его, используется каскадная таблица стилей или CSS. Она меняет не структуру страницы, а ее внешний вид: шрифты, расположение элементов, тени и цвета. Другими словами, если HTML используется для описания логической структуры страницы, язык CSS отвечает за графические элементы и прописывается в отдельном файле.

3. Обучение JavaScript

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

Вчерашняя техника уже завтра: могут ли устареть языки программирования

Красивая оболочка сайта не имеет смысла без начинки: видеоролики, гиперссылки и картинки должны быть связаны с сервером, базой данных, с другими интернет-сайтами. Программно-аппаратную работу сервиса берут на себя backend-разработчики. Они же отвечают за информационную безопасность (защиту от хакеров) и следят за нагрузкой на сервер (чтобы страница не «висла» из-за наплыва посетителей).

1. Обучение PHP

Базовый инструмент backend-разработчика — язык программирования PHP. Он нужен, чтобы связать видимую пользователю страницу с сервером, где хранятся какие-либо данные. Например, чтобы не выкладывать на веб-сайт по одной фотографии при помощи HTML, можно запустить скрипт, автоматически подгружающий туда условную галерею, лежащую на сервере. Язык PHP настолько сильно упрощает работу по созданию сайта, что изучать его SkillBox рекомендует и frontend-разработчикам.

2. Обучение SQL

Аббревиатура SQL расшифровывается как «структурированный язык запросов». В отличие с PHP, который нужен для связи сайта с сервером, языки SQL позволяют управлять уже самими базами данных. Сейчас существует множество подобных языков, самые распространенные из которых — это MySQL, MSSQL, PostgreSQL и прочие.

Разработчики «полного цикла» в совершенстве владеют языками, необходимыми как для frontend-, так и для backend-программирования. Они являются универсальными специалистами, хотя, очевидно, глубина их погруженности в какую-то конкретно область веб-разработки уступает осведомленности узких специалистов.

4

А какие еще бывают программисты?

  • 1С-программист, в непосредственные задачи которого входит оптимизация готовой системы 1С и ее настройка непосредственно под каждое предприятие.
  • Инженер-программист, который чаще всего занят в сфере разработки программного обеспечения для автоматизации производства, он же обычно программирует бытовую технику.
  • Game Developer, который специализируется на создании компьютерных игр. Геймдевелоперы заняты в полном цикле жизни видеоигры: создание, тестирование, доработка, поддержка, обновления, модификация и т.д.
  • Android- и iOS-разработчики, которые занимаются созданием игр, программного обеспечения, интерфейсов и обновлений для устройств, созданных под брендом Apple, или Android-устройств.
  • Системный программист, в задачи которого кроме разработки программных модулей и их интеграции входит адаптация и модификация программных продуктов под конкретную систему, исходя из ее логики и задач. Он же может заниматься разработкой баз данных и их администрированием.
  • Передовым направлением в области программирования считается сфера Data Science. Она объединяет искусственный интеллект и данные, умение прогнозировать на основе статистических данных.

Как найти и удержать ИТ-специалиста

5

Куда пойти учиться на программиста?

Если есть возможность поступить в вуз, то лучше выбрать один из ведущих: МГУ, МИФИ, ВШЭ, СПБГУ, МФТИ, МГТУ им. Баумана, МАИ, ИТМО и т.д. Речь идет, естественно, о профильных факультетах. Выпускники этих университетов лидируют в рейтинге портала Superjob, составленного по критерию уровня стартовых зарплат программистов.

6

Можно ли научиться программированию на онлайн-тренингах и курсах?

Можно. Начальные навыки программирования помогут приобрести такие популярные платформы, как Яндекс.Практикум, Сodecademy, Skillbox, GeekBrains, HTML Academy. После прохождения подобных курсов человеку становится легче понять, в сторону какого направления двигаться в профессиональном развитии.

Бесплатные курсы нередко открывают и спонсируют крупные российские компании: Mail.Ru Group, «Яндекс», «Лаборатория Касперского», Сбербанк, Тинькофф банк, «2ГИС», «Роснано», «Сколково» и HeadHunter.

Многие ведущие мировые вузы открывают курсы в онлайн. Например, курсы MIT можно найти на платформе Coursera.

А здесь: подборка бесплатных онлайн-курсов по программированию от ведущих университетов США.

7

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

Освоение программирования на 80% предполагает самостоятельную работу. Почти все необходимые материалы есть в интернете. Самое главное: мотивация. Лучше всего подходить к изучению комплексно, например, совмещая онлайн-курсы, официальную документацию к языкам, лекции, статьи, книги. При этом не следует распространяться на несколько языков сразу, лучше начать с самых простых.

Можно изучать, играя: некоторые обучающие сайты сами являются играми, например, Code Combat и CodinGame.

На GitHub можно найти огромную коллекцию бесплатных книг по программированию. Также доступен корпус электронных книг, охватывающий 24 языка программирования.

В сообществе программистов также много людей, готовых помочь следующему поколению программистов. Hack.pledge — сайт, который поможет найти наставника.

Кроме того, можно подписаться на тематические каналы в Telegram, например: канал для новичков в Python, сообщество веб- и Java Script-разработчиков, канал разработчиков Ruby и Ruby on Rails и другие.

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

8

Где найти самоучитель по программированию?

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

9

Что такое метод Франклина и как он может помочь в обучении программированию?

Это способ, позволяющий систематизировать информацию из лекций и самоучителей.

Его можно описать следующими ступенями:

  1. Читайте книгу. Когда в книге попадется образец кода, прочитайте его, сделайте заметки, которые могут помочь вам вспомнить эту информацию в будущем.
  2. Закройте книгу.
  3. Попробуйте набрать код, воссоздав его как можно ближе к оригиналу.
  4. Сравните свой код с оригиналом, исправьте ошибки, повторите пункты 1−3, пока не начнет получаться оригинальный код из книги.

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

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

10

Нужен ли диплом и опыт работы после обучения веб программированию с нуля?

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

11

С чего программисту начать поиск работы?

Анна Смирнова, менеджер по трудоустройству на программе «Веб-разработчик» в «Яндекс.Практикуме», советует четко определить свои намерения и цель, взвесить все риски и понять, сколько у вас есть времени на поиск работы и какие усилия вы готовы предпринять. Пример четко сформулированной цели — трудоустроиться за четыре месяца на позицию младшего разработчика в продуктовую компанию с полноценной командой разработки и закрепленным наставником.

Далее стоит продумать стратегию поиска. Стандартный подход — изучение вакансий на сайтах по поиску работы, в LinkedIn и телеграм-каналах. Но есть и другой вариант — нетворкинг. А именно, посещение митапов, профильных конференций и курсов, что поможет вам завести новые знакомства и искать возможности уже через них. Этот путь более тернистый в начале, но дает больший эффект, потому что вы задействуете «теплые» контакты.

Затем нужно подготовить резюме, портфолио и сопроводительные письма. Именно они создают первое впечатление о кандидате.

12

Как составить резюме, если нет опыта?

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

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

13

Где брать проекты для портфолио?

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

Примеры самостоятельных проектов начинающего разработчика:

  • Тестовые задания. Выкладывайте решения тестовых заданий на GitHub. Так вы одновременно и участвуете в отборе на позицию начинающего разработчика, и расширяете портфолио.
  • Совместные pet-проекты. Это проекты, которые вы делаете для себя в свободное от работы время (это может быть личный блог, игра или телеграм-бот), с однокурсниками и единомышленниками, которых вы встретили за время обучения веб-разработке.
  • Участие в opensource-проектах. Лучше всего начинать с проектов, в которых есть разделение задач по уровню сложности. В этом сборнике на GitHub перечислены как раз такие проекты.

Программирование с нуля: с чего начать и как выучить

Фото: Patricia de Melo Moreira / Bloomberg

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

1

Какой язык программирования учить первым?

Программирование — это процесс создания программ (программного обеспечения). Для этого программисты пишут исходный код на одном из языков программирования.

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

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

Другими популярными языками считаются Java и C. Они сложнее, особенно для новичков, но владение ими обеспечивает лучшее понимание того, что вы делаете и что происходит с вашей программой. Вместе с языком Pascal язык С обычно изучается в вузе на профильных факультетах.

Использование других языков программирования зависит от цели деятельности. Например, в качестве серверных языков популярны php, Java, ruby. Из клиентских языков наиболее перспективен Java Script. Для разработки сложных высоконагруженных проектов требуется C++. На этом же языке пишутся игры. Еще одна перспективная сфера — разработка приложений для мобильных устройств. Тут используют Java, Objective-C, Swift. Любой опытный программист знает несколько языков, однако код на работе он пишет только на одном из них.

Какой язык программирования учить прямо сейчас: 9 самых востребованных 

2

Нужно ли программисту знать математику и английский?

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

3

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

Евгений Кучерявый, автор блога онлайн-университета SkillBox, рассказал, чем занимаются веб-разработчики и какие языки им непременно нужно знать.

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

1. Обучение HTML

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

2. Обучение CSS

Внешне написанная на HTML интернет-страница будет напоминать простейший текстовый документ. Чтобы «оживить» его, используется каскадная таблица стилей или CSS. Она меняет не структуру страницы, а ее внешний вид: шрифты, расположение элементов, тени и цвета. Другими словами, если HTML используется для описания логической структуры страницы, язык CSS отвечает за графические элементы и прописывается в отдельном файле.

3. Обучение JavaScript

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

Вчерашняя техника уже завтра: могут ли устареть языки программирования

Красивая оболочка сайта не имеет смысла без начинки: видеоролики, гиперссылки и картинки должны быть связаны с сервером, базой данных, с другими интернет-сайтами. Программно-аппаратную работу сервиса берут на себя backend-разработчики. Они же отвечают за информационную безопасность (защиту от хакеров) и следят за нагрузкой на сервер (чтобы страница не «висла» из-за наплыва посетителей).

1. Обучение PHP

Базовый инструмент backend-разработчика — язык программирования PHP. Он нужен, чтобы связать видимую пользователю страницу с сервером, где хранятся какие-либо данные. Например, чтобы не выкладывать на веб-сайт по одной фотографии при помощи HTML, можно запустить скрипт, автоматически подгружающий туда условную галерею, лежащую на сервере. Язык PHP настолько сильно упрощает работу по созданию сайта, что изучать его SkillBox рекомендует и frontend-разработчикам.

2. Обучение SQL

Аббревиатура SQL расшифровывается как «структурированный язык запросов». В отличие с PHP, который нужен для связи сайта с сервером, языки SQL позволяют управлять уже самими базами данных. Сейчас существует множество подобных языков, самые распространенные из которых — это MySQL, MSSQL, PostgreSQL и прочие.

Разработчики «полного цикла» в совершенстве владеют языками, необходимыми как для frontend-, так и для backend-программирования. Они являются универсальными специалистами, хотя, очевидно, глубина их погруженности в какую-то конкретно область веб-разработки уступает осведомленности узких специалистов.

4

А какие еще бывают программисты?

  • 1С-программист, в непосредственные задачи которого входит оптимизация готовой системы 1С и ее настройка непосредственно под каждое предприятие.
  • Инженер-программист, который чаще всего занят в сфере разработки программного обеспечения для автоматизации производства, он же обычно программирует бытовую технику.
  • Game Developer, который специализируется на создании компьютерных игр. Геймдевелоперы заняты в полном цикле жизни видеоигры: создание, тестирование, доработка, поддержка, обновления, модификация и т.д.
  • Android- и iOS-разработчики, которые занимаются созданием игр, программного обеспечения, интерфейсов и обновлений для устройств, созданных под брендом Apple, или Android-устройств.
  • Системный программист, в задачи которого кроме разработки программных модулей и их интеграции входит адаптация и модификация программных продуктов под конкретную систему, исходя из ее логики и задач. Он же может заниматься разработкой баз данных и их администрированием.
  • Передовым направлением в области программирования считается сфера Data Science. Она объединяет искусственный интеллект и данные, умение прогнозировать на основе статистических данных.

Как найти и удержать ИТ-специалиста

5

Куда пойти учиться на программиста?

Если есть возможность поступить в вуз, то лучше выбрать один из ведущих: МГУ, МИФИ, ВШЭ, СПБГУ, МФТИ, МГТУ им. Баумана, МАИ, ИТМО и т.д. Речь идет, естественно, о профильных факультетах. Выпускники этих университетов лидируют в рейтинге портала Superjob, составленного по критерию уровня стартовых зарплат программистов.

6

Можно ли научиться программированию на онлайн-тренингах и курсах?

Можно. Начальные навыки программирования помогут приобрести такие популярные платформы, как Яндекс.Практикум, Сodecademy, Skillbox, GeekBrains, HTML Academy. После прохождения подобных курсов человеку становится легче понять, в сторону какого направления двигаться в профессиональном развитии.

Бесплатные курсы нередко открывают и спонсируют крупные российские компании: Mail. Ru Group, «Яндекс», «Лаборатория Касперского», Сбербанк, Тинькофф банк, «2ГИС», «Роснано», «Сколково» и HeadHunter.

Многие ведущие мировые вузы открывают курсы в онлайн. Например, курсы MIT можно найти на платформе Coursera.

А здесь: подборка бесплатных онлайн-курсов по программированию от ведущих университетов США.

7

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

Освоение программирования на 80% предполагает самостоятельную работу. Почти все необходимые материалы есть в интернете. Самое главное: мотивация. Лучше всего подходить к изучению комплексно, например, совмещая онлайн-курсы, официальную документацию к языкам, лекции, статьи, книги. При этом не следует распространяться на несколько языков сразу, лучше начать с самых простых.

Можно изучать, играя: некоторые обучающие сайты сами являются играми, например, Code Combat и CodinGame.

На GitHub можно найти огромную коллекцию бесплатных книг по программированию. Также доступен корпус электронных книг, охватывающий 24 языка программирования.

В сообществе программистов также много людей, готовых помочь следующему поколению программистов. Hack.pledge — сайт, который поможет найти наставника.

Кроме того, можно подписаться на тематические каналы в Telegram, например: канал для новичков в Python, сообщество веб- и Java Script-разработчиков, канал разработчиков Ruby и Ruby on Rails и другие.

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

8

Где найти самоучитель по программированию?

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

9

Что такое метод Франклина и как он может помочь в обучении программированию?

Это способ, позволяющий систематизировать информацию из лекций и самоучителей.

Его можно описать следующими ступенями:

  1. Читайте книгу. Когда в книге попадется образец кода, прочитайте его, сделайте заметки, которые могут помочь вам вспомнить эту информацию в будущем.
  2. Закройте книгу.
  3. Попробуйте набрать код, воссоздав его как можно ближе к оригиналу.
  4. Сравните свой код с оригиналом, исправьте ошибки, повторите пункты 1−3, пока не начнет получаться оригинальный код из книги.

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

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

10

Нужен ли диплом и опыт работы после обучения веб программированию с нуля?

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

11

С чего программисту начать поиск работы?

Анна Смирнова, менеджер по трудоустройству на программе «Веб-разработчик» в «Яндекс.Практикуме», советует четко определить свои намерения и цель, взвесить все риски и понять, сколько у вас есть времени на поиск работы и какие усилия вы готовы предпринять. Пример четко сформулированной цели — трудоустроиться за четыре месяца на позицию младшего разработчика в продуктовую компанию с полноценной командой разработки и закрепленным наставником.

Далее стоит продумать стратегию поиска. Стандартный подход — изучение вакансий на сайтах по поиску работы, в LinkedIn и телеграм-каналах. Но есть и другой вариант — нетворкинг. А именно, посещение митапов, профильных конференций и курсов, что поможет вам завести новые знакомства и искать возможности уже через них. Этот путь более тернистый в начале, но дает больший эффект, потому что вы задействуете «теплые» контакты.

Затем нужно подготовить резюме, портфолио и сопроводительные письма. Именно они создают первое впечатление о кандидате.

12

Как составить резюме, если нет опыта?

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

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

13

Где брать проекты для портфолио?

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

Примеры самостоятельных проектов начинающего разработчика:

  • Тестовые задания. Выкладывайте решения тестовых заданий на GitHub. Так вы одновременно и участвуете в отборе на позицию начинающего разработчика, и расширяете портфолио.
  • Совместные pet-проекты. Это проекты, которые вы делаете для себя в свободное от работы время (это может быть личный блог, игра или телеграм-бот), с однокурсниками и единомышленниками, которых вы встретили за время обучения веб-разработке.
  • Участие в opensource-проектах. Лучше всего начинать с проектов, в которых есть разделение задач по уровню сложности. В этом сборнике на GitHub перечислены как раз такие проекты.

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

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

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

Найдите подходящий учебный лагерь

  • Career Karma подберет для вас лучшие технологические учебные курсы
  • Доступ к эксклюзивным стипендиям и подготовительным курсам

Выберите интересующий вас вопрос
Разработка программного обеспеченияДизайнОбработка и анализ данныхАналитика данныхUX-дизайнКибербезопасностьИмя

Фамилия

Электронная почта

Номер телефона

Продолжая, вы соглашаетесь с нашими Условиями обслуживания и Политикой конфиденциальности, а также соглашаетесь получать предложения и возможности от Career Karma по телефону, текстовым сообщениям и электронной почте.

Что такое кодирование?

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

Кодирование — это процесс написания инструкций для компьютеров в виде строк кода. Они могут быть написаны на разных языках кодирования, которые имеют специфическое применение. Существует множество типов языков программирования, которые вы можете научиться использовать для разных целей. Например, кодеры используют HTML и JavaScript для создания веб-сайтов и Swift для создания приложений для iOS.

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

Почему вы должны изучать программирование самостоятельно?

  • Доступ к лучшим возможностям трудоустройства. Кодирование требуется во всех отраслях. Обладая этим набором навыков, вы сможете найти работу в более широком спектре организаций в зависимости от ваших личных и профессиональных целей.
  • Получите более высокую зарплату. С лучшими возможностями трудоустройства растет и заработная плата. По данным Бюро статистики труда, средняя заработная плата программистов в 2021 году составляла 9 долларов.3000 в год.
  • Развивайте свои аналитические способности. Помимо рабочих привилегий, когда вы научитесь программировать, вы разовьете свои логические и аналитические способности. Решение проблем также является важной частью кодирования, и вы сможете постоянно практиковать его и заметно улучшать.
  • Работайте из любой точки мира. Программисты могут работать из любой точки мира. Если вы хотите стать независимым от местоположения, изучение программирования — отличный способ добиться этого.
  • Проявите творческий подход. Программирование требует творчества. Независимо от того, решаете ли вы проблему для клиента или создаете новое программное обеспечение, у вас будет много возможностей проявить творческий подход и исследовать новые способы выполнения задач.

Является ли самообучение лучшим способом научиться кодировать?

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

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

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

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

Начните с простого языка программирования

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

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

Изучите основы с помощью онлайн-ресурсов

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

Пробные онлайн-курсы

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

Получить книгу по кодированию

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

Смотреть видеоролики о кодировании

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

Найти интерактивные игры по программированию

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

Начните с проектов Easy Coding Projects

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

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

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

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

Развлекайся

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

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

Как устранить неполадки в коде

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

Google Ваши сообщения об ошибках

Это может показаться очевидным, но если у вас возникла проблема, скорее всего, кто-то еще сталкивался с такой же проблемой раньше. Если ваш код приводит к сообщениям об ошибках, используйте Google, чтобы попытаться найти ответ. Начинающие кодеры чаще всего находят решение своей проблемы где-нибудь в Интернете.

Наймите наставника

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

Присоединяйтесь к сообществам программистов

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

Как начать кодирование?

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

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

Пройти онлайн-курс программирования

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

Посетить учебный курс по кодированию

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

«Карьерная карма вошла в мою жизнь, когда я больше всего в ней нуждалась, и быстро помогла мне попасть на буткемп. Через два месяца после выпуска я нашла работу своей мечты, которая соответствовала моим ценностям и целям в жизни!»

Венера, инженер-программист в Rockbot

Найдите местные встречи по кодированию

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

Пройдите стажировку по программированию

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

Начать внештатное кодирование

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

Стоит ли учиться кодированию самостоятельно?

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

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

Можно ли научиться программировать самостоятельно?

Да, научиться кодированию можно самостоятельно. Вы можете использовать книги, онлайн-курсы, учебные пособия на YouTube и онлайн-сообщества, чтобы помочь вам освоить основы. Если вы уверены, что кодирование подходит именно вам, учебный курс по кодированию может вооружить вас инструментами, необходимыми для достижения успеха в этой профессии.


Трудно ли научиться программированию самостоятельно?

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


Сколько времени нужно, чтобы научиться программировать самостоятельно?

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


Где можно научиться писать код самостоятельно?

Вы можете научиться писать код самостоятельно с помощью онлайн-курсов на таких платформах, как Coursera, Udemy и Khan Academy. Вы также можете зайти на YouTube и найти учебные пособия или присоединиться к сабреддитам и серверам Discord, где вы сможете найти ресурсы и пообщаться с сообществом учащихся, которые поддержат вас на пути к написанию кода.

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

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

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

Если вам это нравится, вы, вероятно, рассмотрели все доступные варианты (и впоследствии придумали аргумент против).

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

Остается последний вариант — научиться программировать самостоятельно. Но что это будет означать, и стоит ли вам действительно идти по этому пути?

Вот некоторые вопросы, которые мы рассмотрим:

  • Стоит ли мне учиться программировать?
  • Является ли самообучение лучшим способом научиться кодировать?
  • Как мне начать?
  • Что, если я когда-нибудь застряну?
  • Буду ли я *когда-нибудь* достаточно хорош, чтобы стать разработчиком программного обеспечения?

Во-первых, нужно ли мне действительно учиться программировать?

Вы, наверное, слышали аргумент Code. org о том, что каждый должен изучать программирование. Очевидно, что да. Вам следует *серьезно* изучить программирование. Поначалу это может быть очень сложно, потому что независимо от того, какой метод обучения вы предпочитаете, вам потребуется немало усилий и находчивости, чтобы добиться успеха. Но, к счастью, программирование — это не высшая математика (вопреки распространенному мнению!). На самом деле, это что-то интуитивное — в основном, написание «инструкций» для вашего компьютера.

Итак, даже если вы не планируете становиться инженером-программистом, есть несколько очень веских причин, чтобы овладеть некоторыми навыками программирования.

Вот версия TL;DR:

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

Теперь, когда мы разобрались с этим…

Является ли самообучение лучшим способом научиться кодировать?

Настоящий разговор: лучший способ научиться программировать (вы знаете, что действительно важно!) это начать.

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

Тест: допустим, вы только что купили журнальный столик в ИКЕА и пора его собрать. Что вы делаете?

  1. Внимательно прочтите руководство и изучите его, чтобы понять, что куда нужно. Затем точно следуйте инструкциям.
  2. Попросите друга (у которого есть опыт сборки мебели из ИКЕА) собрать ее перед вами, а затем разберите ее, чтобы вы могли собрать ее самостоятельно.
  3. Просмотрите руководство. Затем попытайтесь выяснить, как построить таблицу самостоятельно.
  4. Посмотрите на доступные вам «кусочки» и с помощью логики попытайтесь сложить их вместе. Делайте это до тех пор, пока вам не удастся собрать стол.

Если вы выбрали № 1, вы, вероятно, глубоко интересуетесь теорией, лежащей в основе того, как все работает, и вам нравится изучать «инструкции». Вы, скорее всего, лучше всего научитесь на курсах информатики (либо на таких сайтах, как EdX, или даже на ученой степени).

Если вы выбрали № 2, вы получите наибольшую пользу от участия в учебном лагере по программированию (где есть наставничество и возможности парного программирования)

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

И, наконец, выбор № 4 показывает, что вы независимый ученик — вам нравится пачкать руки. Вероятно, лучше всего вы научитесь программировать самостоятельно. Хотя этот простой тест показывает, какой «метод обучения» принесет вам наибольшую пользу, он не является строгим руководством.

Итак, если вы все еще хотите научиться программировать самостоятельно, читайте дальше!

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

В первую очередь вам, вероятно, потребуется изучить синтаксис предпочитаемого вами компьютерного языка. Это сделает другие ресурсы намного проще для понимания! Такие сайты, как Codecademy и Khan Academy, скорее всего, помогут вам в этом.

Читайте также: Учитесь программировать – Руководство по началу обучения программированию для начинающих0003

#1: Начните с малого

Если у вас практически нет опыта программирования, не погружайтесь с головой в реализацию больших структур данных или алгоритмов сразу. Будет очень заманчиво попытаться сначала заняться «серьезным программированием», но поверьте нам, когда мы говорим, что правильное понимание концепций является важной частью на данном этапе. Итак, что вы можете сделать?

Начните с базовых упражнений по кодированию и попытайтесь понять, как все работает. Совет: хорошим инструментом, который поможет вам еще больше разбить код, который вы используете, без необходимости выполнять какие-либо сложные настройки на вашем компьютере, является repl.it.

В то же время вы можете…

#2: Читать книги

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

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

Книги быстро потеряют актуальность?

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

Короче говоря, базовые концепции важнее языков. Мы просмотрели в Интернете (так что вам не обязательно!) список 6 лучших книг, которые должен иметь каждый программист:

  1. Искусство компьютерного программирования Дональда Кнута
  2. Code Complete 2 — Практическое руководство по созданию программного обеспечения Стива МакКоннелла
  3. Не заставляйте меня думать (повторное посещение) — подход здравого смысла к юзабилити в Интернете и на мобильных устройствах, Стив Круг
  4. Peopleware — Продуктивные проекты и команды Тома Демарко и Тимоти Листера
  5. Прагматичный программист — от подмастерья до мастера Эндрю Хант и Дэвид Томас
  6. Факты и заблуждения программной инженерии Роберта Л. Гласса

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

#3: Побалуйте себя

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

Как следует из гифки – побалуйте себя!

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

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

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

Или, что еще лучше, выберите проект или навык, который *действительно* хотите освоить, и действуйте. Не зацикливайтесь только на «скучных вещах».

#4: Клонирование популярных веб-сайтов

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

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

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

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

Еще один совет: в онлайн-отчете о курсе есть список учебных пособий, где вы можете клонировать 15 известных сайтов, таких как Etsy, WordPress, Quora, Pinterest и других.

И еще одно: это само собой разумеется, но это чисто для практики. Не выдавайте эскизы за свои!

#5: Выложите свой код

Чем больше вы будете заниматься программированием, тем больше вы обнаружите, что вам придется изучать Git. ( И если вы еще не добрались сюда, об этом стоит побеспокоиться позже!) Здесь на помощь приходит Github — отличное место, где можно найти людей для совместной работы.

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

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

Бонус: Github также можно использовать для поиска (настоящих!) проектов, которые вы можете клонировать и возиться с ними, помогая вам научиться программировать.

Вот очень хороший учебник, который поможет вам, если вам нужно знать, как, черт возьми, вы можете использовать Github.

О, и если вы можете, найдите кого-нибудь, кто сделает для вас обзор кода, возможно, даже из GitHub. Опять же, может быть очень пугающе попросить другого (более опытного!) разработчика просмотреть ваш код, но они быть в состоянии сделать это для вас:

  • Посмотрите, нет ли *очевидных* логических ошибок в коде
  • Послушайте свое объяснение (того, что вы пытаетесь сделать) и оцените, удалось ли вам наилучшим образом воплотить это в свой код.
  • Сообщить вам, есть ли лучший (читай: более эффективный) способ написать этот код

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

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

#6: Количество > Качество (сначала!)

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

‍ Промойте и повторите — теперь ваша задача — написать МНОГО кода.

«Но почему?» ты спрашиваешь. Проще говоря:

  1. Вы можете быть *лучшим* программистом в мире (теоретически, конечно), но это будет бессмысленно, если вы никогда не примените это на практике.
  2. Написание кода — отличный способ учиться на своих ошибках.
  3. И пока вы не будете мысленно кодировать что-то снова и снова, вы не станете лучше.

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

Другими словами, постарайтесь как можно скорее написать свой собственный код.

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

Опять же, поначалу может быть плохо, но с чего-то надо начинать

Что, если я застряну?

Наткнулись на «лежачего полицейского» в коде, с которым не можете справиться? Не можете понять важную концепцию? Многие программисты были там и сделали это, поэтому, если вы когда-нибудь застрянете:

— Поймите, что сначала вы будете плохим (и это нормально!)

Когда вам удастся понять ключевую концепцию программирования (или закончить обучение на Codecademy), вы в конечном итоге почувствуете себя действительно уверенно. #достижение разблокировано, верно? А затем, через несколько дней, вы возвращаетесь к учебнику или пытаетесь выполнить более сложное упражнение, основанное на предыдущей концепции, и чувствуете себя еще более потерянным, чем когда-либо.

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

– погуглите

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

– Найдите наставника

Хотя не всегда возможно найти наставника в реальной жизни, было бы неплохо найти кого-то, кому вы можете задавать вопросы – при условии, что вы не можете найти это в Google, конечно. Объяснение проблемы, с которой вы столкнулись, может занять всего 2 минуты, что избавит вас от многочасовой работы над кодом. обычно более чем рады поделиться своими знаниями, если у них есть время. Просто не забудьте купить им кофе или обед, чтобы найти время, чтобы развлечь вас!

— проверьте элемент или проверьте код

Этот бит особенно важен, если вы собираетесь реконструировать веб-сайты. Если вы когда-нибудь застрянете на имитации веб-сайта по вашему выбору, просто щелкните правой кнопкой мыши веб-страницу и «проверьте элемент», чтобы получить подсказку о том, как двигаться дальше! Но кроме того, изучение хороших примеров кода является ключом к улучшению ваших навыков программирования. Ваша способность как инженера различать «хороший» и «плохой» код (помимо написания хорошего кода, конечно!) сделает вас ценным активом.

– Отдохнуть!

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

Читайте также: 27 неожиданных вещей, которые вы узнаете на курсах по программированию

И, наконец, буду ли я *когда-нибудь* достаточно хорош, чтобы стать разработчиком программного обеспечения, если я научусь программировать самостоятельно?

Это может показаться страшным – подавать заявку на работу разработчиком программного обеспечения, несмотря на то, что у вас нет официальной бумажной квалификации в этой области. Это особенно важно, когда все, что у вас есть в качестве «доказательства» ваших навыков, — это, возможно, куча значков на сайте онлайн-курсов по программированию, таком как Coursera/Codecademy, и ваш репозиторий GitHub.

Короче говоря…  Да. Есть много хороших программистов-самоучек!

‍Мы можем быть предвзятыми, потому что даже наш основатель Джош Тенг потратил два года на то, чтобы научиться программировать.

Но да, вполне возможно, что вы сможете стать программистом-самоучкой. Однако это будет долгий и утомительный процесс. Есть поговорка, что для достижения мастерства в какой-либо области требуется примерно 10 000 часов практики.

Вам может быть интересно: если Джош был самоучкой, почему он стал основателем учебного курса по программированию?

  • У него не было сообщества программистов, с которым он мог бы взаимодействовать и делиться знаниями (даже несмотря на то, что он кодировал постоянно), и это заставляло его чувствовать, что он никуда не спешит.
  • Его собственный стартап не смог найти достаточно разработчиков!
  • Но помимо его собственных проблем, его друзья, у которых были стартапы, также столкнулись с множеством проблем. Они не смогли найти технического соучредителя и не смогли связаться со своими техническими командами
  • сочли слишком дорогим создание MVP

Все изменилось, когда Джош посетил 9-недельный курс иммерсивного программирования, подобный NEXT Academy. Многие в его «классе» начинали с нулевого опыта программирования, но заканчивали свое пребывание на буткемпе, занимаясь такими вещами, как:

  • создание (прикольных) плагинов WordPress
  • автоматизированные повседневные процессы/ ​​утилиты
  • и даже создали свои собственные MVP, что в конечном итоге привело к открытию бизнеса.

Читайте также: Люди увольняются с высокооплачиваемой работы, чтобы присоединиться к учебным курсам по программированию. Почему?

Но какая разница между теми, кто преуспевает в программировании или терпит неудачу? Вы должны хотеть этого достаточно сильно. Вы должны быть голодны, чтобы учиться. И, прежде всего, вы должны придерживаться этого… Даже когда (или, скорее, *особенно* когда) дела идут плохо!

Заключение?

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