2
Программирование — вторая грамотность
Член-корреспондент АН СССР
А. П. ЕРШОВ
Эта статья основана на выступлении автора на открытии конференции Международной Федерации по обработке информации и ЮНЕСКО «Применение ЭВМ в обучении» в Лозанне (Швейцария) в июле 1981 г. Текст выступления переработан специально для «Кванта».
Я сознаю, что сравнение программирования с грамотностью многим показателям рискованным. По одному сторону нашего сравнения — необичная профессия, требующая способности и длиного обучения, а по другую — общее достояние, важнейшее свойство современного человека.
Тем не менее я сразу постараюсь пояснить, чем это сравнение почтильно.
3
Прежде всего, не нужно забывать, что всеобщая грамотность существовала не испокон веков. Как и программарование, она имела свое предначало, возникновение и развитие. Мы привыкли к тому, что СССР — страна практической сплошной грамотности; а ведь 100 лет тому назад в России грамотных было лишь около 20%. Еще сейчас на Земле насчитывается порядка 800 млн. неграмотных.
Далее, как в основе всеобщей грамотности, так и в основе широкого распространения программы, лежит техническое изобретение: печатный станок и ЭВМ соответственно. Развитие и распространения книгопечатания привело к всеобщей грамотности. Развитие и распространения ЭВМ приведет к всеобщему программированию.
Так же как слова «грамотность», смысл которого теперь значительно шире, чем просто уменение писать и читать, слова «программирование», приобретает более широкое значение. Это не просто уменение писать программы для ЭВМ на каком-то специализном языке, а способность составлять четкие, целенаправленные правила действия в самых различных ситуациях. В этом широком смысле программы является такой же организаской способностью человека, как и грамотность. Эта способность подготовлена организацией нервной системы человека, она присула людям в труда, при обшенинии друг с другом, в созерцании природы и во взаимодействии с ней.
Наконец, хотя грамотность и programmaрование можно, конечно, всячеки сравнивать, находя между ними много аналогий, самое главное, пожалуй, состоит в том, что они дополняют другие другие и вместе составляют новое представление о гармонини человекауогоума.
На последнем тезисе стоит немного остановиться.
Мы все помним простые и емкие слова Максима Горького: «Любите книгу, источник знания». Мы понаем грамотность как способность выразить знания в виде текста. Однако остается проблема: как перейти от знания к действия. «Сообщайте
действия со словами, а слова с действием», говорит один из героев Шекспира. Вот здесь — в перехождение от знания к действия — и возникает programmaрование.
В докнижный период единство слова и дела осуществлялось естественно и понятно. Словами и примером грашший (учитель) обучал младшего (ученика) делу. Понимание было не чисто умственным озарением, а достижением поставленной цели, овладением приемами изучаемого дела.
Появление книги нанесло сильнейший удар единству слова и дела. Отделился процесс накопления знаний от их применения, появились новые формы жажды знаний и новые ошушения постжения истинны. Во всех языках образовались специальные выражения для людей, отделших предопочтение книг в своей стремлении к знанию. В этих выражениях былает оттенок пребрежения, в целом несправедливый, но иногда заслужебный.
Постепенно стало ясно, что книжное накопление знаний требует новых механизмов для превращения этих знаний в действие. Так, задача programmaрования появилась задолго до ЭВМ. Появление ЭВМ лишь сделало проблему programmaрования актуальной, так же как книгопечатание сделало актуальной проблему грамотности.
Но грамотность и способность к действию сами по себе еще ничего не знают. В этом противопоставлении трудно сказать от чего мы страдаем больше: от невежства или бездеятельности. Гёте предупредил: «Нет ничего страшнее деятельности». Однако опыт подсказывает, что оно произрастает при недостаточном активной жизниенной позиции образованных и культурных людей. Отсюда наше стремление к второй грамотности — не только к обучению писать команды, но к восприятию человека, решительного и предусмотрительного вместе.
Книгопечатание
Вернемся слова к отправной точке нашего сравнения — к книгопеча-
6
всегда работает в автоматическом режиме.
Повседневная жизнь человека, особенно городская — это деятельности по программам. Каждый человек, придерживающийся режима, с гордостью почувствует себя программистом, если представит себе свою обычную утреннюю последовательность действия, начиная от звонка будильника и кончаная началом работы.
Мы жалуемся на социальные болезни века, в частности — отстранность от общих дел, пассивность, ратуем за формирование активной жизниенной позиции. Что это такое? Попросту говоря, это способность выработать программу действия и следовать ей.
Таким образом, мир программи — это далеко не только начинка памяти ЭВМ. Это, прежде всего, огромный запас операционной знания. Это «действие знание» хранится в библиотеках программ для ЭВМ, в общих библиотеках, в генофонде всего живого. А используется оно как вычислительные машины, роботами, автоматических устройствами, так и живыми организациями, в частности, человека.
Do such пор многим кажется, что овладение программрованием должно начинаться с ознакомления с устройством какой-нибудь ЭВМ и кропотливого заучивания деталей записи программы для этой ЭВМ на каком-нибудь конкретном алгоритмическом языке. Без навыков, конечно, нельзя обойти нигде, но основные законы программрования, способы перехода от знания к действияю, организация действия в пространстве и во времени носит, на самом деле, гораздо более фундаментальной и общий характер, приближющий их к основным законам математики или речи и письма.
На меня всегда производит сильное впечатление один простой пример задачи на программирование, показывающий переход от знания к действияю. Я выпишу последовательные этапы перехода от формул, выражающий знание, к программе, выражающий действия, для задачи возвведения числа в целую степень :
если I IV
если четное если нечетное
степень если то 1
инначе если нет инначе все
Предлагаю каждому дать свое объяснение того, какие законы и какое значение здесь применяются при переходе от этапа к этапу, для того, чтобы перейти от очевидного знания к весма нетривиальной программы.
Вы почувствуете, что это, одновременно, и легкая и трудная задача, так как, с одной стороны, понятно, что делается, и, с другой стороны — трудно объяснить эти действия в общей форме.
Таким образом, перед нами стоит важнейшая задача — выработать общие принципы программрования, выделить в нем основные понятия и выразить в общейной форме. Такие задачи накапливаются, и это значит, что рано или поздно мир ЭВМ и программы соррикостей с миром шкoles.
ЭВМ в школе
Сейчас, после появления микропроцессоров, нет смысла ставить вопрос о том, быть или не быть ЭВМ в школе. ЭВМ уже есть во многих школах и будет приходит туда в нарастиших колчествах.
Часто активно высказывается мне, что ЭВМ с программой — это то же самое, что задача с известным решением; появление электронного помощика воспитает леность ума и ничего больше. Однако из лучших吻ристических картинок американского журнала «Нью Йоркер» изображет бедного Джонни, уныло глядящего на кучку карманных калькуляторов перед ним, и не менее измученную Маму, терпеливо повторяющий свой
7
Программисты за работой
воррос: «Ну, посмотри, если у тебя пять карманных калькуляторов и ты возьмешь от них два, сколько же останется?»
Эти предостережения описности «кнопочного» образования разделы и раныше. Оdnako многочисленный опыт обшення детей самых разных возрастов с ЭВМ подтверждает обратное: активность, питьливость, а с ними и способности возрастают очень сильно.
В нашей местной школе половина одного из классов вычили исторические данные наубок, после того как один из юных программстов вложил в ЭВМ диалогового программы, сообщающего исторические данные, а другой, подвергнуть учительницу экзамену с помощью ЭВМ, почти ее несколько раз на неточностях.
Какая-то компания выпустила на рыбок игру-компьютер, которая проверяет правильное английских слов. С помощью синтезатора речи слов произносится, ребенок набирает это слово по буквам, машина проверяет и реагирует. В карманную игру трудно вложить хороший синтезатор речи, но авторы обратили его недостаток в доступно, сделав его очень похожим на голос Буратино. Представляется себе восторг детей, когда игрушка пisiит им голосом Буратино: «Пробуй снова, пробуй снова, ты не знаешь это слово!»
Перед конкурсными вступительными экзаменами в одном изузов установили консультанную информациюную систему, реализованную на ЭВМ. Около терминалов всегда толпилась очередь. В интересах ребят рядом посадили двух преподавателей, чтобы разгрузить машину. Преподаватели сделали без дела, а у терминалов — по-прежнему очередь. Почему? «А мы не стесняемся перед машиной обнаружить свое незнание, а перед преподавателемстеяемся», — говорили ребята. ЭВМ создает игровую обстановку, которая тут ценней реализной жизни, — ведь из игры можно выйти не утратив достоинства.
Заключение
Я начал свою статью со сравнения. Сейчас мы можем раскрыть его конкретоное содержание. Мы стоим на пороге практических беспредельного развития и распространения электронной вычислительной техники в обществе. Машина становится интеллектуальным ordiem и партнером практических во всех сферах жизни и деятельности человека. Развитие мира программы, постоянное усложнение окружающей среды требуют и одновременного делают возможным значительное повышение интеллектуального силу человека.
Для того чтобы не затерять в этом стремительно развивающемся мире, мире удивительное технически и условияношихся программы, уже не хватает грамотности в традиционном ее смысле. Необходимо предолеть и рубеж, который я назвал рубежом второй грамотности. И, в первую очередь, это относится к учащимся.