NLS ( on-Line System ) была революционной компьютерной системой совместной работы , разработанной в 1960-х годах. Она была разработана Дугласом Энгельбартом и реализована исследователями из Augmentation Research Center (ARC) в Стэнфордском исследовательском институте (SRI). Это была первая компьютерная система, которая использовала практическое использование гипертекстовых ссылок, компьютерной мыши , растровых видеомониторов , информации, организованной по релевантности, оконного отображения экрана , презентационных программ и других современных вычислительных концепций. Она финансировалась ARPA (предшественником Defense Advanced Research Projects Agency ), NASA и ВВС США .
NLS была продемонстрирована в « Матери всех демонстраций ».
Дуглас Энгельбарт разрабатывал свои концепции при поддержке ВВС США с 1959 по 1960 год и опубликовал структуру в 1962 году. Странный акроним NLS (а не OLS) был артефактом эволюции системы. Первые компьютеры Энгельбарта не могли поддерживать более одного пользователя одновременно. Первым был CDC 160A в 1963 году, который имел очень мало собственной программной мощности. [1]
В качестве краткосрочной меры команда разработала систему, которая позволяла пользователям, не находящимся в сети, то есть всем, кто не сидел за единственным доступным терминалом, редактировать свои документы, набирая строку команд на бумажной ленте с помощью Flexowriter . [2] После того, как лента была готова, пользователь, не находящийся в сети, затем вставлял в компьютер бумажную ленту, на которой был сохранен последний черновик документа, а затем новые команды для применения, и компьютер распечатывал новую бумажную ленту, содержащую последнюю версию документа. [2] Без интерактивной визуализации это могло быть неудобно, так как пользователю приходилось мысленно моделировать кумулятивные эффекты своих команд на текст документа. С другой стороны, это соответствовало рабочему процессу офиса 1960-х годов, где менеджеры передавали секретарям размеченные распечатки документов. [3]
Дизайн продолжал поддерживать этот "офлайновый" рабочий процесс, а также интерактивную "онлайновую" возможность редактировать те же документы. Чтобы избежать двух одинаковых аббревиатур (OLTS), Off-Line Text System была сокращена до FLTS, а On-Line Text System была сокращена до NLTS. Поскольку система развивалась для поддержки не только текста, буква "T" была удалена, и интерактивная версия стала известна как NLS. [4]
Роберт Тейлор , имевший психологическое образование, оказал поддержку NASA . Когда Тейлор перешел в Управление методов обработки информации Агентства перспективных исследовательских проектов Министерства обороны США , он смог обеспечить дополнительное финансирование проекта. Разработка NLS перешла на CDC 3100 в 1965 году. [1] Джефф Рулифсон присоединился к SRI в 1966 году и стал ведущим программистом NLS до тех пор, пока не покинул организацию в 1973 году. [5]
В 1968 году разработка NLS перешла на компьютер SDS 940 , работающий под управлением Berkeley Timesharing System . [1] Он имел диск для хранения данных объемом около 96 МБ и мог поддерживать до 16 рабочих станций, каждая из которых включала растровый монитор , трехкнопочную мышь и устройство ввода, известное как аккордовый набор клавиш . Набранный текст отправлялся с набора клавиш на специальную подсистему, которая передавала информацию по шине на один из двух контроллеров дисплеев и генераторов дисплеев. Затем вводимый текст отправлялся на 5-дюймовую (127 мм) электронно-лучевую трубку (ЭЛТ), закрытую специальной крышкой, а наложенное видеоизображение принималось профессиональной черно-белой телевизионной камерой. Информация отправлялась с телевизионной камеры на панель управления замкнутой камерой и коммутационную панель и, наконец, отображалась на видеомониторе каждой рабочей станции.
NLS была продемонстрирована Энгельбартом 9 декабря 1968 года большой аудитории на Осенней совместной компьютерной конференции в Сан-Франциско . С тех пор это было названо « Матерью всех демонстраций », поскольку она не только демонстрировала новаторские возможности NLS, но и включала сборку некоторых замечательных современных видеотехнологий. Терминальная клавиатура и мышь Энгельбарта на сцене были связаны самодельным модемом на скорости 2400 бод через выделенную линию , которая подключалась к компьютеру SDS 940 компании ARC в Менло-Парке , в 48 километрах к юго-востоку от Сан-Франциско. Две микроволновые линии передавали видео [6] из Менло-Парка обратно на видеопроектор Eidophor, предоставленный Исследовательским центром Эймса NASA , и на экране высотой 22 фута (6,7 м) с видеовставками зрители могли следить за действиями Энгельбарта на его дисплее, наблюдать, как он использовал мышь, и наблюдать, как члены его команды в Менло-Парке присоединялись к презентации. [6]
Одна из самых революционных функций NLS, «Журнал», была разработана в 1970 году австралийским компьютерным инженером Дэвидом А. Эвансом в рамках его докторской диссертации. [a] Журнал был примитивной программой групповой работы на основе гипертекста , которую можно рассматривать как предшественника (если не прямого предка) всего современного серверного программного обеспечения, поддерживающего совместное создание документов (например, вики ). Он использовался членами ARC для обсуждения, дебатов и уточнения концепций таким же образом, как вики используются сегодня. Журнал использовался для хранения документов для Сетевого информационного центра и ранних сетевых архивов электронной почты . [9] Большинство документов журнала были сохранены в бумажном виде и хранятся в архивах Стэнфордского университета ; Они предоставляют ценную информацию об эволюции сообщества ARC с 1970 года до начала коммерциализации в 1976 году. Дополнительный набор документов журнала хранится в Музее истории компьютеров в Калифорнии, вместе с большой коллекцией резервных лент ARC, датируемых началом 1970-х годов, а также некоторыми лентами SDS 940, датируемыми 1960-ми годами.
NLS был реализован с использованием нескольких доменно-специфичных языков, которые обрабатывались с помощью системы компилятора-компилятора Tree Meta . [10] Окончательный язык реализации был назван L10. [11]
В 1970 году NLS был перенесен на компьютер PDP-10 (модифицированный BBN для работы операционной системы TENEX ). [11] К середине 1971 года реализация NLS от TENEX была введена в эксплуатацию в качестве нового сетевого информационного центра, но даже этот компьютер мог обрабатывать лишь небольшое количество одновременных пользователей. [9] Доступ был возможен либо с изготовленных на заказ рабочих станций с дисплеями, либо с простых терминалов, похожих на пишущие машинки, которые были менее дорогими и более распространенными в то время. К 1974 году NIC выделился в отдельный проект на собственном компьютере.
Все функции NLS поддерживали цель Энгельбарта по расширению коллективной работы со знаниями и, следовательно, были сосредоточены на том, чтобы сделать пользователя более мощным, а не просто на том, чтобы сделать систему более простой в использовании. [12] Таким образом, эти функции поддерживали парадигму полного взаимодействия с богатыми возможностями взаимодействия для обученного пользователя, а не то, что Энгельбарт называл парадигмой WYSIAYG (What You See Is All You Get) [13], которая появилась позже. [14]
Энгельбарт сказал: «Многие из этих новшеств появились прямо из инноваций персонала — мне их даже пришлось объяснить, прежде чем я смог их понять. [Персонал заслуживает] большего признания». [14]
Падение NLS, а впоследствии и ARC в целом, было связано с трудной кривой обучения программы . NLS не была разработана для легкого обучения; она использовала интенсивное использование режимов программирования, опиралась на строгую иерархическую структуру, не имела интерфейса «укажи и щелкни» и заставляла пользователя изучать криптические мнемонические коды, чтобы сделать что-либо полезное с системой. Набор аккордовых клавиш, который дополнял модальную природу NLS, заставлял пользователя изучать 5-битный двоичный код, если он не хотел использовать клавиатуру. Наконец, с появлением сети ARPA в SRI в 1969 году технология разделения времени , которая казалась практичной с небольшим количеством пользователей, стала непрактичной в распределенной сети ; разделение времени быстро заменялось отдельными мини-компьютерами (а позже и микрокомпьютерами ) и рабочими станциями . Попытки перенести NLS на другое оборудование, такое как PDP-10 и позднее на DECSYSTEM-20 , были успешными. Его перевезли в другие научно-исследовательские институты, такие как USC/Information Sciences (ISI), которые производили мыши и наборы клавиш для NLS. NLS также была расширена в ISI для использования недавно появившихся лазерных принтеров Xerox.
Разочарованные направлением крестового похода Энгельбарта по «бутстрэппингу» [ требуется ссылка ] , многие ведущие исследователи SRI ушли, многие из них оказались в исследовательском центре Xerox в Пало-Альто , прихватив с собой идею мыши. SRI продала NLS компании Tymshare в 1977 году и переименовала ее в Augment. Tymshare, в свою очередь, была продана компании McDonnell Douglas в 1984 году. [1] [15]
Часть парадигмы «полного взаимодействия» продолжает жить в разных системах, включая дополнение Hyperwords для Mozilla Firefox . Концепция Hyperwords выросла из веб-документального фильма Энгельбарта «Невидимая революция». [12] Цель проекта — позволить пользователям взаимодействовать со всеми словами в Интернете, а не только со ссылками. Hyperwords работает через простое иерархическое меню, но также предоставляет пользователям доступ к клавиатурным «фразам» в духе команд NLS и функций Views, которые вдохновлены мощным NLS ViewSpecs. Views позволяют пользователю переформатировать веб-страницы на лету. Энгельбарт был в Консультативном совете компании The Hyperwords с момента ее создания в 2006 году до своей смерти в 2013 году.
С 2005 по 2008 год группа добровольцев из Музея компьютерной истории пыталась восстановить систему. [16] [17]
Дэн Бриклин , создатель первой программы для работы с электронными таблицами Visicalc , увидел, как Дуг Энгельбарт продемонстрировал систему on-line, которая вдохновила Бриклина на создание Visicalc. [18]