В Массачусетском технологическом институте хакеры начинали свой путь как самые простые члены клуба любителей настольной железной дороги. Да, да, железной дороги. Был такой клуб, составляли его любители. Одних больше интересовала, скажем, правильная раскраска игрушечных вагонов, аутентичность железнодорожных станций кукольного размера, других – электрические схемы, реле, принципы сигнализации. Казалось бы, все это лишь затянувшееся детство, но мир меняется быстро, его изменения беспрерывны, эти изменения затягивают, увлекают, тащат за собой; короче, всем членам указанного выше клуба хотелось быть истинными творцами, действовать (именно действовать) хотя бы в масштабах настольной железной дороги.
Главной вычислительной машиной в Массачусетском технологическом институте была IBM 704.
Ее массовый выпуск наладили в 1954 году. Стоила она два миллиона долларов и весила около 15 тонн, даже без мощной системы охлаждения. В инструкции указывалось, что IBM 704 – это «крупномасштабный скоростной электронный калькулятор, управляемый внутренней хранимой программой с инструкциями одноадресного типа… Гибкая организация позволяет машине выполнять команды со скоростью примерно сорок тысяч команд в секунду при решении большинства проблем… Внутренняя скоростная память – на магнитных сердечниках. Когда объем памяти оказывается недостаточным, магнитные барабаны используются для того, чтобы хранить и выдавать большие объемы информации для быстрого доступа с небольшими интервалами. Когда необходимый объем памяти превышает возможности оперативной памяти и магнитных барабанов, используется магнитная лента… Программа может вводиться в калькулятор многими способами… Обычно команды в исходной форме пробиваются на перфокартах и вводятся в машину через читающее устройство…»[40].Одно из самых строгих официальных правил заключалось в том, что никто, абсолютно никто, кроме обслуживающего персонала, не имел права без разрешения приближаться к машине, хотя, разумеется, многие студенты и молодые научные сотрудники ну просто сгорали от желания нарушить это правило.
Первый язык программирования высокого уровня – Fortran
(Фортран) – был разработан американским специалистом в области информатики Джоном Бэкусом (1924–2007) в 1954 году, а первый компилятор (программа для перевода программы высокого уровня в машинный код) для указанного языка появился в 1957 году. Другой информатик – Джон Маккарти (1927–2011) – через год разработал язык LISP (List Processing language; Лисп). А уже весной 1959 года Массачусетский технологический институт предложил своим студентам первый учебный курс программирования; преподавал его сам Джон Маккарти.Машинные языки быстро усложнялись.
Общение с машиной выходило на все более осмысленный уровень.
Теперь это было уже не обычное муторное составление программ в специальных кодах, требующее подробной записи команд и адресов в числовом (бинарном или восьмеричном) представлении, а настоящая творческая работа.
Интересно, что в те же самые годы за океаном – в СССР – исследователи шли тем же примерно курсом (уточним, параллельным), хотя развитию вычислительной техники очень мешала продолжающаяся там чисто идеологическая борьба с кибернетикой. Тем не менее первый учебный курс программирования в СССР (с использованием условного языка команд) был прочитан уже в 1952 году замечательным математиком Алексеем Андреевичем Ляпуновым (1911–1973)[41]
. А с конца 1950-х годов в СССР начали выходить учебники программирования, среди них очень известный – Анатолия Китова и Николая Криницкого[42].Сейчас трудно представить себе бурную радость хакеров при появлении новых все более доступных компьютеров. В Массачусетском технологическом институте таким «новым» стал TX-0.
В отличие от прежних вычислительных мастодонтов, он не производился массово; техникам для работы сперва был предоставлен образец, созданный в Линкольновской лаборатории. Был он выполнен на транзисторах и печатных схемах, имел совсем небольшой экран, на котором в процессе работы высвечивались всего лишь зеленые буквы, точки и линии, даже допускал работу в интерактивном режиме, зато занимал целую комнату и стоил около трех миллионов долларов. Все же – штучное производство. Данные в TX-0 вводились с перфолент, а не с перфокарт, причем нужную перфоленту можно было «набить» тут же. Объем оперативной памяти TX-0 составлял всего несколько килобайт, но несомненное преимущество – энтузиастам из числа студентов и преподавателей разрешали работать с ним непосредственно!В 1959 году появился еще более компактный (размером всего-то с тройку холодильников) компьютер PDP-1
– продукт недавно возникшей корпорации «Digital Equipment» (DEC; «Диджител экипмент»). Эта машина стоила уже только 120 тысяч долларов; немало, но все же не миллионы!Чем занимались, чего достигли первые хакеры?