Средневековые бароны и их потомки ушли в небытие, считать и писать научился каждый, а у секретарей появились новые хозяева и новые обязанности.
То же должно произойти и с программированием: руководители, не имеющие представления об ЭВМ и программировании, уйдут в небытие, профессиональные программисты станут системными аналитиками и системными программистами, а программировать сумеет каждый, что я и называю второй грамотностью.
Таким образом, мы переходим от мира машин к миру программ.
МИР ПРОГРАММ
Герой Мольера, месье Журдэн, был в высшей степени удивлен, когда узнал, что всю жизнь говорил прозой, не подозревая этого. Благодаря появлению ЭВМ и вызванному этим появлением возникновению вычислительной науки, или информатики, человечество оказывается в положении месье Журдэна, с удивлением обнаруживая, что оно живет в мире программ и что продуктивность информационных моделей внешнего мира придает новый смысл библейскому высказыванию «Вначале было слово».
Да, мы живем в мире программ, и сами постоянно программируем, не сознавая этого.
Можно спорить о том, что является самым выдающимся открытием ХХ века. Но если взять первую пятерку, даже первую тройку открытий, то, думаю, можно будет уговорить каждого, что в этот узкий круг входит открытие того, что развитие организма есть выполнение генетической программы, записанной в его генном наборе. Не имея возможности говорить об этом подробно, хотел бы только заметить, что использование программистских терминов является не метафорой, а выражает суть внутриклеточных процессов роста и развития, по отношению к которым молекулярные структуры и химические процессы являются своего рода элементной базой и способом реализации микрокоманд.
Программами буквально напичкан наш организм. Все без исключения физиологические процессы — это огромная, тщательно отлаженная и сложно устроенная библиотека программ, в которой анализ структуры программ (программисты сказали бы «граф вызовов») и информационных связей позволяет делать далеко идущие выводы и прогнозы о поведении организма.
Практически вся область производственных отношений, особенно непосредственно в производственном процессе, — это работа по программам. Устойчивый производственный процесс всегда внутренне формализован, его эффективность зависит от степени отлаженности программ, выполняемых людьми. Даже если процесс стохастичен (например, охота или вождение автомашины), случайность и непредсказуемость сказывается лишь на выстраивании цепочки ситуаций, но не на реакциях на эти ситуации, которые осуществляются по программе, почти всегда выполняемой в автоматическом режиме.
Даже обучение, то есть приобретение знаний или, скорее, способности что-то сделать, — это программирование. Лет десять назад профессор Массачусетского технологического института Сеймур Пейперт, один из первых психологов и педагогов, взявший на вооружение концепции программирования, в серии своих работ убедительно показал, что ребенок научается что-то делать только после того, как он поймет, как это делается. Только после выработки такого понимания повторная тренировка достигает успеха. Заметим, что это касается не только программ, представляющих собой цепочки логических реакций на заранее известные стимулы, но и программ реального поведения, включая всяческую моторику (спорт, музыка, игры и т.п.).
Повседневная жизнь человека, особенно городская, — это деятельность по программам. Каждый человек, придерживающийся режима, с гордостью почувствует себя программистом, если вспомнит свои заполненные до предела утренние процедуры, начиная от звонка будильника и кончая началом работы. Поразмышляйте над процедурой уборки в квартире, и вы увидите, что разработка этой программы сделает честь любому профессиональному программисту — составителю пакетов прикладных программ.
Мы жалуемся на социальные болезни века, в частности абсентеизм, пассивность, ратуем за формирование активной жизненной позиции. Что это такое? Попросту говоря, это способность выработать программу действия и следовать ей.
Таким образом, мир программ — это далеко не только начинка памяти ЭВМ. Это прежде всего огромный запас операционного знания, накопленный человечеством и теперь лишь актуализируемый вычислительными машинами, роботам, автоматическим устройствам. Еще более огромный запас программ хранится в генофонде всего живого: его расшифровка и использование в значительной степени составляют предмет биологии и ее новых разделов, включая генную инженерию. Психология развития и теория поведения тоже в значительной степени формируют новые представления, сближающиеся с понятиями программирования.
Но если это так, то мы естественно приходим к проблеме фундаментализации программирования, выделению в нем некоторых «натуральных» сущностей, позволяющих сблизить мир машин и мир живого, программы природы и программы, составленные человеком. Если же мы хотим сделать эти натуральные сущности осознанным достоянием человека, то у нас нет иного пути, как отразить их в структуре и содержании всеобщего образования.
Хотелось бы подчеркнуть, что речь идет не о том, чтобы навязать детям новые, несвойственные им навыки и знания, а о том, чтобы проявить и сформулировать те стороны мышления и поведения, которые реально существуют, но формируются стихийно, неосознанно.
Рассмотрим, каковы же предпосылки и препятствия к осуществлению этого плана?
ОБЩАЯ ЗАДАЧА ОБУЧЕНИЯ ПРОГРАММИРОВАНИЮ
Итак, мы хотим учить детей законам программирования. Еще не зная их, мы понимаем, что они неизбежно будут выражены в сумме некоторых достаточно специфических приемов. Нам еще предстоит разбираться, в какой мере они посильны детям, но общие наблюдения таковы, что интеллектуальный и операционный потенциал детей далеко не исчерпан. Посмотрите, как помолодели за последние годы технические виды спорта, в особенности, плавание, гимнастика. Не знаю, как на Западе, но у нас автомашины еще дороги и люди зачастую накапливают деньги для их покупки, когда уже, как говорится, лучшие годы позади. Многие с горечью спрашивают, сколько жизней, потерянных из-за дорожных происшествий мы сберегли бы, если бы все без исключения научились водить машину в 14-15 лет.
Нет, однако, никакой возможности нагружать детей конденсатом всего жизненного опыта, которым обогащено человечество. В этих попытках нас подстерегают и другие опасности. Каждый человек в СССР знает детскую песенку, которую поет Алла Пугачева, о горестной жизни школьника:
Нагружать все больше нас
Стали почему-то.
Нынче в школе первый класс
Вроде института.
Не бываю я нигде,
Не дышу озоном,
Занимаюсь на труде
Синхрофазотроном.
То ли еще будет,
То ли еще будет,
То ли еще будет, ой-ой-ой.
Все также знают романтическую историю Р. Киплинга о Маугли, мальчике, выросшем у волков, а потом вернувшемся к людям. В теплых странах похожие вещи иногда случались, но с гораздо более печальным исходом, и психологи называют "эффектом или синдромом Маугли" невозможность для ребенка восстановить свои позитивные возможности, погубленные чужеродной средой или перенапряжением душевных сил в раннем детском возрасте.