Хотите научиться программировать, но не знаете, с чего начать? Я рекомендую сначала научиться думать как программист.

Когда я ушел из Facebook в 2015 году, чтобы вместе с братом Наимом основать Educative, у нас была одна цель: создать курсы технических навыков мирового уровня для таких разработчиков, как мы.

В то время мы были разочарованы качеством учебных ресурсов, доступных для разработчиков:

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

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

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

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

Вот почему я так рад представить Учимся программировать с помощью образования!

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

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

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

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

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

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

  1. Учитесь кодировать с помощью Educative: изучайте курсы!
  2. С какого языка следует начать?
  3. Мой главный совет новичкам.

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

Теперь давайте проверим курсы.

1) Научитесь кодировать с помощью Educative: изучите курсы

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

Учитесь программировать с обучающими материалами:

  1. Питон для абсолютных новичков
  2. Javascript для абсолютных новичков
  3. Java для начинающих
  4. Рубин для абсолютных новичков
  5. C# для абсолютных новичков
  6. C++ для абсолютных новичков

Для создания этих курсов мы сотрудничали с университетскими преподавателями, которые имеют десятилетний опыт обучения программированию студентов бакалавриата. Наш подход заключался в том, чтобы свести основные элементы курса информатики 101 или учебного курса к основному набору задач, которые помогут вам уверенно практиковать свои навыки. (Все размещено на интерактивной обучающей платформе Educative, не требующей настройки, для простоты и доступности).

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

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

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

2) С какого языка мне начать?

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

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

Это два самых простых языка для изучения, поэтому я обычно советую начинать именно с них новичкам. Следующим самым простым, вероятно, будет Ruby, затем следует C#, затем Java, затем C++ >. (Мой личный предпочтительный язык программирования на самом деле C++, но я бы рекомендовал новичкам выбрать более простой язык, если они начинают с нуля.)

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

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

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

3) Мой главный совет новичкам

Вот мой главный совет начинающим учащимся:

Сначала не торопитесь.

Многие новые учащиеся часто хотят попробовать быстро освоить новый материал в первые 24 часа или первую неделю. Я считаю, что стоит уделить время тому, чтобы по-настоящему усвоить основы.

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

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

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

Что дальше от Образовательного?

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

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

Кроме того, в ближайшее время у нас появится гораздо больше интересных материалов Learn to Code. Скоро появятся новые курсы, которые помогут программистам понять классические концепции информатики (например, структуры данных и алгоритмы), а также узнать, как добиться максимальной эффективности и производительности.

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

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

А пока приятного обучения!

Это сообщение изначальноизGrokking the Tech Career, бесплатного информационного бюллетеня, доступного на Substack, от Фахима уль Хака, генерального директора и соучредителя Образовательная, лучшая в мире платформа для обучения разработчиков программного обеспечения.