Навчіться програмувати граючи. Шість безкоштовних ресурсів
Останні роки по всьому світу спостерігається бум вивчення програмування.
Програміст – одна з найбільших затребуваних професій, а вміння програмувати - значна перевага для будь-якого резюме. Крім того, це ще й дуже цікаве вміння, яке може опанувати кожен.
Ці безкоштовні ресурси допоможуть навчитися основам програмування граючи в ігри або навіть створюючи їх.
ДЛЯ ПОВНИХ НОВАЧКІВ
Ці три гри зможуть опанувати як діти, так і дорослі, адже дають саме початкові навички програмування.
CodeCombat.com
CodeCombat.com – розробники цієї гри пропонують вчитися, збираючи скарби і перемагаючи супротивників, у найкращих традиціях RPG (жанр рольових комп'ютерних ігор).
У грі програмний код виступає у ролі заклинань та ігрових дій чарівника або воїна, якого користувачеві і належить "прокачати".
При цьому протягом гри користувачі навчаться всім базовим концепціям "дорослого" програмування.
Крім класичного одиночного режиму користувачам доступна можливість гри з іншими гравцями. Всі базові рівні CodeCombat доступні безкоштовно.
Scratch Harvey Mudd
Scratch Harvey Mudd – чудовий масовий онлайн-курс основ програмування від фантастичної викладачки коледжу Harvey Mudd.
За допомогою навчальної мови програмування Scratch, яка була розроблена у Массачусетському технологічному інституті, слухачі зможуть навчитися створювати власні ігри, анімації, інтерактивні історії та ділитися ними в Інтернеті.
Цей курс створенний саме для введення новачків у інформатику. Починаючи з основ, завдання будуть ускладнюватися і кидати вам нові виклики.
Code.org/learn
Code.org/learn - в рамках проекту всім бажаючим пропонується пройти цікаві короткі онлайн-уроки, що навчать вас та ваших дітей основам-основ програмування. Автори зазначають, що їх завдання здатні виконати діти 4-104 років.
Вправи виконані в антуражі "Зоряних війн", популярних мультфільмів та ігор (наприклад, Майнкрафт), що зробить навчання максимально захоплюючим.
ДЛЯ ТИХ, ХТО ВЖЕ ЗНАЄ АЗИ ПРОГРАМУВАННЯ
Якщо ви подужали перші три програми, то у вас точно є початкові навички, а значить матимете беззаперечну перевагу перед іншими учасниками у цих іграх.
Checkio
Checkio – це навчальний сервіс з багатьма елементами гри, "світ" якої складається з "островів", цікавих завдань та змагань з іншими учасниками.
Для того, щоб перейти на наступний рівень у грі необхідно у вбудованому програмному середовищі створити код, який вирішить певну задачу.
Крім того, учасники гри з усього світу змагаються між собою для того, щоб визначити, чий код найкращий.
Приємно, що проект, який дозволяє покращити свої навички програмування із задоволенням, – український.
Його офіційно підтримує Python Foundation, а провідні IT-компанії світу пильно слідкують за "гравцями" цього ресурсу для того, щоб найкращих із них запросити до себе на роботу.
Empireofcode.com
Empireofcode.com – це IT-гра про Космос від розробників попереднього стартапу.
Цікаво те, що навчання можна розпочинати без наявності навичок програмування, хоча досвідчений гравець зможе відразу писати оптимальні програми, які будуватимуть більш ефективні космічні ферми та покращувати їх захист.
Розробники стверджують, що їхня гра – це мікс стратегії, тактики та кодингу, тому навіть досвідчені програмісти отримають задоволення від проходження рівнів і побудови своєї космічної імперії.
Codewars
Codewars – для того, щоб зрозуміти суть цього сайту з елементами гри, треба знати, що ката – це заздалегідь визначена послідовність прийомів у японських бойових мистецтвах.
Автори проекту використовують цей термін для позначення завдання із написання коду, яке допомагає програмісту покращити свої навички.
Codewars містить архів ката – тренувальних завдань для програмістів. Гравець обирає цікаве завдання і намагається його вирішити. У разі успіху він має змогу побачити приклади розв’язків від майстрів справи.
Завдання достатньо прості і займають від 5 до 20 хвилин часу, проте з підвищенням складності вимагають все глибших знань алгоритмів та програмування.
Серед мов програмування користувачам доступні Python, JavaScript, Ruby, Java, Haskell та деякі інші.