Citadel — название компьютерной программы системы досок объявлений (BBS) и жанра программ, которые она вдохновила. Citadel были известны своей структурой на основе комнат (см. ниже) и относительно сильным акцентом на сообщениях и разговорах, в отличие от игр и файлов. Первая Citadel появилась в сети в 1980 году [ сомнительно – обсудить ] с одним модемом на 300 бод ; в конечном итоге многие версии программного обеспечения, как клоны, так и те, что произошли от исходной кодовой базы (но все они обычно назывались «Citadel»), стали популярными среди пользователей BBS и системных операторов , особенно в таких регионах, как Тихоокеанский Северо-Запад , Северная Калифорния и Верхний Средний Запад США, где продолжалась разработка программного обеспечения. BBS Citadel были наиболее популярны в конце 1980-х и начале 1990-х годов, но когда Интернет стал более доступным для онлайн-общения, Citadel начали приходить в упадок. Однако некоторые версии программного обеспечения, от небольших общественных BBS до крупных систем, поддерживающих тысячи одновременных пользователей, используются и сегодня. Разработка Citadel всегда была совместной с сильным стремлением сохранить исходный код в открытом доступе . Это делает Citadel одним из старейших сохранившихся проектов FOSS . [ необходима цитата ]
Основным улучшением Citadel по сравнению с предыдущими пакетами BBS было введение метафоры комнат как способа организации тем. Сообщения связаны с комнатами, в которые пользователь переходит, чтобы участвовать в обсуждениях; аналогично, комната может опционально предоставлять доступ к базовой файловой системе, позволяя организовывать доступные файлы органическим образом. Большинство установок позволяли любому пользователю создавать комнату, что приводило к динамическому приливу и отливу, более близкому к истинному разговору, чем достигалось большинством других пакетов BBS. Некоторые версии Citadel расширяют метафору комнат «коридорами» и/или «этажами», организуя группы комнат в соответствии с системными требованиями. Напротив, предыдущее программное обеспечение для досок объявлений подчеркивало доступность файлов с одной несвязанной областью сообщений, которую можно было читать только линейно, вперед или назад.
Citadel еще больше улучшила пользовательский опыт в области управления и контроля. Основываясь на философии дизайна пользовательского интерфейса Алана Кея : «Простые вещи должны быть простыми; сложные вещи должны быть возможными», и под влиянием того факта, что Citadel был разработан в эпоху модемов со скоростью 300 бод, основные и наиболее часто используемые команды доступны с помощью одного нажатия клавиш. Наиболее распространенными командами являются G oto (следующая комната с новыми сообщениями), N ew messages (отображение новых сообщений в комнате для пользователя) и Enter a message into the room. Существуют также другие команды с одним нажатием клавиши, такие как Known rooms, которая перечисляет комнаты, известные пользователю.
Этот элегантно небольшой набор команд сделал систему настолько удобной в использовании, что многие ежедневные пользователи в золотую эру Citadel даже не подозревали, что Citadel также предоставляет сложные возможности. Они известны как команды «точка» и логически выстраиваются из набора команд с одним нажатием клавиши. Простым примером может быть требование перейти непосредственно в указанную комнату. Пользователь должен был ввести , где текст в скобках вводится пользователем, а остальное заполняется системой. Более сложным примером может быть .Read All rooms Z modem N ew messages ( .RAZN ), что приводит к отправке всех новых сообщений во всех комнатах, известных пользователю, пользователю по протоколу ZMODEM . Фильтры для пользователей, поиск по ключевым словам и другие возможности были реализованы в зависимости от версии Citadel.⟨.G⟩oto ⟨roomname⟩
Citadel изначально был написан для операционной системы CP/M в 1981 году Джеффом Протеро, известным в зарождающемся мире Citadel как Cynbe ru Taren (CrT). В отличие от большинства BASIC -программ BBS того времени, он был написан на довольно стандартном диалекте C, известном как BDS C , компиляторе, написанном и распространяемом Леором Золманом. Первая установка появилась в декабре 1981 года, работая на Heathkit H-89, и за 6 месяцев своего существования добилась немедленного успеха.
Версия 2 дебютировала на ICS BBS Дэвида Митчелла, а с выпуском 2.11 участие Протеро в проекте закончилось после конфликта, возникшего вокруг пользователя под именем «sugar bunny». Он выложил исходный код в общественное достояние, и он стал доступен для загрузки из различных систем, а также через C Users Group.
На этом этапе история Citadel становится сложной, поскольку многие люди начали изменять исходный код в своих собственных целях, и из-за отсутствия современного распределенного отслеживания исходного кода инновации никогда не включались в центральный репозиторий исходного кода, поскольку такового не существовало. Первоначально Брюс Кинг, Дэвид Бонн (выпускающий под именем Stonehenge), Карен Парк и Джеймс Шилдс, среди прочих, подхватили эту возможность в районе Сиэтла.
Самая длинная [ требуется цитата ] ветка кода 2.10 началась на американском Среднем Западе, когда Хью Уайт (он же Хью-младший) перенес код на MS-DOS и назвал его Citadel-86 («C-86»). Его доска, Citadel-86 Test System, служила не только доской обсуждений и центром распространения программного обеспечения, но и была центром оживленного сообщества Citadel-86 в районе 612 (Города-побратимы), которое на пике насчитывало около сорока систем, а за прошедшие годы, вероятно, превысило 100. Многочисленные предложения от системных операторов и пользователей, как местных, так и национальных, направляли развитие Citadel-86, включая добавление сетевых возможностей, а также усовершенствования набора команд. Вклад Хью был настолько существенным, что несколько других проектов портирования использовали Citadel-86 в качестве исходного материала, например, Asgard-86 (MS-DOS), Macadel ( Macintosh ), STadel ( Atari ST , fnordadel), Citadel-68K ( Amiga ) и Citadel:K2NE (MS-DOS), и многие из них внесли свой вклад в проект Хью-младшего. Большинство этих портов были совместимы с растущей сетью Citadel-86 (C86Net). Локальные системы могли объединяться в сеть по требованию (благодаря работе Дэвида Парсонса), в то время как дальняя сеть обслуживалась поздно ночью.
Ранним ответвлением от Citadel-86 был DragCit, написанный The Dragon. DragCit также представил сетевой код, но сеть DragCit в целом не была совместима с сетью Citadel-86. DragCit разделился на несколько дополнительных версий, в конечном итоге приведших к попыткам объединить несколько кодовых баз под руководством Мэтта Пфлегера, Ричарда Голдфайндера, Брента Боттлса, Дона Кимберлина и Элизабет Перрин, конечным результатом стал Citadel+, многопользовательская версия программного обеспечения, которая также включала расширенные скрипты , пользовательский контроль отображения сообщений и другие функции.
Реализации, которые разделяют знакомый пользовательский интерфейс Citadel, но не являются производными от исходной кодовой базы Citadel, также распространены. Они варьируются от тщеславных проектов, таких как программа управления Citadel-подобная для управления последовательным портом продвинутого графического калькулятора , до полномасштабных усилий по модернизации интерфейса Citadel с использованием современных протоколов.
Некоторые из наиболее примечательных включают реализацию TRS-80 BASIC Гленна Гормана под названием Minibin, клон Cit-86, предназначенный для работы на Unix, работающем на процессорах Motorola , называемый Cit/68, и версию Unix, технически называемую Citadel/UX, но называемую просто «Citadel» в основном сообществе разработчиков ПО с открытым исходным кодом. Эта версия Citadel все еще находится в разработке, расширяя метафору Citadel, чтобы включить то, что ее разработчики называют «платформой обмена сообщениями и совместной работы (для) объединения сообществ людей»: платформу группового ПО .
Также было сделано несколько попыток представить парадигму Citadel как веб-сервис , включая Webadel, написанный Jarrin Jambik, бывшим сисопом Citadel-86, и Anansi-web, anansi-web.com, размещенный бывшим сисопом Citadel-86, Ultravox the Muse. Единственными [ требуется ссылка ] в настоящее время активно разрабатываемыми веб-совместимыми Citadel являются Citadel/UX и PenguinCit, Citadel на основе PHP.