Определение

WikiWikiWeb — это среда совместной работы на базе Web, позволяющая любому посетителю сайта создавать, модернизировать, добавлять и редактировать информационное наполнение. Эта среда также позволяет вести интерактивные дискуссии. Wiki wiki — по гавайски «быстро».

Разработка Web-сайта может показаться непрограммисту чем-то ужасным. А совместная работа с коллегами — не менее страшным занятием, требующим для своей организации дорогих серверных приложений. Но так быть не должно. WikiWikiWeb упрощает оба этих процесса.

WikiWeb, созданная в 1994 году Вардом Каннингэмом, была написана на языке HyperPerl и строго следовала концепциям, заложенным в HyperCard. Основополагающий принцип оригинального сайта www.wikiweb.com заключается в том, что в любой момент каждый может добавить на сайт все, что угодно, с помощью обычного интерфейса браузера, что превращает этот сайт в идеальную среду совместной работы.

Wiki предполагает наличие весьма удобного способа доступа к совместно используемым файлам. Эта технология представляет собой платформу, которая позволяет адаптировать или тиражировать информацию в соответствии с индивидуальными требованиями. Сайты Wiki создавались с помощью целого ряда инструментальных средств. Среди них сайт Kehei.com, созданный на основе Perl, его «клон», написанный Патриком Мюллером на Rexx, а также множество других механизмов на Python, Java, Smalltalk, Active Server Pages, Ruby, PHP и Visual Basic. Многие из них создавались для поддержки корпоративных сетей intranet или рабочих групп.

Почему Wiki?

Основное достоинство Wiki состоит в отсутствии системного администратора или Web-мастера, который должен подтверждать все происходящие изменения. Посетители сайта могут оперативно обновлять его. Одна из реализаций такого подхода нашла свое воплощение в сайте, через который осуществляется поддержка пользователей системы IBM Component Broker. Поскольку страницы генерируются динамически, здесь помещаются самые последние версии файлов, а ссылки обновляются автоматически. Конечно, интенсивная динамическая загрузка страниц увеличивает нагрузку на сервер, однако Web-сервер Apache с модулем mod_perl может одновременно поддерживать несколько сот пользователей.

Оригинальный сайт Wiki, реализованный на платформе Unix, хранит все страницы вместе в одном файле; обращение к ним происходит с помощью метода хешированного доступа dbm. Транслятор Wiki обращается к базе данных всякий раз при формировании гиперссылки, что, согласно документации по dbm, может быть сделано за два или меньше обращений к диску. Гибкость этой технологии позволяет ей работать с другими базами данных, такими как Oracle, Access, Mini SQL и Revision Control System.

Процедуры форматирования Wiki не относятся к решениям WYSIWYG и их нельзя отнести к интуитивным. Но в командах редактирования и создания можно разобраться после минимального изучения. Кроме того, они достаточно коротки и позволяют держать открытым второе окно в браузере для того, чтобы быстро получить необходимую справку.

Базовые правила форматирования текста очень просты:

  • не создавать абзацев;
  • по мере необходимости расставлять пробелы;
  • в качестве разделителя использовать пустые строки;
  • четыре или более дефиса в начале строки преобразуются в горизонтальную линейку.

Есть команды, значение которых предположить невозможно. Две одинарные кавычки (??) используются для выделения (обычно курсивом), три одинарные кавычки (???) — для особого выделения (обычно жирным шрифтом), а шесть одинарных кавычек (??????) — для выделения имен, которые в противном случае будут восприниматься в Wiki как названия страниц, хотя таковыми не являются. Например, QuickStudy, название этого раздела, следует набрать как Quick??????Study, чтобы оно не было закодировано как гиперссылка.

Легкие связи

Создать гиперссылку на локальные страницы столь же просто, как и объединить несколько слов, написанных с прописной буквы; если существует страница по определенной теме, ее название будет выглядеть как JoinCapitalizedWords. Поскольку названия страниц — это гиперссылки между документами, важно присваивать им имена, которые ясно указывают на содержимое страницы.

Создать новую страницу очень просто. В соответствии с соглашением о наименовании в Wiki (объединяя слова, написанные с прописной буквы в качестве имен страниц), добавьте ссылку на новую страницу в любую другую страницу. После сохранения этой страницы будет сгенерирована ссылка, которая оканчивается знаком вопроса. Щелчок по нему открывает окно редактирования ссылки. Введите или скопируйте текст, сохраните его, и все готово.

WikiWiki Sand Box дает возможность создать среду для совместной работы, где пользователи могут менять или добавлять информацию на сайт посредством обычного браузера

В добавленном фрагменте было две гиперссылки на локальные страницы: WikiWikiSandBox и TextFormattingRules. Слово test выделено курсивом с помощью указанных выше правил, а к WikiWikiSandBox были применены правила особого выделения и правило локальной гиперссылки.

Оригинальный язык разметки Wiki не включает в себя подмножество HTML, хотя в некоторых последующих решениях реализован именно этот подход. Причина в том, что использование оригинального языка HTML может означать слишком серьезную потерю управления представлением информационного наполнения, поскольку даже небольшая ошибка в синтаксисе HTML может разрушить целую страницу. Кроме того, полная поддержка HTML дает злоумышленникам возможность использовать известные изъяны в защите браузера.

Поскольку страницы автоматически индексируются в соответствии с присвоенной им категорией, обслуживание сайта существенно упрощается.

Как бывший администратор сети intranet, я считаю, что было бы весьма неплохо предоставлять специалистам возможность модернизировать узел с помощью таких простых в работе средств. Любой, на кого возложена ответственность за обслуживание Web-сайта, или сотрудник, которому приходится вручную обновлять HTML-ссылки, оценит Wiki.


Wiki-сайты

  • LilyPond, сайт с программами для работы с музыкальными записями, использует Wiki для своей интерактивной документации. http://appel.lilypond.org/wiki/index.php?LilyPond
  • Для любителей Tcl существует сайт The Tcl?ers Wiki. Он представляет собой область совместного редактирования в Web, посвященного языку программирования Tcl: http://mini.net/cgi-bin/wikit/
  • Проект The JOS Project ведется группой программистов и энтузиастов языка Java и имеет своей целью создание JOS, свободно распространяемой и открытой ОС на базе Java. На сайте поддерживается ведение списков участников проекта, проводятся коллективные обсуждения, содержится необходимая документация, детальные спецификации, примеры кода и другие важные для проекта документы. www.metamech.com/wiki/view/Main/AbouWiki
  • Кроме того, можно посетить WikiWeb и узнать, что в Web есть и другие сайты аналогичной организации, которые используются с различной целью, от публикации информации о Java (www.wikiweb.com/TheJavaWiki) до рецептов вегетарианских блюд (www.wikiweb.com/VegetarianRecipes)