Alexander Lashkov
6 723

Microsoft запускает игру для обучения программированию Code Hunt

Исследовательское подразделение Microsoft Research выпустило браузерную игру Code Hunt, при помощи которой пользователи могут изучать программирование. Для того, чтобы перейти на следующий уровень, игрок должен написать определенный программный код. О запуске проекта сообщается в блоге компании.

После запуска Code Hunt пользователям демонстрируются участки кода, которые необходимо модифицировать так, чтобы получить требуемый результат. Изучать таким образом можно языки программирования Java и C#. За решенные задачи начисляются очки, причем учитывается не только корректность решения, но и его «элегантность» — например, если нужного результата удастся добиться с помощью меньшего числа строк кода, игрок получит больше очков. Для большей реалистичности интерфейс игры имитирует привычные программистам среды разработки.

Как говорится в сообщении компании, подход к обучению, предлагаемый в Code Hunt, отличается от стандартного.

Вместо того, чтобы просто давать участникам игры какие-то задачи, а затем «прогонять» созданные ими с нуля решения через заранее определенные тестовые сценарии, Code Hunt предлагает пользователям набор постоянно меняющихся тестов и уже написанный код для отладки. Таким образом, обучение программированию становится «побочным продуктом» решения проблемы, которая представлена паттерном из входных и выходных данных.

Code Hunt основана на разработанном в Microsoft Research средстве анализа кода Pex и работает на Microsoft Azure. Участвовавшие в разработке игры исследователи Николай Тильман, Джудит Бишом, Найджел Хорспул, Дэниел Перелман и Тао Зи (Tao Xie) выпустили документ с описанием процесса работы над проектом.

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

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

Microsoft Research утверждает, что во время прохождения Code Hunt игроки освоят самые разные темы, связанные с программированием: алгоритмические и условные операторы, строки, циклы и алгоритмы сортировки. Разнообразие заданий должно сделать игру интересной и для более опытных программистов, которые также смогут почерпнуть для себя что-то новое.

Игроки могут не только выполнять стандартные задания, но и разрабатывать собственные уровни в разделе игры Extras. Также существует возможность прохождения уровней, разработанных другими пользователями Code Hunt. Весь код, используемый в игре, доступен по лицензии, которая позволяет использовать его для организации открытых и закрытых соревнований по программированию.

#microsoft #программирование #обучение #геймификация #Code_Hunt

Статьи по теме
Девять сервисов для обучения программированию
Facebook начал прием заявок в программу помощи разработчикам FbStart
{ "author_name": "Alexander Lashkov", "author_type": "self", "tags": ["microsoft","\u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435","\u043e\u0431\u0443\u0447\u0435\u043d\u0438\u0435","\u0433\u0435\u0439\u043c\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044f","code_hunt"], "comments": 15, "likes": 15, "favorites": 1, "is_advertisement": false, "section_name": "default", "id": "3812", "is_wide": "1" }
{ "is_needs_advanced_access": false }

Комментарии Комм.

Популярные

По порядку

0

Прямой эфир

Подписаться на push-уведомления
[ { "id": 1, "label": "100%×150_Branding_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "ezfl" } } }, { "id": 2, "label": "1200х400", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "ezfn" } } }, { "id": 3, "label": "240х200 _ТГБ_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fizc" } } }, { "id": 4, "label": "240х200_mobile", "provider": "adfox", "adaptive": [ "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "flbq" } } }, { "id": 5, "label": "300x500_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "ezfk" } } }, { "id": 6, "label": "1180х250_Interpool_баннер над комментариями_Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "bugf", "p2": "ffyh" } } }, { "id": 7, "label": "Article Footer 100%_desktop_mobile", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fjxb" } } }, { "id": 8, "label": "Fullscreen Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fjoh" } } }, { "id": 9, "label": "Fullscreen Mobile", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "bugf", "p2": "fjog" } } }, { "id": 10, "disable": true, "label": "Native Partner Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyb" } } }, { "id": 11, "disable": true, "label": "Native Partner Mobile", "provider": "adfox", "adaptive": [ "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyc" } } }, { "id": 12, "label": "Кнопка в шапке", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "p1": "bscsh", "p2": "fdhx" } } }, { "id": 13, "label": "DM InPage Video PartnerCode", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox_method": "create", "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "bugf", "p2": "flvn" } } }, { "id": 14, "label": "Yandex context video banner", "provider": "yandex", "yandex": { "block_id": "VI-223676-0", "render_to": "inpage_VI-223676-0-1104503429", "adfox_url": "//ads.adfox.ru/228129/getCode?pp=h&ps=bugf&p2=fpjw&puid1=&puid2=&puid3=&puid4=&puid8=&puid9=&puid10=&puid21=&puid22=&puid31=&puid32=&puid33=&fmt=1&dl={REFERER}&pr=" } }, { "id": 15, "label": "Плашка на главной", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "p1": "byudx", "p2": "ftjf" } } }, { "id": 16, "label": "Кнопка в шапке мобайл", "provider": "adfox", "adaptive": [ "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "p1": "byzqf", "p2": "ftwx" } } } ]