Программирование — вторая грамотность - [5]

Шрифт
Интервал

Нет, однако, никакой возможности нагружать детей конденсатом всего жизненного опыта, которым обогащено человечество. В этих попытках нас подстерегают и другие опасности. Каждый человек в СССР знает детскую песенку, которую поет Алла Пугачева, о горестной жизни школьника:

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

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

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

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

Законы программирования, законы обработки информации, по моему убеждению, существуют. С одной стороны, они появляются в форме операционных правил, отражающих непосредственный опыт человечества. Все мы знаем знаменитое римское изречение «Разделяй и властвуй», воспринимая его, главным образом, как образец политического цинизма. Однако лишь только современная математика и программирование придали ему (в виде метода ветвей и границ) совершенное выражение мощного по своей силе и продуктивности эвристического принципа решения задач. Каким бы случайным этот пример ни оказался, он иллюстрирует важное положение о глубокой и нерасторжимой связи операционного знания и алгоритмического мышления с другими компонентами образования.

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

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

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

ЭВМ В ШКОЛЕ

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

Есть, конечно, очень активно высказываемое мнение, что ЭВМ с программой это то же самое, что и задача с известным решением, и появление электронного помощника воспитает леность ума и ничего больше. Одна из лучших, на мой взгляд, юмористических картинок последних лет (журнал «Нью-Йоркер») изображает бедного Джонни, уныло глядящего на кучку карманных калькуляторов перед ним, и не менее измученную маму, терпеливо повторяющую свой вопрос: «Ну, посмотри, если у тебя пять карманных калькуляторов, и я возьму два, то сколько у тебя останется?..»

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

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

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


Рекомендуем почитать
Обратные вызовы в C++

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


Изучаем Java EE 7

Java Enterprise Edition (Java EE) остается одной из ведущих технологий и платформ на основе Java. Данная книга представляет собой логичное пошаговое руководство, в котором подробно описаны многие спецификации и эталонные реализации Java EE 7. Работа с ними продемонстрирована на практических примерах. В этом фундаментальном издании также используется новейшая версия инструмента GlassFish, предназначенного для развертывания и администрирования примеров кода. Книга написана ведущим специалистом по обработке запросов на спецификацию Java EE, членом наблюдательного совета организации Java Community Process (JCP)


Геймдизайн. Рецепты успеха лучших компьютерных игр от Super Mario и Doom до Assassin’s Creed и дальше

Что такое ГЕЙМДИЗАЙН? Это не код, графика или звук. Это не создание персонажей или раскрашивание игрового поля. Геймдизайн – это симулятор мечты, набор правил, благодаря которым игра оживает. Как создать игру, которую полюбят, от которой не смогут оторваться? Знаменитый геймдизайнер Тайнан Сильвестр на примере кейсов из самых популярных игр рассказывает как объединить эмоции и впечатления, игровую механику и мотивацию игроков. Познакомитесь с принципами дизайна, которыми пользуются ведущие студии мира! Создайте игровую механику, вызывающую эмоции и обеспечивающую разнообразие.


Перевод в электронный формат, кодированные наборы шрифтов и система Оптического Распознавания Символов для многошрифтовых информационных ресурсов на примере “Летописи журнальных статей”

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


Java 7

Рассмотрено все необходимое для разработки, компиляции, отладки и запуска приложений Java. Изложены практические приемы использования как традиционных, так и новейших конструкций объектно-ориентированного языка Java, графической библиотеки классов Swing, расширенной библиотеки Java 2D, работа со звуком, печать, способы русификации программ. Приведено полное описание нововведений Java SE 7: двоичная запись чисел, строковые варианты разветвлений, "ромбовидный оператор", NIO2, новые средства многопоточности и др.


Обработка событий в С++

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