Надо отметить, что у концепции вики-разметки есть один недостаток: будучи простой для восприятия человеком, она довольно трудна для формального описания. (Много труднее, чем, например, XML или распространенные языки программирования.) Отчасти из-за этого, отчасти по другим причинам отсутствуют и какие-либо стандарты на такую разметку, а каждый разработчик вики-ПО придумывает собственный язык. Как результат — несовместимости и проблемы с переводом с одного «диалекта» на другой.
Есть и другие особенности вики. Например, здесь в принципе нет проблемы «битых» ссылок. Ссылки ведут либо на существующие, либо на еще не созданные страницы. Что это значит? Предположим, что, редактируя страницу, например, в Википедии, вы выделили как ссылку термин, который не описан в энциклопедии. При клике на эту ссылку пользователь получит сообщение, что пока такой страницы нет, и ему будет предложено создать ее. (Постоянное приглашение к сотрудничеству — тоже элемент вики-философии.) При переименовании страниц ссылки также не пропадут — за это отвечает отдельный механизм поддержания целостности.
Внедрить wiki мы решили два, а то и три года назад. Почему? Потому что скучно набивать тексты в тормозящем-на-любом-железе Word’е, где результаты сразу же, еще в процессе, не видны окружающим и, чтобы их показать, требуется этот ужасный вордовый файл куда-то пересылать, а потом ругаться, загружая его опять в эту программу.
В качестве движка выбрали WackoWiki, потому что его развитием некоторое время занимался очень авторитетный для меня человек — Рома Иванов, также известный как kukutz, — и это было и есть некоторым знаком качества и доступности.
Цели были просты — чтобы все сотрудники компании могли дописывать, редактируя друг за другом, различную сопроводительную документацию к проекту; в основном — руководства пользователей по всевозможным нашим сервисам. Большая часть вики доступна свободно, но есть и небольшой внутренний раздел только для разработчиков.
Сотрудники у нас молодые, поэтому проблемы взаимодействия с новыми технологиями (wiki) у них нет никаких. А большинство пользователей, ничего не поняли. Они заходят на страницу, читают ее, видят, что здесь можно сделать много чего еще, и, не понимая, что это и зачем, начинают создавать свои странички, закачивать странные картинки, редактировать тексты, которые не защищены от правки (их приходится потом восстанавливать, простота этого действия тоже заслуга wiki).
Валентин Любимов, руководитель проекта LiveInternet.ru
Первый вики-движок, WikiWikiWeb, был разработан в 1994 году и в 1995 впервые появился в Интернете. Первым вики-сайтом стало Портлендское хранилище образцов, созданное Уордом Каннингемом (Ward Cunningham), где собирались фрагменты программного кода.
Вики в течение нескольких лет был удобным, но относительно малоизвестным типом приложений, заметная часть инсталляций которого была упрятана за файрволлами корпоративных сетей. Знаменитой эта технология стала после того, как была запущена Wikipedia, крупнейшая энциклопедия, бесплатная и открытая. Впрочем, о ней речь пойдет дальше. Вики прекрасно подходят для создания справочников, баз знаний, разработки документации, регламентов. В большинстве случаев, вики также может заменить систему управления контентом для обычного веб-сайта, даже не претендующего на особо активное участие пользователей — администраторы могут по старинке запретить правку страниц и оставить эту привилегию только себе.
На волне популярности Википедии появилось и множество не совсем обычных приложений. Скажем, в JotSpot вы можете работать не только с текстами, но и с электронными таблицами, календарями, фото-галереями, файлами и т. д. По wiki-принципу можно строить и картографические сервисы — посмотрите на wikimapia.org. Этот сайт делает достаточно простую и нужную вещь: позволяет пользователям добавлять описания любых объектов на карте. Cовместная работа над описаниями, хранение промежуточных версий, возможность отката к предыдущему состоянию записи — типичная вики. Аналогичными возможностями обзавелись и некоторые блоггерские движки (или наоборот, некоторые вики обзавелись возможностями блогов), породив множество терминов для обозначения такого комбайна: «блики», «блоки» (блог+вики) и т. д.
Появились компании, занимающиеся разработками вики-приложений для корпоративной среды — такие, как Confluence, Jot, CentralDesktop или Near-Time — их решения зачастую позиционируются как замена сложным системам документооборота. Вики занялись и в Microsoft — посмотрите на обзоры SharePoint Portal Server 2007. На основе JotSpot построен крупнейший коммерческий вики-сайт, принадлежащий eBay. Сегодня Wiki используется в таких компаниях, как Lockheed Martin, Telenor, Citigroup, Sony или Toshiba.
Многие особенности и функции вики, которые мы здесь упомянули, полезны не только для совместной работы над документами. Скорость создания материалов, простота установки гиперссылок, контроль версий — разве это не перечень функций для идеальной программы, соединяющей в себе персональный органайзер и записную книжку?
Таких «настольных» вики-блокнотов немало, но в основном это замкнутые решения с небольшим числом пользователей и разработчиков. Зачастую «настольность» заключается в переделке обычного дистрибутива, предназначенного для установки на веб-сервер. В таком случае сервер включается в инсталлятор, а сама вики работает в браузере — примером может служить десктопная версия MoinMoin или проект Wiki on a stick, позволяющий разместить движок MediaWiki на USB-флэшке.
Каково будущее Wiki-разметки, не будет ли она вытеснена WYSIWYG’ом?
— Вики-разметка — это инструмент не для всех. Это инструмент для тех, кто хочет контролировать разметку текста на совсем другом уровне — в любом WYSIWYG-редакторе слишком много неочевидных моментов и, несмотря на название, далеко не всегда в результате получается то, что вы видели в редакторе.
То есть вики-разметку (или аналогичные ей инструменты наподобие Markdown или Textile) WYSIWYG-редакторы не вытеснят никогда, но вряд ли ее популярность будет расти. В принципе, инструментов с поддержкой тех или иных аналогов вики-разметки с каждым днем появляется все больше — это и Mozilla Thunderbird, и GTalk, и многие другие программы для общения — где важна скорость создания текста — ведь для многих куда проще написать *привет*, чем выделить слово «привет» и щелкнуть в кнопку «Bold».
Каких функций не хватает в сегодняшних wiki?
— Боюсь, что все функции, которые я мог бы перечислить, либо слишком специальны, либо их не хватает только в некоторых движках. Например, возможность inplace-редактирования каждого отдельного абзаца или пункта списка есть в deskDo — маленьком десктопном todo-органайзере, базирующемся на waka31 — порте вики-форматтера WackoWiki на javascript. Возможность комментирования произвольного кусочка картинки есть в Wikimapia или Flickr. Возможность вставки математических формул есть в OpenWiki и еще паре движков. Возможность создания форм и простых баз и приложений на их основе есть, кажется, в JotSpot.
Назовите, пожалуйста, самый интересный, по вашему мнению, wiki-движок.
— Просто интересный? Так не бывает, все зависит от задачи. Для созданий энциклопедий лучше всего брать MediaWiki. Для интранет-сред и баз знаний в России в основном используют WackoWiki, иногда Confluence или NPJ. Для персонального использования хороши WikidPad, deskDo и тот же WackoWiki. Если вы принципиальный любитель Python или ASP — вам придется взять MoinMoin и OpenWiki соответственно. Для использования в условиях отсутствия Интернета я бы выбрал TiddlyWiki или deskDo.