e.motion
Статьи

Инструмент созидания

Авторы: Александр Белков, Дмитрий Смирнов
Опубликовано в журнале «Домашний компьютер» №5 от 5 мая 2006 года.

В гавайском языке есть замечательное словосочетание — wiki wiki. По звучанию и по смыслу оно напоминает английское quickly — быстро. Что современному человеку нужно делать действительно быстро? Получать и отдавать информацию, структурировать и классифицировать ее, иметь возможность быстро опубликовать что-то в Интернете. Примерно этим целям служит определенный класс программ, а точнее, идеология, которую называют wiki.

В общем случае, wiki — это сайт, любой посетитель которого теоретически может создать, удалить или отредактировать любую страницу этого самого сайта. От пользователя могут потребовать предварительно зарегистрироваться; могут и не потребовать, все зависит от типа проекта. Для редактирования текста на wiki-сайте не требуется даже знания HTML: во-первых, средства wiki-разметки проще и нагляднее, а во-вторых, страница редактирования обычно оснащена рядом функциональных кнопок и горячих клавиш, которые делают написание и форматирование текста делом не более сложным, чем работа в Word’е. Страницы, генерируемые wiki-сайтом, выдаются пользователю в формате HTML или в виде RSS-потока.

Wiki — также название движка, на котором построен wiki-сайт. Существует множество готовых wiki-механизмов, они распространяются бесплатно и владелец сайта может без труда их установить. А из-за того что wiki чаще всего устанавливают на серверах, а не на рабочих станциях, его удобно использовать для совместной работы, например, для составления документации во время разработки проекта.

Wiki-демократия, к слову, вещь вполне себе управляемая. На первый взгляд, желанием любого малолетнего посетителя сайта будет стремление написать на каждой странице «здесь был Василий Пупкин» или что-то подобное. Казалось бы, в Интернете это даже проще, чем на заборе — ведь в последнем случае понадобится краска или хотя бы мел или уголек. Забор после этого пришлось бы перекрашивать, но не таков wiki.

Большинство wiki-движков умеют сохранять все правки, вносимые в материалы сайта, и предоставляют администраторам системы возможность откатить «в прошлое» любые внесенные изменения, что позволяет решать проблему «электронного вандализма». Администратору wiki нужно совершить всего лишь несколько кликов: одним — откатить страницу в первоначальное состояние, а другим — «забанить» вандала. Торжество разума налицо: наконец-то восстанавливать во много раз проще, чем портить.

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

Можно настроить wiki так, что она вовсе не будет требовать от пользователей регистрации. Такая схема работает на сайтах, предназначенных для быстрого, сиюминутного обмена информацией, когда скорость ее передачи важнее долговечного хранения. Похоже на большую классную доску: любой может написать, стереть или исправить что угодно. Такие системы оказываются удобнее чатов или веб-форумов, на которых практически всегда требуют завести аккаунт.

Некоторым пользователям wiki нравится думать, что это слово является аббревиатурой выражения «what I know is», что приблизительно означает «я знаю вот что». Эта фраза определяет основное предназначение wiki: пользователи, обладающие неким знанием, делятся им с другими, публикуя материалы на сайте. Но истинные корни у wiki — другие.

Происхождение видов

Первая wiki-система называлась WikiWikiWeb — очередной вариант расшифровки аббревиатуры WWW. Ее назвали в честь автобусного маршрута, действующего в аэропорту Гонолулу (Гавайи) — Wiki Wiki.

«Быстро-быстро-веб» был разработан в 1994 году, а на волю выпущен 25 марта 1995 года. Его автор, программист Уорд Каннингем (Ward Cunningham), создал WikiWikiWeb как часть проекта «Портлендское хранилище шаблонов» (Portland Pattern Repository) — разумеется, речь идет о шаблонах в программировании. Каннингем разработал концепцию wiki, придумал ей это забавное название (wiki было первым словом, которое программист выучил во время своего визита на Гавайи) и, собственно, написал первый wiki-механизм. С тех пор считается, что Wiki с прописной буквы означает только wiki-систему Каннингема (WikiWikiWeb), а все остальные диалекты, реализации и прочие упоминания wiki должны быть написаны со строчной буквы.

В конце 90-х идеология wiki пошла в народ. Ее признали одной из наиболее прогрессивных идей для построения публичных баз знаний. Разнообразные wiki-системы стали использоваться как ПО для совместной работы; в основном, конечно, для документирования проектов. А в декабре 2002 года появилась и первая коммерческая реализация wiki — Socialtext.

В настоящее время количество скачанных wiki-дистрибутивов на основе открытого кода (таких как Mediawiki, Twiki, Dokuwiki, Wackowiki и т. п.) приближается к полутора миллионам. Конечно, часть из них пользователи скачали из любопытства, но многие были успешно установлены и «сданы в эксплуатацию». Некоторые компании используют wiki-серверы в своих интрасетях, где нет необходимости бороться с вандализмом или устанавливать бесчеловечные ограничения на использование системы.

Но в истории wiki были и поражения. В 2005 году газета Los Angeles Times в качестве эксперимента установила wiki на свой веб-сервер. Однако количество вандалов-энтузиастов превысило разумные и допустимые нормы. Так или иначе, в результате их действий редакция приняла решение закрыть проект Wikitorial (так назывался этот раздел электронной версии газеты).

Последователями учения wiki стали и бизнесмен Джимми Уэлс (Jimmy Wales) и ученый Ларри Сэнгер (Larry Sanger), которые положили его в основу своей электронной энциклопедии — Nupedia. Основной принцип этой энциклопедии гласил: содержащаяся в ней информация должна распространяться бесплатно и свободно. Проект существовал с марта 2000 до сентября 2003 года. Но в историю он вошел еще и потому, что Nupedia считается прообразом появившейся в январе 2001 года энциклопедии Wikipedia.

Wikipedia

«Википедию» можно считать высшей точкой развития wiki как идеи и механизма. На ее примере проще всего объяснить принцип работы wiki и увидеть весь ее потенциал.
Итак, проект стартовал в начале 2001 года как продолжение Nupedia. Разница между ними была не столько техническая, сколько идеологическая. Материалы для Nupedia писали ученые, инженеры и сотрудники академических институтов; редактировал и координировал проект его создатель Ларри Сэнгер. Впрочем, энтузиазма и возможностей Сэнгера хватило ненадолго: несмотря на нечеловеческие усилия, проект развивался недостаточно быстро. Тогда Сэнгер и Уэллс (главный финансист проекта) решили сделать копию «Ньюпедии», редактировать которую, в соответствии с духом wiki смог бы любой желающий. Новый проект назвали Wikipedia. Создатели ничего не теряли: оригинальная Nupedia оставалась закрытой для участия со стороны широкой публики, а у Wikipedia были шансы стать или Невероятной Всемирной Помойкой, или самой крупной энциклопедией в мире.

Первое время проект работал на основе стороннего механизма UseMod, но вскоре код энциклопедии переписали «с нуля» и сделали его открытым. Диалект wiki, используемый в «Википедии», назвали Mediawiki — это программное обеспечение установлено сегодня на тысячах серверов и используется для самых разных проектов. Скачать код Mediawiki можно с официального сайта.

15 января 2001 года стартовала англоязычная «Википедия», а через четыре месяца были открыты ее филиалы на других языках: еврейском, испанском, итальянском, каталанском, немецком, португальском, русском, французском, шведском, эсперанто, японском, а еще через некоторое время — на арабском и венгерском.

Ход оказался верным. Число полезных статей заметно превысило количество привносимого мусора; люди старались следовать советам «Википедии» и писать статьи во вполне энциклопедическом духе.

Но для поддержания проекта требовалось все больше средств: нужны были новые люди и новые серверы. Поэтому в середине 2003 года был основан фонд «Викимедиа», который стал собирать средства для поддержания работ. С помощью фонда было открыто несколько родственных проектов: свободная библиотека «Викитека» (русский отдел), бесплатные «Викиучебники», «Викисловарь», «Викиновости», собрание цитат «Викицитатник», хранилище медиафайлов «Викисклад» (русской версии нет), «Викивиды» — энциклопедия биологических видов на английском языке, а также «Метавики» — сборник информации о проектах.

Уже сейчас «Википедия» стала величайшим хранилищем информации в мире. 1 марта 2006 года в ее англоязычной части была размещена миллионная статья! В русской части число материалов приближается к 70 000. Эта цифра кажется небольшой только в сравнении с английским сегментом. Сама по себе она достаточно велика, учитывая, что основная информация является актуальной именно сегодня, а количество статей, покрытых пылью времени, ничтожно мало. Кроме того, у каждого википедического материала есть страница-спутник для дискуссии.

Личная энциклопедия

«Я хочу запустить собственный wiki-проект!» — воскликнет любопытный читатель, и окажется, что нет ничего проще! Для этого вам понадобится: хостинг (лучше платный; сегодня он обойдется не дороже $60–70 в год), домен (по вкусу) и дистрибутив wiki-системы (в ассортименте). Выбор дистрибутива должен быть связан с назначением проекта и с возможностями хостинга.

Как пишут «Википедию»

Согласно правилам «Википедии», в ней нельзя размещать материалы, охраняемые авторскими правами, а также оригинальные разработки. Никто не может претендовать ни на один размещенный материал, равно как и на энциклопедию в целом; вся информация является свободной и бесплатной — принцип унаследован у «Общественной лицензии GNU». Нельзя подписывать статьи, так как редактировать их может любой участник.

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

Более подробные правила, призванные привести тексты «Википедии» к приятному единообразию, можно найти на сайте энциклопедии на странице «Википедия:Правила и указания».

Mediawiki

Рассмотрим уже неоднократно упоминавший двигатель, на котором работает «Википедия». Упакованный дистрибутив весит примерно 2,5 Мбайта; в распакованном виде занимает около 8,5 Мбайта. Если вы когда-нибудь сталкивались с веб-программированием, то знаете, что 8,5 Мбайта PHP-кода — это очень много. Впрочем, не весь он будет работать на вас одновременно.

Дело в том, что дистрибутив готов к локализации на полторы сотни языков и содержит несколько «скинов» — вариантов внешнего вида вашей системы. Можно сделать ее близнецом «Википедии», а можно выбрать любой другой из семи предлагаемых вариантов. Кроме того, новые «шкурки» и плагины лежат во множестве уголков Сети — стоит лишь поискать; открытый код на то и открыт, чтобы люди дополняли и улучшали его. Можно разработать и собственные варианты оформления, если вы чувствуете в себе талант дизайнера и программиста.

Тем не менее, даже за вычетом неиспользуемых «скинов» и языков, кода в Mediawiki много. Это довольно тяжелый механизм, предназначенный для работы на высокопроизводительных серверах и готовый обслуживать миллионы запросов в день, как это делает «Википедия».

Конечно, никто не мешает поставить его и на виртуальном хостинге, правда, в этом случае вряд ли удастся задействовать механизмы серверного кэширования и некоторые другие штуки; впрочем, работать Mediawiki успешно может и без них.

Система живет практически на любой платформе, на которой найдется веб-сервер (рекомендуется Apache), PHP версии 4.3 или выше (4.3.11 — предпочтительнее) и база данных MySQL версии 3.23 или выше (лучше — 4.0.23). Специальных средств для работы с базой данных не понадобится — только учетная запись пользователя или администратора БД, остальное Mediawiki сделает сама. Впрочем, средства типа phpMyAdmin не повредят, если вы вручную периодически делаете бэкап или если решите исправить какие-либо данные в базе.

Более подробное описание установки (в нижней части страницы есть переключатель на русскоязычное описание).

Резюме: Mediawiki — тяжелая артиллерия, не вполне предназначенная для стрельбы по представителям семейства Passeridae (воробьиных).

Представим, что вы используете небольшой виртуальный хостинг, для которого эта махина кажется несоразмерной, но в то же время вам хочется получить похожую на «Википедию» систему. Это станет для вас проблемой, но…

Dokuwiki

…проблемой это останется не дольше, чем вы будете скачивать дистрибутив другого wiki-диалекта — Dokuwiki. В зоне RU эта система довольно популярна, ее дорабатывает толпа русскоязычных разработчиков. Оригинальный дистрибутив весит он 815 Кбайт, в распакованном виде — 2,85 Мбайта.

Dokuwiki — полная противоположность Mediawiki с точки зрения требований к ресурсам. Для работы Dokuwiki вообще не требует базы данных: все записи сохраняются в виде отдельных файлов, которые система самостоятельно индексирует во время их добавления или изменения.

Для установки Dokuwiki нужен веб-сервер (как всегда, предпочтение Apache) и PHP 4.3 или выше. Все! Дополнительные функции и плагины (такие как проверка орфографии) могут потребовать лишних ресурсов, но ставить их не обязательно. В комплекте Dokuwiki также идет несколько «скинов», один из которых — клон внешнего вида «Википедии». Подробный процесс установки описан на странице wiki.splitbrain.org/wiki:Install — проблем не возникнет, если вы не забудете установить права полной записи на каталоги, в которых хранятся файлы конфигурации и вновь создаваемые страницы.

Преимущества этой разновидности wiki в том, что вы не останетесь без информации, даже если «отвалится» база данных и обработка скриптов — все записи хранятся в текстовых файлах, а wiki-разметка достаточно проста, чтобы не мешать восприятию. А также, несмотря на великое множество тонких настроек, которые есть в любой wiki, в этой реализации по умолчанию выбраны самые «человеколюбивые», удобные пользователю.

Так, например, если вы пишете статью, разбитую на разделы (для обозначения нового раздела в wiki есть определенный тэг), Dokuwiki предлагает вам кнопочку не только для редактирования всей статьи, но и для каждого раздела отдельно; это удобно, если не хочется в текстовом режиме выискивать параграф №115.

В случае с русским языком есть особенности, реализация которых до сих пор вызывает споры. Так, нет единого или хотя бы доминирующего мнения о том, как поступать с URL (адресами) ссылок на статьи. В английском языке для этого часто используют так называемый CamelCase. Если заголовок содержит в себе несколько слов с пробелами между ними, пробелы сокращаются, первые буквы слов ставятся в прописной регистр, остальные в строчный — ПримерноВотТак. В русском языке это зачастую не работает. Во-первых, русским словам свойственно оказываться в падежах, отличных от именительного, и ссылка «Биография Василия Чапаева» рискует привести на статью с адресом «ВасилияЧапаева», а не «ВасилийЧапаев», если ее не отредактировать вручную. Во-вторых, русские буквы, попадая в адресную строчку браузера, превращаются в конструкции вида %xx или даже %xx%xx. Плагины типа HumanURL (для Firefox) не всегда помогают — они приводят %xx в читабельный вид в адресной строке, но не всегда это работает в обратном направлении, и обратиться к статье, например, meta.wikimedia.org/wiki/Помощь:Установка может и не получиться — сервер откажется понимать русские символы. Правильный адрес статьи выглядит так: meta.wikimedia.org/wiki/ %D0%9F%D0%BE%… и т. д., а это, согласитесь, ужасно. Впрочем, подобную адресацию используют и Mediawiki, и Dokuwiki. Но есть и другие решения.

Wackowiki

У движка Wackowiki — российские корни. Найти его описание и дистрибутив можно по адресу wackowiki.com. Релиз версии 4.2 весит около 300 Кбайт в упакованном виде и 1,22 Мбайта — в «чистом». Требует он того же, что и его собратья: желательно Apache (можно и другой веб-сервер), PHP 4.1 или выше и MySQL — в Wacko информация все же хранится в БД. В дистрибутив включены три темы оформления, еще одиннадцать можно скачать с сайта разработчиков.

С русскими ссылками Wackowiki поступает просто: транслитерирует их, приводя к виду VasiliyChapaev. Нельзя сказать, что это очень изящное решение, особенно с учетом множества вариантов транслитерации, но тем не менее адрес становится читабельным и воспроизводимым.

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

Время подводить итоги

Wiki-системы хороши. Сайт на их основе можно создать и настроить за полчаса. Набить его информацией также не составляет труда — но делать это лучше не в одиночку. У каждого материала на wiki-сайте есть постоянный адрес, который довольно легко запомнить и воспроизвести. В случае с русским языком еще не все гладко, но — «мы работаем над этим».

Wiki позволяет не только создавать базы знаний или вести коллективную документацию, но и организует мышление: сиcтема очень наглядным образом классифицирует информацию, позволяя отнести материал к той или иной категории, создать структуру информации, «информационное пространство».

Wiki-системы поддерживают связь друг с другом. Существует уникальная InterWiki-адресация: каждой новой wiki-системе (а также поисковым машинам) присваивается уникальный идентификатор. Если в wiki поставить ссылку вида ИмяВнешнегоУзла:Термин, эта ссылка автоматически привяжется к упомянутой внешней системе, будь то «Википедия» или Google.

Все прекрасно. Но… в 2002 году Ларри Сэнгер, один из основателей «Википедии», покинул этот проект. Его душа не вынесла зрелища четкой академичной базы знаний (каковой была Nupedia), отданной на растерзание дилетантам.

Но не все пользователи wiki настолько чувствительны. Подтверждением тому служит сама «Википедия» в ее нынешнем виде. Заходите, пользуйтесь ею, читайте и правьте — и если вы будете делать это хорошо и ответственно, она станет лучше. Какая бы она ни была, «Википедия» — точное отражение состояния умов пользователей. Этакое цифровое отражение коллективного знания планеты, нравится оно вам в таком виде или нет. Но ведь у каждого есть шанс создать свою википедию. И даже нечто лучшее!

Бюрократический аппарат

Естественным образом встает вопрос о достоверности и точности информации, которая содержится в «Википедии». Здесь приходится признать, что, несмотря на все усилия людей, поддерживающих проект, никто не может гарантировать истинности информации, которой пополняется свободная энциклопедия. В целом предполагается, что «коллективный разум» исправляет ошибки и неточности, причем исправляет более активно, чем портит. Пока эта схема работает, но это не гарантирует, что в статье не будет ошибки. Основной принцип здесь — доверяй, но проверяй. А проверив и найдя ошибку — исправь. При этом минимальные возможности контроля над ситуацией, конечно, предусмотрены.

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

В частности, в «Википедии» есть определенный класс пользователей — Бюрократы. В настоящий момент в русскоязычном отделе их трое. Бюрократ «Википедии» — это администратор с полномочиями присваивать другим пользователям сайта статус администратора.

Для того чтобы стать администратором, пользователь должен подать соответствующую заявку. При этом в его багаже должно быть больше 500 правок, а также участие в «Википедии» сроком не менее четырех месяцев.

Голосовать за или против кандидата могут любые зарегистрированные пользователи, на счету которых было не менее пяти правок на момент начала голосования. «Википедия» советует голосовать «против», если у вас есть сомнения относительно кандидата, и воздержаться от голосования, если кандидат вам неизвестен. Голосование идет в течение недели.

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

Таким образом, к выбору пользователей, наделенных особыми правами, стоит подходить очень ответственно — как-никак, а это локальное «электронное правительство». Кроме доверия пользователей от администратора требуется возможность и желание выполнять свою работу. Это особенно актуально с учетом того, что все участники «Википедии» работают бесплатно. В экстренных случаях с администраторами можно связаться по ICQ, номера которых выложены на странице «Википедия:Администраторы:В сети».

По результатам голосования Бюрократы принимают решение о присвоении участнику статуса администратора или об отклонении заявки. Отменить статус Администратора они уже не могут; такое решение может быть принято только всем сообществом «Википедии», а приведено в исполнение Стюардами (высшие должностные лица, близкие к организаторам проекта; в природе их девять).

  • WordPress

Speak Your Mind

Tell us what you're thinking...
and oh, if you want a pic to show with your comment, go get a gravatar!

e.motion