Введение

Американский учёный в области компьютерных технологий (род. 1940)

Алан Кертис Кей (род. 17 мая 1940) — американский учёный в области компьютерных технологий, наиболее известный своей новаторской работой в области объектно-ориентированного программирования и разработки графического пользовательского интерфейса (GUI). В Xerox PARC он возглавил проектирование и разработку первого современного оконного интерфейса для компьютеров. Там же он руководил разработкой влиятельного объектно-ориентированного языка программирования Smalltalk, лично разработав большинство ранних версий языка и предложив термин "объектно-ориентированный". Он был избран членом Американской академии искусств и наук, Национальной инженерной академии и Королевского общества искусств. В 2003 году он получил премию Тьюринга. Кей также в прошлом был профессиональным джазовым гитаристом, композитором и театральным художником-постановщиком. Кроме того, он является любителем классической игры на трубном органе.

Ранняя жизнь и работа

В интервью об образовании в Америке с Davis Group Ltd. Кей сказал: "Мне не повезло или повезло научиться бегло читать примерно с трех лет, поэтому к первому классу я успел прочитать, возможно, 150 книг и уже знал, что учителя мне лгут. Родом из Спрингфилда, штат Массачусетс, семья Кея несколько раз переезжала из-за карьеры его отца в области физиологии, прежде чем окончательно обосноваться в районе Нью-Йорка. Он учился в Бруклинской технической школе. Накопив достаточное количество зачетных единиц для окончания школы, он поступил в Bethany College в Бетани, Западная Вирджиния, где изучал биологию и математику в качестве специализации и дополнительной дисциплины соответственно. Затем Кей преподавал игру на гитаре в Денвере, штат Колорадо, в течение года. Он был призван в армию Соединенных Штатов, а затем прошел отбор для обучения на офицера в Военно-воздушных силах Соединенных Штатов, где после успешной сдачи теста на профпригодность стал программистом. После демобилизации он поступил в Университет Колорадо в Боулдере и в 1966 году получил степень бакалавра наук (B.S.) по математике и молекулярной биологии. Осенью 1966 года он начал обучение в аспирантуре в Колледже инженерии Университета Юты. В 1968 году он получил степень магистра наук в области электротехники, а в 1969 году – степень доктора философии в области компьютерных наук. В своей докторской диссертации под названием FLEX: A Flexible Extendable Language он описал изобретение компьютерного языка FLEX. Там он работал с "отцами компьютерной графики" Дэвидом С. Эвансом (недавно переманинным из Калифорнийского университета в Беркли для создания факультета компьютерных наук Университета Юты) и Иваном Сазерлендом (наиболее известным как автор новаторских программ, таких как Sketchpad). Кей считает, что диссертация Сазерленда 1963 года повлияла на его взгляды на объекты и компьютерное программирование. По мере того, как он все больше времени уделял исследованиям для Агентства передовых исследовательских проектов Министерства обороны (DARPA), он завершил свою музыкальную карьеру. В 1968 году он познакомился с Сеймуром Папертом и узнал о языке программирования Logo, диалекте Lisp, оптимизированном для образовательных целей. Это привело его к изучению работ Жана Пиаже, Жерома Брунера, Льва Выготского и конструкционистского обучения, что оказало дальнейшее влияние на его профессиональную ориентацию. В 1969 году Кей стал приглашенным научным сотрудником в Стэнфордской лаборатории искусственного интеллекта в преддверии принятия предложения о должности профессора в Университете Карнеги-Меллона. Однако в 1970 году он присоединился к исследовательскому коллективу Xerox PARC в Пало-Альто, Калифорния. В течение десятилетия он разрабатывал прототипы сетевых рабочих станций с использованием языка программирования Smalltalk. Вместе с некоторыми коллегами из PARC Кей является одним из отцов идеи объектно-ориентированного программирования (ООП), название которой он и придумал. Некоторые оригинальные объектно-ориентированные концепции, включая использование слов "объект" и "класс", были разработаны для Simula 67 в Норвежском вычислительном центре. Кей сказал: "Мне жаль, что я давно ввел термин "объекты" для этой темы, потому что это заставляет многих людей сосредотачиваться на менее важной идее. Главная идея – "обмен сообщениями". Работая в PARC, Кей разработал концепцию Dynabook, ключевого предшественника ноутбуков и планшетных компьютеров, а также электронной книги. Он также является архитектором современного графического пользовательского интерфейса (GUI) с перекрывающимися окнами. Поскольку Dynabook задумывался как образовательная платформа, он считается одним из первых исследователей мобильного обучения; многие особенности концепции Dynabook были использованы при разработке образовательной платформы One Laptop Per Child, в которой Кей активно участвует.

Последующие работы

С 1981 по 1984 год Кей был главным ученым в Atari. В 1984 году он стал Apple Fellow. После закрытия группы Apple Advanced Technology Group в 1997 году он был приглашен своим другом Брэном Ферреном, руководителем отдела исследований и разработок в Disney, присоединиться к Walt Disney Imagineering в качестве Disney Fellow. Он оставался там до ухода Феррена для основания Applied Minds Inc. вместе с Дэнни Хиллисом из Imagineering, что привело к прекращению программы Fellows. В 2001 году Кей основал Viewpoints Research Institute – некоммерческую организацию, посвященную детям, обучению и передовой разработке программного обеспечения. Первые десять лет Кей и его команда Viewpoints базировались в Applied Minds в Глендейле, Калифорния, где он и Феррен работали над различными проектами. Кей занимал должность президента Института до его закрытия в 2018 году. В 2002 году Кей присоединился к HP Labs в качестве старшего научного сотрудника и покинул компанию, когда HP расформировала команду передовых программных исследований 20 июля 2005 года. Он был адъюнкт-профессором информатики в Калифорнийском университете в Лос-Анджелесе, приглашенным профессором в Киотском университете и адъюнкт-профессором в Массачусетском технологическом институте (MIT). Кей также входил в консультативный совет TTI/Vanguard.

Скик, Этои и Крокет

В декабре 1995 года, ещё работая в Apple, Кей сотрудничал со многими другими, чтобы запустить версию Smalltalk с открытым исходным кодом под названием Squeak. В рамках этой работы в ноябре 1996 года его команда начала исследования, которые впоследствии привели к созданию системы Etoys. В последнее время он вместе с Дэвидом А. Смитом, Дэвидом П. Ридом, Андреасом Раабом, Риком МакГиром, Джулианом Ломбарди и Марком МакКахилом начал проект Croquet – сетевую 2D и 3D среду с открытым исходным кодом для совместной работы.

Твик

В 2001 году стало очевидно, что архитектура Etoy в Squeak достигла пределов возможностей инфраструктуры интерфейса Morphic. Андреас Рааб, исследователь в группе Кея, в то время работавший в Hewlett Packard, предложил определить "скриптовый процесс" и предоставить механизм планирования по умолчанию, который позволял избежать нескольких более общих проблем. Результатом стал новый пользовательский интерфейс, предложенный в качестве замены пользовательского интерфейса Squeak Morphic. Tweak добавил механизмы "островов", асинхронный обмен сообщениями, "игроков" и "костюмов", расширения языка, проекты и скрипты для тайлов. Его базовая объектная система основана на классах, но для пользователей (в процессе программирования) она ведёт себя как прототипная. Объекты Tweak создаются и запускаются в окнах проектов Tweak.

Детская машина

В ноябре 2005 года на Всемирном саммите по информационному обществу исследовательские лаборатории MIT представили новый ноутбук, предназначенный для образовательных целей по всему миру. У него множество названий, включая «Ноутбук за 100 долларов», программу «Один ноутбук на ребенка», «Детский компьютер» и XO 1. Программу основал и поддерживает друг Кея Николас Негропонте, и она основана на идее Dynabook, выдвинутой Кеем. Кей является одним из ключевых разработчиков этого компьютера, уделяя особое внимание разработке образовательного программного обеспечения на базе Squeak и Etoys.

Переосмысление программирования

Кей много выступал с лекциями о том, что компьютерная революция – явление очень молодое, и далеко не все хорошие идеи получили всеобщее распространение. Его лекции на конференции OOPSLA 1997 года и его речь при вручении премии ACM Turing Award под названием «Компьютерная революция ещё не произошла» были основаны на его опыте работы с Sketchpad, Simula, Smalltalk и громоздком коде коммерческого программного обеспечения. 31 августа 2006 года предложение Кея Национальному научному фонду США (NSF) было одобрено, что обеспечило финансирование Viewpoints Research Institute на несколько лет. Название предложения звучало как «ШАГИ к переосмыслению программирования: компактная и практичная модель персональных вычислений как среды для самоисследований». STEPS – это рекурсивная аббревиатура, расшифровывающаяся как «STEPS Toward Expressive Programming Systems» (ШАГИ к созданию выразительных систем программирования). О том, чего пытается достичь Кей, можно судить по следующей цитате из аннотации к семинару в исследовательских лабораториях Intel в Беркли: «Совокупность коммерческого и большей части программного обеспечения с открытым исходным кодом в наши дни потребляет порядка нескольких сотен миллионов строк кода. Мы задаёмся вопросом: насколько компактной может быть понятная и практичная конструкция, подобная "модели Т", охватывающая эту функциональность? 1 миллион строк кода? 200 тысяч строк? 100 тысяч строк? 20 тысяч строк?»