РЕВОЛЮЦИЯ НАЧИНАЕТСЯ
Свою первую программу я написал в 13 лет – для игры в крестики-нолики. Компьютер, с которым я тогда работал, был медлительным и громоздким, но очень притягательным.
Приучать подростков к компьютеру – такая идея возникла в Клубе матерей в Лейксайде, частной школе, где я учился. На выручку от благотворительного базара купили терминал и компьютерное время. Дать школьникам поработать с компьютером в конце шестидесятых – для Сиэтла это было что-то! Такое не забывается!
У нашего терминала не было экрана. Нам приходилось набирать свои ходы на клавиатуре, похожей на пишущую машинку, и терпеливо дожидаться результатов – бумажной ленты, выползавшей из натужно грохотавшего печатающего устройства. Мы все толпились вокруг этой ленты, чтобы узнать, кто победил, или придумывали следующий ход. Игра в крестики-нолики, на которую обычно уходит едва ли секунд тридцать, занимала большую часть обеденного перерыва. Но кого это волновало? Было в этой машине что-то такое, что неодолимо притягивало.
Впоследствии я, кажется, понял причину нашего увлечения. Представьте: вот сложнейшая, дорогая «взрослая» машина, а мы, юнцы, умеем ею управлять. Мы были слишком малы, чтобы водить автомобиль или заниматься чем-то еще интересным, чем обычно занимаются взрослые, зато могли отдавать этой огромной машине приказы, и она всегда подчинялась. Компьютеры хороши тем, что Вы тут же узнаете, правильна Ваша программа или нет. Иначе говоря, здесь проявляется четкая обратная связь, которой трудно добиться в других вещах. Вот так и началось мое увлечение программированием. И по сей день я, как в детстве, волнуюсь, правильно ли я сделал программу, будет ли она работать – именно так, как я задумал.
Когда нам стали доверять, мы смогли чаще вертеться возле компьютера, сочиняя более быстрые программы и усложняя игры. Один из моих друзей по Лейксайду составил программу на Бейсике, которая имитировала игру в монополию. Бейсик (Beginner’s All-purpose Symbolic Instruction Code – универсальный символьный программный код для начинающих), как и говорит его название, сравнительно простой в освоении язык программирования, на котором мы разрабатывали все более сложные программы. Благодаря ему мы поняли, как заставить компьютер действительно быстро «играть» в сотни игр. Мы пичкали машину всякими программами, проверяя разные методы игры. Мы хотели выяснить, какая стратегия побеждает чаще. И – чух-чух, чух-чух – компьютер отвечал нам.