8 мест, где можно учить кодинг, не выходя из дому
Для начала о грустном. Кто сталкивался – знает, что у многих курсов по программированию есть один изъян, берущий начало где-то в забытых уроках математики: с самого начала лектор вроде бы очень поступательно тебя готовит ко всем тонкостям, рассказывает целый урок историю персонального компьютера и языков программирования, учит (условно говоря), что 2*2=4. Затем кто-то переключает рубильник – и он внезапно переходит к практике, обрушивая на тебя лавину узкопрофильной терминологии, задач, к которым ты не был готов, слов, которые ты слышишь впервые, при этом говоря об этом так, будто бы все это знают даже первоклашки.
Все это к тому, что людям, далеким от кодинга, мы настоятельно рекомендуем кобминировать сразу несколько сервисов друг с другом. Некоторые из них заточены исключительно на практические задачки (при том обходятся они с тобой, как та же Codeacademy, довольно бережно), другие совмещают все это с теорией. Идеальный набор – это распланировать лекции и курсы, при этом поставив себе практические “тренажеры” на все доступные устройства – от ноутбука до смартфона. Что ж, теперь к делу.
Codecademy
Пожалуй, первая остановка в маршруте начинающего кодера.
Это не бездушный сайт, который размещает исключительно строгие курсы и задания, а еще и коммьюнити, разросшееся до порядка 25 миллионов людей, воспользовавшихся Codecademy. Некоторые их истории, если вы до сих пор сомневаетесь в том, стоит ли начать этим заниматься, можно прочесть прямо на сайте. Про двух девочек-подростков из Техаса, которые запустили курс «как запрограммировать калькулятор»; 55-летнюю женщину, переучившуюся на кодера; или ученую, изучающую человеческий разум через язык Python. Сервис идеально подходит для того, чтобы начать с нуля: здесь стартуют с очень коротких упражнений, после выполнения которых человек сразу видит результат своих действий. Затем система постепенно усложняет обучение и подстраивается под пользователя, советуя те или иные темы для обучения. Если нужна «база» по JavaScript, HTML, Python или Ruby – лучше места не найти.
Khan Academy
Некоммерческая «Академия Хана» содержит в себе курсы по разным дисциплинам – от математики до искусства исламского мира.
Но кодить здесь тоже можно научиться: есть достаточно сильные курсы «computer science» и «computer programming». Интересно будет как новичку (базисный HTML, введение в криптографию и создание простых веб-страничек), так и уже бывалому, скажем, расширяющему свои познания в JavaScript. Все в интерактивной форме: теория не идет вразрез с практикой и без сочинения кода не обойтись.
Treehouse
Этот сайт в большей степени ориентирован на тех, кому удобнее черпать информацию с помощью видеолекций и всяческих визуальных туториалов.
У проекта, помимо обучающих видео, была даже The Treehouse Show – еженедельная передача, в которой обсуждались последние новости и тенденции в мире программирования.
Это отличный способ очень быстро встроиться в контекст: в этой узкоспециализированной программе доступным языком рассказывали о всем, что нужно знать продвинутому кодеру вплоть до новомодных java-скриптов вроде TinySort. Сами ролики заботливо собраны в видеокурсы (причем есть не только кодинг, но и, например, IT-предпринимательство), после просмотра видео дают всяческие задания и квизы на прохождение. Правда, за весь этот полезный и красочный контент нужно порядочно заплатить: обучение в Treehouse обойдется в три-четыре сотни долларов.
Code School
Этот очаг знаний по кодингу отличает нестандартный подход к обучению. З
десь учебный процесс максимально геймифицирован: только когда пройдешь определенный уровень до конца, тебя пустят на следующий. Очки за выполнение заданий и «значки» тоже прилагаются. Набор максимально широкий: Ruby, JavaScript, HTML/CSS, разработка мобильных приложений для iOS и так далее. Безлимитный месячный доступ ко всем курсам стоит 29 долларов. А отдельного упоминания заслуживает их проект Ralis for Zombies – наверное, самый интересный способ изучать Ruby on Rails на данный момент.
Udacity
Если у вас не хватает внутренней дисциплины, чтобы обучаться самому, то можно попробовать тематические курсы на мегапопулярной Coursera или же Udacity. Удаленное онлайн-обучение с помощью этих проектов предполагает наличие учителя и четкого темпа учебного процесса, под который легко подстроиться. Для новичков идеально подойдет «азбука» – курс «Introduction to Computer Science».
Udacity – «породистые» курсы, созданные на базе Стэнфордского университета: то есть вы получаете почти университетские знания, но при этом не платите за них ни копейки.
Хотя на важные и серьезные курсы, разумеется, придется потратиться. Ну, и здесь, конечно, поощряется не точечное, а «прогрессирующее» обучение. К каждому курсу приклеена «шкала сложности» и, начав с нулевого уровня, лучше всего постепенно продвигаться дальше и дальше, чтобы получить более комплексные знания.
Code Avengers
Данный ресурс в большей степени заточен под экс-гуманитариев, которые захотели перепрофилироваться, но из-за стереотипов продолжают считать, что учиться коду – это что-то в духе вычислительных дебрей высшей математики. Уже заглавная страница предлагает решения, которые понравятся, например, бывшему рекламщику или журналисту: как научиться писать веб-странички, сочинять приложения или придумывать игры. А в конце урока – мини-игра на закрепление пройденных знаний.
HTML5 Rocks
Запущенный Google еще в 2010 году проект, в котором специалисты компании делятся опытом, накопленным сугубо по HTML5 – это совокупный термин, подразумевающий под собой все современные технологии веб-разработки.
Для новичков вряд ли подойдет: здесь уже предполагается наличие хоть какого-то бэкграунда.
Зато для тех девелоперов, которые уже хотя бы немного в курсе дела, здесь предостаточно полезной информации. Начиная от статей про «подстраивающиеся изображения» (responsive images) и апдейтов по теме, заканчивая тем, что HTML5 Rocks сама по себе – открытая площадка, в которой можно поиграть с кодом.
Онлайн-курсы от MIT
Массачусетский технологический институт – главная мечта «технаря» практически любого профиля. Естественно, здесь обучают и программированию с компьютерными науками. Причем толковые вводные курсы доступны целиком и полностью бесплатно. Мы советуем следующие: Introduction to Programming in Java, Introduction to Computer Science and Programming, Practical Programming in C.