Если вы новичок в мире программирования и IT, то самым лучшим вариантом для вашего старта будут бесплатные ресурсы по программированию. Используя их, вы сможете разобраться, что вам нравится и ближе всего, а что — нет, прежде чем основательно перейти к изучение какого-либо языка программирования или пойти на курсы. Пройдя несколько бесплатных туториалов по программированию, вы сможете найти свое направление и продолжить изучение уже более эффективно.
Примечание: В данной подборке представлено 70+ онлайн-ресурсов для изучения программирования и не только: от легких учебных пособий до полноценных онлайн-курсов. Если вы знаете какой-либо хороший ресурс по программированию, который здесь не указан — сообщите об этом в комментариях, с радостью добавлю в статью!
Универсальные ресурсы
Codecademy — это одна из самых популярных платформ, откуда свой путь в мир программирования начинает большинство новичков. Платформа имеет десятки разных курсов, начиная от HTML&CSS и заканчивая кибербезопасностью, а также предлагает интерактивное обучение: вы пишете код и в соседнем окне видите результат его выполнения. Курсы можно проходить как бесплатно (с ограничениями), так и платно (без ограничений и с набором дополнительных возможностей).
Coursera — одна из лучших платформ, где бесплатно можно обучиться программированию. Есть как общие/универсальные, так и узкоспециализированные курсы. Сайт представляет собой большую онлайн-библиотеку, где занятия проводят преподаватели из лучших университетов мира. Все курсы бесплатные, но можно дополнительно оплатить сертификат «Coursera Verified» (цена $30-100) для подтверждения успешного завершения выбранных курсов. В некоторых случаях, оплатив сертификат, вы получаете доступ к контенту, который не был доступен в бесплатном варианте.
freeCodeCamp — бесплатная онлайн-школа, которая сначала обучает программированию по стандартной учебной программе, а затем предлагает пройти практику на некоммерческих реальных проектах. Отлично подойдет для тех, кто хочет получить практику по программированию, добавив полученный опыт в свое резюме.
edX — данный ресурс по изучению программирования курируется Массачусетским технологическим институтом (MIT) и Гарвардским университетом. 100+ отличных курсов в категории «Computer science», обучающих разным языкам программирования.
Khan Academy — предлагает просто множество обучающих материалов, включая программирование. Есть курсы для детей младшего возраста, можно учиться целой семьей.
Udacity — данная платформа имеет сотни различных курсов, включая программирование. Есть как бесплатные (меньшинство), так и платные курсы (большинство).
SoloLearn — имеет популярное одноименное приложение для смартфона, чтобы вы могли находиться в процессе обучения в любом месте и на любом устройстве. Благодаря интерактивным тестам и достижениям, которые необходимо разблокировать, изучение не будет скучным. Приложение является абсолютно бесплатным для загрузки.
Bento — предлагают десятки различных курсов и туториалов по языкам программирования и не только. Основным контентом являются видеоуроки.
Udemy — самый большой выбор как платных, так и бесплатных курсов на любые теми. Следует обратить внимание на то, что курсы на платформе может создавать любой пользователь, поэтому перед их выбором следует внимательно читать отзывы.
Digital.io — данный сайт охватывает много тем, связанных с веб-разработкой. Платформа содержит небольшие курсы, пособия, руководства, посты и видеоматериалы.
Hackr.io — это не столько платформа, сколько огромный список ресурсов для изучения любой темы, связанной с программированием. Достаточно выбрать желаемый язык программирования и получить список онлайн-курсов, учебных пособий и книг, рекомендованных другими программистами для изучения выбранного вами направления.
TutorialsPoint — библиотека бесплатных туториалов по множеству тем, связанных не только с программированием, но и вообще с компьютерами: Big Data, базы данных, веб и мобильная разработка, Computer Science и даже машинное обучение.
Tuts+ — огромное число бесплатных туториалов по веб-разработке, программированию и смежным областям, также есть платные курсы.
W3Schools — идеально подойдет для начинающих. Это один из крупнейших в мире сайтов для веб-разработчиков. Предлагают бесплатные учебники и справочные материалы для изучения почти всех нюансов и аспектов веб-разработки. Можно проверить свои навыки с помощью онлайн-викторин и поупражняться в программировании в их онлайн-редакторе.
Coderbyte — учитесь программированию непосредственно во время программирования! Платформа обучает основам популярных языков программирования и позволяет развить новые навыки с помощью использования их библиотеки из видеоматериалов, заданий и челленджей.
Виртуальная академия Microsoft — бесплатные онлайн-курсы (преимущественно) по инструментам и технологиям Microsoft. В наличии: видеоматериалы, презентации, электронные книги, форум сообщества.
Launch School Open Book Shelf — это бесплатные книги, которые являются отличным дополнением к учебной программе Launch School по разработке ПО. Помогут освоить необходимый базис большинства популярных языков программирования.
Code Basics — платформа с бесплатными интерактивными уроками по основам программирования для новичков: PHP, JavaScript, Python, Java, HTML&CSS.
Metanit — данный сайт посвящен различным языкам и технологиям программирования, начиная от C# и заканчивая HTML&CSS. Уроки представлены в виде статей.
YouTube-каналы
LearnCode.academy — здесь размещены англоязычные видеоролики на тему веб-разработки, созданные Уиллом Стерном. Просто тонны бесплатных пособий по JavaScript и другим языкам программирования, а также видео о самых популярных инструментах, применяемых разработчиками.
thenewboston — здесь вы найдете свыше 4000 видео по самым разным тематикам в программировании, начиная от разработки игр и заканчивая дизайном. Один из самых популярных англоязычных каналов с более, чем двумя миллионами подписчиков.
Derek Banas — особенностью данного англоязычного канала является сжатая информация о языках программирования в одном видео на каждый язык отдельно + есть и привычные туториалы.
ProgrammingKnowledge — данный англоязычный канал ориентирован на новичков, желающих изучить программирование. Пошаговые учебные плейлисты охватывают разные языки программирования.
Гоша Дударь — не отметить этого парня в русскоязычном YouTube было бы непростительно. Очень много уроков по очень многим языкам программирования, фреймворкам и не только. Отлично подойдет для новичков.
Хауди Хо — уклон больше сделан на разговорные и развлекательные видео, касающиеся темы IT и программирования, но также есть и уроки.
#SimpleCode — канал о программировании на C++ и C# с вкраплениями разговорных видео о программировании.
HTML & CSS
HTML Academy — целая академия по HTML, CSS и JavaScript. Интерактивный тур с заданиями, тестами, викторинами и просто отлично структурированными уроками, и материалом, который в них представлен. Сложность нарастает с прохождением уровней. Есть также курсы, интенсивы и «обучение профессиям» (но это уже платно).
HTML Book — отличный русскоязычный справочник по HTML.
CSS-Tricks — подробный разбор CSS в их большом и достаточно известном CSS-альманахе. Однако сейчас уже блог вышел за рамки обычного CSS и рассказывает о других технологиях, таких как Sass, JavaScript, PHP и пр. Зацените их сниппеты.
Learn to Code HTML & CSS — очень подробные уроки по созданию красивых и понятных сайтов. Рассматриваются различные нюансы и аспекты веб-разработки + jQuery + препроцессоры.
The Code Player — небольшие онлайн-туториалы по HTML5, CSS3, JavaScript и смежным технологиям с интерактивными вставками, которые покажут процесс создания интересных вещей с нуля. Хорошо подойдет для тех, кто хочет «набить руку», получить опыт и просто посмотреть, что можно сделать с помощью вышеуказанных технологий.
HTML Dog — туториалы по HTML, CSS и JavaScript. Есть градация по уровням, а также интерактивные примеры.
Mozilla Developer Network — бесплатная документация по HTML, CSS и JavaScript. Есть туториалы для людей с разными уровнями подготовки: от начального до продвинутого.
JavaScript
Современный учебник JavaScript — русскоязычная энциклопедия по JavaScript. Есть как бесплатные уроки по JS и смежным технологиям/фреймворкам, так и платные курсы. В Рунете данный ресурс является одним из лучших по теме JavaScript.
Learn JS — еще один интерактивный ресурс для изучения JavaScript. Есть встроенный редактор кода.
Красноречивый JavaScript — очень хорошая подробная онлайн-книга по JavaScript. Среди финансовых спонсоров есть Mozilla и Hack Reactor. Русский перевод здесь.
JavaScript для котов — это «одностраничная книга», которая разбита на разделы … с кошками. Создана программистом Максом Огденом.
Разработка мобильных приложений (Android, iOS)
Android Developers — официальный сайт для разработчиков приложений на Android. Здесь вы сможете узнать, как сделать свое первое приложение для Android, пройдя бесплатные туториалы и курсы.
Google Developers Training — бесплатные онлайн-курсы по программированию для начинающих и опытных разработчиков Android.
Начинайте разрабатывать приложения для iOS (Swift) — часть архива документации Apple. Идеальный старт для написания приложений для iOS.
Swift Playgrounds — приложение для iOS, которое позволяет изучать Swift через интерактивные мини-головоломки. Кроме того, можно посмотреть, как ваш код будет работать в трехмерном мире.
Python
A Byte of Python — бесплатная онлайн-книга для новичков, желающих научиться программировать на Python.
LearnPython.org — бесплатный самоучитель со встроенным редактором, где можно не только учить Python, но и попрактиковаться с написанием кода.
Data Science
Dataquest — курсы по Data Science и сопутствующим технологиям и языкам программирования (Python, SQL, R).
Springboard — интенсивное введение в анализ данных. Вы узнаете, как использовать и анализировать данные при помощи Python, SQL и языка программирования R.
Machine Learning
Google AI — обучайтесь Machine Learning у экспертов Google. Предлагают туториалы, курсы, видео и упражнения по теме искусственного интеллекта. Отлично подойдет как для новичков, так и для опытных специалистов.
Machine Learning Mastery — создано программистом и практиком машинного обучения Джейсоном Браунли. Бесплатные подробные уроки с возможностью выбора уровня сложности.
Ruby
Rails Tutorial — онлайн-книга, состоящая из 12 глав, написанная Майклом Хартлом, которая представляет собой туториал по Ruby on Rails.
RubyMonk — платформа с интерактивными уроками по Ruby. Есть встроенный редактор кода и разные уровни сложности для изучения материала.
Ruby за 20 минут — отлично подойдет для новичков, изучающих Ruby. В наличии текстовые мануалы и статьи по теме Ruby.
Git и GitHub
GitHowTo — отличный интерактивный самоучитель, который познакомит вас с основами Git.
Git Immersion — англоязычный аналог «экскурсии» по основам Git.
Try Git — серия интерактивных заданий для изучения и экспериментирования c Git.
Командная строка в Unix/Linux
Learn Enough Command Line to Be Dangerous — бесплатный учебник по командной строке для новичков. Основы командной строки в Unix/Linux, наличие предварительного технического опыта не требуется.
Conquering the Command Line — бесплатная онлайн-книга от Марка Бэйтса, который очень подробно освещает особенности работы с командной строкой в Unix/Linux.
Кибербезопасность
Cybrary — видео и обучающие материалы по IT и кибербезопасности. Охвачены такие темы, как криминалистика, криптография и анализ киберугроз. Есть возможность как бесплатного (базового) доступа, так и платного (с дополнительными возможностями и контентом).
Xakep.ru — известный русскоязычный журнал о кибербезопасности и новостях в сфере IT и программирования. Есть платная подписка.
UI/UX дизайн
Энциклопедия взаимодействия человека с компьютером — углубленная и состоящая из 52 глав энциклопедия по UI/UX дизайну. Охватывает всё, что вам необходимо знать о разработке интерактивных продуктов: веб-сайты, программное обеспечение, смартфоны и даже предметы домашнего обихода.
UXPin — огромное количество электронных книг и руководств по UX, охватывающих мобильную и веб-отрасли, модели, макеты, юзабилити-тестирование и многое другое.
Behance — популярная среди дизайнеров и иллюстраторов всего мира социальная медиа-платформа для демонстрации своих работ. Отлично подойдет для поиска референсов и прокачки «насмотренности».
WordPress
WPBeginner — сайт для начинающих пользователей WordPress. Великолепный словарь терминов + видеоматериалы и блог, где опубликованы полезные статьи от различных авторов.
WP-KAMA — отличный русскоязычный сайт, полностью посвященный WordPress. Просто тонны полезной информации + учебник + хуки + можно задать свой вопрос.
Форумы
CyberForum — один из самых популярных среди программистов и сисадминов форум в Рунете.
Клуб программистов — русскоязычный форум, на котором можно обсудить множество общих и конкретных вопросов по программированию на различных языках.
StackOverflow (на русском) — это крупнейший сайт вопросов и ответов для программистов.
Хабр Q&A (раньше Toster) — сайт вопросов и ответов по теме IT и программирования.
Практические задания
Edabit — вашему вниманию предлагаются сотни практических заданий различных уровней сложности по многим языкам программирования, которые вы можете решить.
LeetCode — это один из самых популярных ресурсов для подготовки к техническим интервью. Здесь размещены различного рода задания, проходя которые вы сможете прокачать свои навыки и лучше подготовиться к будущему собеседованию.
Exercism.io — данный ресурс является бесплатным и предлагает множество заданий для большинства популярных языков программирования. Есть градация по уровням сложности.
CheckiO — ресурс для начинающих и опытных программистов, в которых вы сможете улучшить свои навыки программирования, решая увлекательные задачи с помощью Python или TypeScript. Сайт отличается игровой манерой, стилем прохождения и приятной графикой.
CodinGame — изучайте новые концепции, решая увлекательные задачи на 25+ языках, посвященных всем актуальным темам программирования. Очень увлекательный процесс, который вы можете попробовать даже без регистрации.
Codewars — предлагает уникальный и вместе с тем забавный способ изучения программирования (в стилистике боевых искусств). Учебная программа построена на челленджах, называемых «kata». Пройдя их, вы зарабатываете очки для продвижения к более высоким рангам.
Другие ресурсы
JavaRush — это онлайн-курс обучения программированию на Java, который на 80% состоит из практики.
Refactoring Guru — данный ресурс посвящен рефакторингу, паттернам проектирования и принципам SOLID.
Habr — крупнейшая площадка об IT и программировании в Рунете. Также представлен контент, относящийся и к смежным с IT сферам: маркетинг, менеджмент, дизайн.
Tproger — сайт о программировании для программистов. Имеет одноименный («Типичный программист») паблик во Вконтакте. Юмор, новости, переводы и образовательные статьи.
Stepik — российская образовательная платформа и конструктор бесплатных открытых онлайн-курсов и уроков. Кроме программирования, представлено десятки других курсов на самые разные тематики.