15 способов научиться программировать

Итак, вы решили научиться программировать. Вы слышали что-то о Swift, сидя поздно вечером в кафе, ваши друзья шепчутся о Node.js, и вы неделями гадаете, кто такая Ruby и где бы вы могли с ней познакомиться. Единственное, в чём вы точно уверены, так это в том, что вы упускаете что-то крупное. Такое ощущение, что сейчас все разбираются в программировании, а вы до сих пор считаете, что CSS — это очередной сериал про полицейских.

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

Но как выбрать нужный вариант? Чтобы определиться, задайте себе несколько вопросов:

  1. Хотели бы вы заниматься с наставником или в одиночку? Достаточно ли вы мотивированы? Если вы из тех, кто убирается дома только к приезду родственников, то вам явно понадобится жесткая рука ментора.
  2. Готовы ли вы платить за обучение? Если да, то сколько и как долго планируете заниматься?
  3. Для чего вы решили этим заняться? Ради забавы или чтобы получить работу?

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

1. Codecademy

codecademy

Codecademy предлагает бесплатные курсы программирования на 6 языках: Python, jQuery, PHP, Ruby, HTML и CSS. Обладает одной из самых обширных аудиторий среди ресурсов такого рода, что вызвано в первую очередь разнообразием курсов.
Плюсы:

  • Предлагает окунуться в глубины кодинга, используя «консольный» стиль программирования, что позволяет новичкам понять, как выглядит работа профессионала.
  • Для углублённого изучения можно приобрести платную подписку.

Минусы:

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

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

2. Code School

codeschool

Code School использует для обучения скринкасты и видео-уроки, рассказывающие о Ruby, JavaScript, iOS, HTML/CSS, подавая материал через интересные истории. Несмотря на то, что большая часть контента рассчитана на продвинутых программистов, новичкам доступны бесплатные курсы, рассказывающие об основах программирования.
Плюсы:

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

Минусы:

  • Может оттолкнуть начинающих программистов своей сложностью.

Платно/бесплатно, без наставника, порог вхождения: низкий/средний

3. Coursera

coursera

Coursera предоставляет пользователям полностью бесплатную базу открытых онлайн-курсов, зачастую от известных университетов. Эти курсы доступны в виде видео-лекций, покрывающие всевозможные области программирования. Достоинства очевидны: можно найти лекцию о чём-угодно и изучить её когда-угодно. К сожалению, отсутствует момент непосредственного обучения, что снижает мотивированность обучения. Тем не менее, такие курсы отлично подойдут для поверхностного ознакомления с предметом изучения.
Плюсы:

  • Бесплатно.
  • Лекции читают лучшие специалисты.
  • Большое разнообразие

Минусы:

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

Бесплатно, без наставника, порог вхождения: зависит от курса

4. Bento

bento

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

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

Минусы:

  • Уроки собраны из различных источников, поэтому их качество может варьироваться.

Бесплатно, без наставника, порог вхождения: от низкого до продвинутого

5. Treehouse

treehouse

Treehouse — интерактивная платформа, обучающая написанию сайтов и веб-приложений на таких языках, как HTML, CSS, Java, PHP (WordPress), Objective-C, JavaScript и Ruby. Видеоуроки показывают и объясняют материал, а тесты помогают закрепить пройденное.
Плюсы:

  • Доступность курсов в любое время.

Минусы:

  • Платная платформа, не предоставляющая индивидуального обучения.

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

6. CareerFoundry

careerfoundry

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

Плюсы:

  • Гибкое расписание.
  • Общение с преподавателем.

Минусы:

  • Небольшой выбор курсов (Ruby on Rails и User Experience Design).

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

7. Udacity

udacity

Udacity является развитием курса Computer Science Стенфордского университета. Обучение происходит в форме видеоуроков со встроенными тестами, также присутствуют домашние задания.
Плюсы:

  • Связь со всемирно известным университетом.

Минусы:

  • Низкая успеваемость обучающихся.

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

8. Bloc

bloc

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

  • Поддержка и отличные преподаватели.

Минусы:

  • Высокий уровень нагрузки.

Платно, с наставником, порог вхождения: низкий

9. HTML5Rocks

html5rocks

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

  • Отличный ресурс для разработчиков.

Минусы:

  • Названия могут смутить начинающих.

Бесплатно, без наставника, порог вхождения: средний

10. The Code Player

thecodeplayer

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

  • Возможность изучать материал с любой приемлемой скоростью.

Минусы:

  • Некоторым может не хватать инструкций.

Бесплатно, без наставника, порог вхождения: низкий/средний

11. Khan Academy

khan

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

  • Возможность бесплатно изучить предмет перед дальнейшим погружением в него.

Минусы:

  • Отсутствие пошаговых инструктажей.

Бесплатно, без наставника, порог вхождения: низкий/средний

12. Code Avengers

codeavengers

Данный ресурс неплохо выглядит, но новичков не устроит отсутствие видеоинструкций. Предлагаемые к изучению языки —  JavaScript Level 1 и Level 2, а также HTML/CSS. Сайт получил много положительных отзывов как площадка для развития навыков джуниор-программистов.
Плюсы:

  • Отличный внешний вид
  • Прекрасная платформа для «джунов».

Минусы:

  • Отсутствие обучающих видео и преподавателей.

Частично платно, без наставника, порог вхождения: ниже среднего

13. Programmr

programmr

Programmr — это, фактически, браузерная среда разработки, позволяющая изучить языки программирования без видеоуроков и необходимости скачивать какое-либо ПО. Словом, отличное место для того, чтобы опробовать знания, полученные где-то ещё. На ресурсе также проходят различные соревнования.
Плюсы:

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

Минусы:

  • Скорее тестовая площадка, чем обучающий ресурс.

Бесплатно, без наставников, порог вхождения: низкий

14. TryRuby

tryruby

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

  • Отлично подходит для экспериментов.

Минусы:

  • Поверхностное изучение языка.

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

15. HacketyHack

hackety

Этот ресурс также предназначен для изучения языка Ruby. На сайте можно задать вопросы и поделиться созданными материалами.

Плюсы:

  • Отлично подходит для изучения основ языка.

Минусы:

  • Сайт рассчитан на детей.

Бесплатно, без наставника, порог вхождения: низкий


Вот и всё, пора действовать! Удачи!

Официальный блог CareerFoundry