
В PS 100 на Кони-Айленде нет средств на обновление медленных ноутбуков компьютерной лаборатории 2009 года выпуска. Конечно, нет финансирования для сложных программируемых роботов, которыми смогут управлять дети. И тем не менее, на этой неделе 50 студентов PS 100 впервые получили опыт написания и отладки собственных программ, а также создания робота – хотя и необычного – выполняющего их код.
Входит робот Бен
Я пришла в класс г-жи Федер в рамках «Часа программирования», инициативы, начатой некоммерческой организацией Code.org, которая приглашает детей и взрослых всех возрастов провести один час за программированием во время декабрьской Недели компьютерного образования. Для многих это первый опыт программирования. Акцент делается на доступных и легких задачах, благодаря которым у новых программистов может возникнуть ощущение, что программирование - для них.
Представляясь каждому классу, я объяснил, что взял с собой друга , «Робота Бена», с которым они вскоре встретятся. («Некоторые люди говорят мне, что мы очень похожи», - признался я.)
Учащиеся сформировали группы по три человека, и я раздал карточки с инструкциями, которые они могли использовать, чтобы приказать роботу Бену двигаться вперед, повернуться и взять свой блок питания, который очень похож на мой рюкзак. Что касается карточек, я взял свою копию превосходной настольной игры Дэна Шапиро «Черепахи-роботы», перепрофилировав карты «выполнения функции», на которых изображен робот-черепаха, едущая на спине лягушки, в карты «подбора предметов».

Тогда пришло время привлечь робота Бена. Я вышел из комнаты, и вошел Робот Бен с напряженными руками и походкой. Ровным и механическим голосом, напоминающим Одри 2 из телешоу 80-х годов «Маленькое чудо», робот Бен представился ученикам.
Робот Бен объяснил, что ему нужна их помощь, чтобы добраться до своего рюкзака, расположенного неподалеку на полу. Каждый шаг вперед перемещал его к следующей плитке линолеума; каждый поворот налево или направо заставлял его смотреть на другую стену. Он «перезагрузил» себя до стартовой плитки и направления и запросил их команды.
Понимать вещи буквально
Учащиеся начали с выбора по одной карточке с инструкциями. Неизбежно были повороты в неправильном направлении: робот Бен делал то, что ему говорили, независимо от того, было ли это намерением ученика. Точно так же, как Сеймур Пейперт описывает наблюдение за студентами, отлаживающими логотип, некоторые ученики начали вставать и поворачивать тела влево и вправо, чтобы увидеть, что эти команды будут означать с точки зрения робота Бена.
Ученикам удалось - под руководством г-жи Федер и двух замечательных помощников 5-го класса - проводить робота Бена к его аккумулятору и приказывать ему взять его и надеть, команда за командой. Теперь, когда они поняли основные идеи, они перешли к сборке наборов из двух и трех команд подряд, при этом робот Бен стартовал на расстоянии одного-двух квадратов от силового агрегата, но повернул не в ту сторону.

Один из самых знаменитых моментов наступил, когда роботу Бену было приказано поднять блок питания, но когда он оказался не в том месте: послушно, он выполнял все те же движения, как если бы блок питания был там. Это дало отличный способ обсудить, как компьютеры и люди, выполняющие любой набор шагов, должны выполнять эти шаги в точности так, как они написаны.
Наследие логотипа
Когда я впервые начал программировать в 7 лет, я использовал Logo, замечательную среду программирования от Массачусетского технологического института. В Logo вы приказали треугольнику под названием «черепаха» двигаться вперед, поворачиваться и повторять действия, и все это время рисуется линия, пока черепаха движется.

Если мои упражнения по программированию на PS 100 звучат похоже, то это потому, что ДНК Logo все еще жива с нами. Code.org, Scratch от MIT и Pencilcode, три самых популярных способа для детей начать программировать, заимствуют многие идеи Logo и расширяют их новыми, графически привлекательными способами.
В центре логотипа лежит идея о том, что Черепаха имеет собственное внутреннее чувство направления: вы можете приказать ей двигаться вперед, ожидая, что она будет двигаться вверх по экрану, но если она указывает влево, она пойдет левый. Один из создателей Logo Сеймур Пейперт в своей книге «Mindstorms» 1980 года подчеркнул, что вся суть именно в такого рода ошибках.
Возможно, с алгоритмом что-то не так, но с учеником - нет. Студенты быстро узнают, как легко алгоритмы сбиваются с пути. Они учатся тестировать, пересматривать и тестировать снова. Они узнают, что исправление ошибок в их методе - естественная часть обучения черепахи (или робота Бена) поступать правильно.
Редакция
Самое лучшее в этом упражнении заключалось в том, что, если шаг был неправильным, дети не пожимали плечами с чувством неудачи - они вскакивали от волнения и бросались пересматривать свои алгоритмы, чтобы отразить то, что они сделали. я бы научился.
Мы закончили урок, поделившись мыслями о том, что удивило и что ученикам нужно было сделать, чтобы робот Бен реагировал так, как они хотели. Они хотели сами быть роботами, поэтому учителя по очереди давали команды, а ученики с энтузиазмом следовали им - даже когда это означало врезаться в стену или воспринимать инструкции абсурдно буквально. Последняя команда заключалась в том, чтобы выйти из класса всем программистам.