Мы столкнулись с серьезным препятствием при разработке SpriteBox Coding, игры для обучения программированию для детей в возрасте от 5 лет. Для некоторых детей код был просто недоступен.

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

Проблема в том, что многие новички, как дети, так и взрослые, считают, что код сложен по своей сути просто потому, что он выглядит сложным. Нашей первой задачей стало: «Как сделать код дружелюбным?»

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

Мы показали это тестерам (детям и родителям), которые сказали нам то, что мы не хотели слышать: игра выглядит сложной. Текст сдерживал уверенность игроков и больше всего привел к путанице.

Мы не могли поверить в это. С нашей точки зрения, мы упростили код до того, что выглядит как простой английский. Когда мы спросили родителей, какой, по их мнению, будет целевая возрастная группа для приложения, мы получили ответы, согласно которым возраст от 9 до 10 лет и старше - намного старше той демографической группы, которую мы хотели охватить.

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

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

Кодировать сложно, потому что текст пугает.

На этом этапе мы хотели почерпнуть вдохновение из других образовательных игр. В частности, мы посмотрели на DragonBox Algebra: игру для обучения алгебре маленьких детей. Команда, похоже, обнаружила, что числа и переменные пугают их игроков, если их вводить на ранней стадии.

Следовательно, DragonBox Algebra начинает игроков с картинок и объясняет механику алгебры в среде, состоящей только из иконок. По мере прохождения игры эти картинки постепенно заменяются числами и переменными.

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

Мы задались вопросом, можем ли мы аналогичным образом смоделировать кодирование SpriteBox. Мы бы оставили только значки ранних игр ...

… Но переход к текстовому коду позже. Иконки просто были бы «выведены из употребления».

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

Так почему это работает? Мы считаем, что, сосредоточив внимание в первую очередь на значках, игрокам не нужно жонглировать изучением двух вещей одновременно, вместо этого сначала нужно изучить логику программирования, а потом - текстовое представление. Более того, когда вводится текстовый код, предыдущие знания игроков о механике игры укрепляют их уверенность при решении знакомых головоломок.

Может ли этот подход работать для других обучающих игр? Сколько еще детей мы могли бы заниматься математикой, естествознанием и программированием, используя сначала более простые визуальные эффекты и избегая текста до последней минуты?

ОБНОВЛЕНИЕ: SpriteBox Coding теперь на iOS и Android: spritebox.com