четверг, 2 июля 2015 г.

Почему всех детей следует учить программировать

Дж. Нотон. Почему всех детей следует учить программировать

Почему всех детей следует учить программировать

Распространяется согласие с тем, что способ, которым детей в школе учат вычислительной технике, нуждается в радикальном пересмотре. Проблему поясняет Джон Нотон, предложивший также манифест революционных действий.

Начинаются ожесточенные дебаты — как в правительственных, так и в других кругах — о том, что делать с предметом «вычислительная техника и связь» (ВТС) в школьных учебных планах. Различные организации — Академия наук, Ассоциация обучающей техники, «Вычислительная техника в школе» (самодеятельное объединение неравнодушных учителей) и Британское компьютерное общество, если назвать лишь четыре, — публикуют отчеты и материалы к обсуждению, адресованные министрам и Министерству образования. Сам министр образования Майкл Гоув выступил на недавней конференции BETT по технике с интригующей речью, доказывающей, что бурление мозгов имеет место и в Уайтхолле. А в это время в других местах происходят поразительные вещи. Например, на «Raspberry Pi» (дешевый компьютер размером с кредитную карту, разработанный маньяками из Кембриджа и поступивший в продажу неделю назад) уже подано более миллиона заявок.

Таким образом, что-то происходит: возникает ощущение сдвига тектонических плит. Но, как и в большинстве больших политических дебатов, здесь точатся топоры и продвигаются особые интересы. Университеты хотели бы обратить вспять тенденцию к уменьшению слушателей лекций по информатике. Игровым компаниям нужны дополнительные программисты. Правительству хочется больше высокотехнологичных молодых компаний. А завучи требуют увеличения бюджетов для оборудования дополнительных компьютерных классов.

Чего здесь не хватает, так это ви́дения целого. Предлагаю свой вариант:

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

Чуть ниже мы разберем, почему это важно, и почему необходимо заняться этим сейчас. Но сперва мы должны осознать печальный факт. Практически все, что мы делали в области ВТС в британских школах последние два десятилетия, было ошибочным и по большей части напрасным. Вместо того, чтобы давать детям образование, связанное с самой революционной техникой времени их юности, мы сосредоточились на натаскивании их в пользовании устаревающими компьютерными программами. Эта наша ошибка связана с тем, что философ Гильберт Райл назвал «категориальной подменой»: ошибкой, при которой вещи одного вида считаются принадлежащими к другому. Мы совершили эту ошибку, сочтя, что изучение вычислительной техники подобно освоению вождения автомобиля, и что поскольку знание об устройстве двигателей внутреннего сгорания не является необходимым для хорошего вождения, то и понимание того, как работает компьютер, не важно для наших детей. Эту категориальную подмену венчает раздутый «диплом» под названием «Европейские права на вождение компьютера».

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

Так что нам приходится признать, что предмет «ВТС в школе» дискредитировал себя. Мы должны заменить его предметом, который является важным, интеллектуально зрелым и повышающим качество жизни студентов. В отсутствие лучшего названия, назовем его информатикой. Это обобщающий термин, объединяющий две разные области. Первая — это набор ключевых понятий, необходимых школьникам для понимания сетевого мира, в котором они растут. А второе — это новый способ мышления о решении задач: он называется программистским мышлением и связан с пониманием разницы между человеческим и искусственным интеллектом, а также с рекурсивным мышлением, осведомленностью о необходимости осторожности, выявлением рисков и защитой от них, применением абстрагирования и декомпозиции при решении масштабных задач, а также эвристических рассуждений, итерации и перебора при поиске решений сложных задач.

Предстоит масса интересных дискуссий о ключевых понятиях, которые должны понимать учащиеся, но приведу возможный их перечень для начинающих. Дети должны узнать: об алгоритмах (математических рецептах, из которых составляют программы); о криптографии (способах защиты конфиденциальных сведений в сети); о машинном интеллекте (способах предсказания такими службами, как «YouTube», «NetFlix», «Google» или «Amazon», ваших интересов); о вычислительной биологии (способах работы генетического кода); о рекурсии (методе, при котором решение задачи зависит от решений той же самой задачи с меньшими значениями параметров) и об эвристике (основанных на предшествующем опыте приемах решения задач, обучения и поиска).

Если эти понятия кажутся большинству читателей загадочными, так это потому, что мы живем в мире, зашоривающем нас. В этом смысле, «две культуры», о которых писал Ч. П. Сноу, никуда из Великобритании не делись. А если вы думаете, что они слишком сложны, чтобы учить им маленьких детей, так это потому, что никогда не видали, как с ними работают способные и наделенные воображением учителя. На самом деле, многие тридцатилетние британские читатели сталкивались с рекурсией; ведь когда-то во многих британских школах учили языку программирования лого, позволяющему детям понять, как механической черепашке можно дать инструкции к выполнению сложных маневров. Но в конце концов большинство таких школ бросили преподавать лого и откатились к натаскиванию детей на пользование «Майкрософт уорд».

Кстати, история с лого хорошо иллюстрирует, почему обучение детей написанию компьютерных программ должно стать неотъемлемой частью любого нового учебного плана по информатике. Причина в том, что нет лучшего способа помочь кому-либо понять такие идеи, как рекурсия или алгоритмы, чем дать им написать код, реализующей эти идеи. Вот почему вошедшая в моду мантра «программирование это новая латынь» так вредна и глупа. Она подразумевает, что программирование является увлекательным, но в сущности бесполезным и необязательным умением. Латынь — интересный, но мертвый язык; компьютерные программы это эсперанто сетевой жизни — а также, как оказывается, и генетического воспроизводства.

Другая ошибка, постоянно всплывающая в нынешних дебатах о новом учебном плане, заключается в том, что под него в качестве основного подводят прагматическое основание: нам-де нужно больше понимающих эти штуки ребят, поскольку постоянного притока ребятишек, заинтересовавшихся компьютерами, требуют наши «творческие» отрасли. Это, разумеется, так, но это не главная из причин, по которым наша система образования нуждается в радикьных переменах.

Важнее всего не экономические, но нравственные основания этих перемен. Они заключаются в том, что не приступая к ним, мы обделяем собственных детей. Они живут в мире, определяемом физикой, химией, биологией и историей, поэтому мы хотим, чтобы они все это понимали, и правильно делаем. Но мир, в котором предстоит жить, будет оформляться и определяться также объединенной в сети вычислительной техникой, и не получив глубокого понимания этих вещей, они останутся интеллектуально ущербными. Они вырастут пассивными потребителями закрытых устройств и услуг, ведя жизнь, все больше ограниченную пределами техники, созданной элитой, работающей в крупных корпорациях, таких как «Google» или «Facebook». В итоге мы породим поколения хомячков, крутящихся в сверкающих колесах в клетках, построенных Марком Цукербергом и подобным ему типам.

Этого ли мы хотим? Разумеется, нет. Поэтому, давайте с этим бороться.

Комментариев нет:

Отправить комментарий

Related Posts Plugin for WordPress, Blogger...
Наверх