Современная электронная библиотека ModernLib.Net

Компьютерра (№255) - Журнал «Компьютерра» № 40 от 31 октября 2006 года

ModernLib.Net / Компьютеры / Компьютерра / Журнал «Компьютерра» № 40 от 31 октября 2006 года - Чтение (стр. 6)
Автор: Компьютерра
Жанр: Компьютеры
Серия: Компьютерра

 

 


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

СОФТЕРРА: Википедия своими руками. WikiWikiWeb: от идеи до философии

Авторы: Илья Щуров Voyager, Борис Богданов

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



Права и свободы

Давайте вспомним, что мог сделать в Сети простой пользователь в середине девяностых, когда появились первые вики? Честно говоря, практически ничего. Создание собственного сайта требовало знания и опыта работы с ftp, html, cgi и прочими шаманскими практиками, недоступными простому смертному. Большинство же существующих проектов не могли похвастаться особой интерактивностью, и участие пользователей сводилось к гостевым книгам, форумам и попыткам уговорить администраторов наконец выложить присланную полгода назад статью (рассказ, фотографию). Воспитанные на суровых принципах ИТ-безопасности, создатели сайтов действовали так, как если бы все посетители поголовно были злобными хакерами и сетевыми вандалами и разрешали «самодеятельность» только в выделенных «вольерах», под чутким присмотром модераторов.

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



Пример вики-разметки


== Биография ==

Михаил Булгаков родился 3 ([[15 мая|15]]) мая [[1891]] г. в [[Киев]]е в семье доцента Киевской духовной академии Афанасия Ивановича Булгакова и его жены Варвары Михайловны (в девичестве — Покровской).


Соответствующий HTML-код


Биография

Михаил Булгаков родился 3

(15) мая 1891 г. в

Киеве в семье доцента Киевской духовной академии Афанасия Ивановича Булгакова и его жены Варвары Михайловны (в девичестве — Покровской).

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

Надо отметить, что у концепции вики-разметки есть один недостаток: будучи простой для восприятия человеком, она довольно трудна для формального описания. (Много труднее, чем, например, 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.

Любой развивающийся движок старается включать в себя интересные решения и возможности, так что самый интересный, боюсь, мне не назвать.

Планируется ли продолжать разработку WackoWiki, и если да, то какие функции будут добавлены?

— С разработкой WackoWiki, к сожалению, все не очень просто. У меня лично времени на разработку не хватает вообще. Я пару раз пытался найти энтузиастов, которые бы смогли подхватить выпадающее из рук знамя, но безрезультатно. Возможно, если я внезапно стану богатым, смогу нанять одного-двух разработчиков для развития движка. Мне бы этого хотелось, но пока такой возможности нет — я не заработал на WackoWiki ничего (пожертвований удалось собрать примерно двести долларов, это не окупает даже хостинг сайта wackowiki.com.)

Каковы сферы наиболее эффективного использования вики?

— Очевидно, что онлайн-энциклопедия и база знаний (как интранет, так и Интернет) — наиболее очевидные области. Кроме того — средство для создания (в том числе совместного) документации, книги или другого текста; инструмент ведения персональных или групповых todo-списков и других проектных работ.

А насколько перспективны индивидуальные органайзеры, такие, как ZuluPad или deskDo?

— Ну, все же ZuluPad не органайзер, а примитивный вики-блокнотик, куда примитивнее того же WikidPad. Инструмент для легкого управления списками дел лично мне нужен очень сильно, поэтому я субъективно оцениваю перспективы deskDo как высокие. Но, возможно, я нерепрезентативен (смеется).

Роман Иванов, разработчик WackoWiki, ныне руководитель отдела коммуникационных сервисов в Яндексе


Википедия, народный монстр

Говоря о вики, нельзя не упомянуть Wikipedia. Попытка создать энциклопедию, чье содержание смог бы корректировать каждый, казалась полным сумасшествием. Тем не менее выбранная стратегия оказалась крайне эффективной — Википедия стремительно превратилась в крупнейшую энциклопедию в мире. Национальные версии Википедии существуют примерно на сотне языков. Крупнейшим разделом является английский (на начало октября этого года он содержал более 1,4 млн. статей), второй по числу статей — немецкий. Одиннадцать разделов содержат больше ста тысяч статей (в конце лета этот психологический порог перешагнула и русская Википедия). При желании вы можете скачать все содержание Википедии к себе на компьютер. Правда размер… Размер такой, что объявляется приз для тех, кто сумеет создать самораспаковывающийся архив Википедии размером хотя бы в 100 мегабайт.

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



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


Вики и образование

Мы выбрали вики из своего предыдущего опыта, потому что хотели уйти от плоских единоличных презентаций к многомерному миру коллективного гипертекста. Делали такие гипертексты и вне Вики, но в Вики — наиболее радикально и последовательно. Мы не хотим повторять и дублировать Википедию. «Летопись» — это площадка для экспериментов: «как это может быть сделано?», «какие новые возможности открывает среда?»

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

Из неожиданного — растущий мир расширений среды MediaWiki. Особенно впечатлила возможность графического представления связей между объектами и страницами — пакет Graphviz. В «Летописи» про него есть статья «Графвиз» и масса примеров в построении генеалогических деревьев школьников.

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

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

Да, еще один результат — по мере развития «Летописи» создаются региональные Вики — в Хабаровске, Саратове, Пскове, Нижнем Новгороде, Мурманске. С одной стороны, некоторые авторы теряются — начинают больше писать внутри своего региона, а с другой — технология пошла по России, что очень приятно.

Евгений Патаракин, координатор образовательного проекта Letopisi.Ru


Выбор вики

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

В любом случае, вики-хостинг поможет вам, как минимум, понять, подходит ли эта технология для решения ваших задач и какие возможности действительно необходимы. Ну а дальше предстоит выбор платформы и основных функций. Здесь может очень пригодиться сайт WikiMatrix.org, в базе которого собраны данные более чем по шести десяткам вики-движков. Контроль версий, ограничения доступа, RSS-ленты с информацией об изменении страниц, подписка на изменения конкретных страниц и т. д. — количество параметров для сравнения внушительно. Впрочем, если интересно, посмотрите на таблицу на en.wikipedia. org/wiki/Comparison _of_wiki_software.

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

Cофтерринки

Автор: Илья Шпаньков

Ru.OpenOffice.org

ОС Windows, Linux, FreeBSD

Адрес i-rs.ru

Версия 2.0.4 Professional

Размер от 121 до 145 Мбайт

Интерфейс многоязычный (русский поддерживается)

Цена бесплатно

Лицензия GNU LGPL


Локализованный вариант популярного свободного пакета офисных приложений OpenOffice.org. Помимо стандартных программ, позволяющих работать с текстовыми документами, электронными таблицами, презентациями и базами данных, эта сборка дополнена компонентами, адаптирующими пакет для работы в условиях российской специфики. В новую версию вошли словарь синонимов русского языка, шаблоны стандартного документооборота РФ и натуральная сортировка в Calc. Для пользователей Linux-версии добавлены модуль для быстрого старта в GNOME, поддержка библиотеки мультимедиа GStreamer, улучшен рендеринг шрифта Tahoma в пользовательском интерфейсе.

WorldTime Clock

ОС Windows

Адрес www.worldtime-clock.ru

Версия 2.6

Размер 1,4 Мбайт

Интерфейс многоязычный (русский поддерживается)

Цена от 100 руб.

Ознакомительный период 30 дней


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

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

iuVCR

ОС Windows

Адрес www.iulabs.com/rus/index.shtml

Версия 4.14.0.377 RU

Размер 3,1 Мбайт

Интерфейс многоязычный (русский поддерживается)

Цена 300 руб.

Ознакомительный период 30 дней


Перед вами настоящий цифровой видеомагнитофон, позволяющий осуществлять запись изображения с любых ТВ-тюнеров и плат видеозахвата в формате AVI или WMV с использованием технологии Microsoft DirectShow.

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

DiskSweeper Free

ОС Windows

Адрес www.craveworldwide.com/dsweepvt.html

Версия 1.0

Размер 581 Кбайт

Интерфейс английский

Цена бесплатно

Лицензия проприетарная (freeware)


Одна из многочисленного семейства программ, предназначенных для очистки дискового пространства от цифрового мусора. С помощью легко настраиваемого списка масок имен файлов приложение отыскивает пригодные к удалению данные как на локальных, так и на сетевых накопителях или на удаленном сервере. Дополнительные опции позволяют избавляться от файлов нулевого размера и пропускать системные или скрытые файлы. Также отметим возможность быстрого удаления всех временных файлов Windows, очистки папок, содержащих временные файлы, создаваемые при работе в Интернете, включая cookies браузера Internet Explorer.

Болтуны всех стран, объединяйтесь! Мгновенный обмен сообщениями и борьба с виртуальными границами

Автор: Илья Щуров Voyager

Людям нужно общение. Люди хотят говорить, говорить здесь и сейчас, говорить со всем миром, невзирая на границы и расстояния. Поэтому такие технологии, как интернет-пейджинг (instant messaging, IM) или IP-телефония, просто не могли не появиться. Они сделали нашу планету еще меньше, а связь — еще проще. Но, с легкостью преодолевая естественные препятствия реального мира, эти технологии столкнулись с новыми границами, рожденными самим пространством ИТ, его устройством и экономикой.


Границы виртуального мира

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

Наличие интероперабельности (в любой области), очевидно, является плюсом для конечного пользователя, что очень редко отрицается разработчиками самых разных продуктов. Тем не менее ее отсутствие может оказаться плюсом для производителя — и не просто плюсом, а решающим фактором в конкурентной борьбе. IM-сети являются хорошим примером: вспомните, зачем вы установили когда-то ICQ? Скорее всего, чтобы общаться со своими друзьями, уже зарегистрированными в этой сети. Причем выбора у вас не было — если бы вы захотели подключиться к любой другой сети (свои мессенджеры есть у AOL, MSN, Yahoo и др.), вы бы остались в полном одиночестве: связи между ними до недавнего времени не было. Даже после покупки компании Mirabilis AOL’ом в 1998, до 2002 сети ICQ и AIM функционировали раздельно (работая на одних и тех же серверах), а интероперабельность между MSN IM и Yahoo IM была анонсирована лишь летом этого года.

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

Не для протокола

Появлению протокола Jabber (англ. «болтовня», «бормотание») мы обязаны отсутствию совместимости между сетями ICQ и AIM, а также Джереми Миллеру (Jeremie Miller), решившему исправить этот существенный недостаток в 1998 году. Исходно Jabber задумывался как промежуточный протокол, основанный на XML, через который можно было бы «перенаправлять» сообщения из одной IM-сети в другую. Впрочем, быстро стало ясно, что подобное решение можно использовать и для непосредственной связи между пользователями. И не только между пользователями: между любыми объектами в Сети (например, двумя серверами или клиентом и сервером), которым требуется двусторонняя связь в реальном времени, контроль присутствия и другие функции IM.

Ядро разработанных и разрабатываемых в рамках проекта Jabber протоколов было принято в качестве интернет-стандартов RFC в 2004 году под именем XMPP (Extensible Messaging and Presence Protocol). Это семейство протоколов описывает базовый уровень взаимодействия (передача XML-потока, способы идентификации участников обмена), собственно обмен сообщениями и информацией о присутствии (presence), авторизацию и шифрование сообщений и т. д. При общении по XMPP сервер и клиент как бы последовательно пишут по кусочкам единый XML-файл.

В отличие от большинства закрытых IM-протоколов, рассчитанных на взаимодействие клиента только с одним центральным сервером, Jabber/XMPP является децентрализованным: он позволяет связываться двум пользователям, подключенным к разным серверам. В этом смысле Jabber-сеть аналогична e-mail, и для идентификации в ней приняты очень похожие адреса (так называемые JID, Jabber IDentificator), включающие имя пользователя и название сервера (например, v_pupkin@jabber.ru). Запустить собственный Jabber-сервер может кто угодно — достаточно иметь компьютер со статическим IP-адресом или постоянным доменным именем. При этом можно как разрешить взаимодействие с другими Jabber-серверами (federating), так и запретить его, создав собственную частную IM-сеть — последнее свойство особенно ценно в корпоративной среде, где Jabber часто и используется. В этом случае внутренняя IM-сеть компании уже не зависит ни от каких внешних факторов и не пересылает никаких данных за пределы корпоративной сети.

Благодаря открытой и хорошо документированной архитектуре, было разработано множество клиентских и серверных программ для поддержки Jabber. Помимо собственно передачи сообщений от одного пользователя к другому, многие серверы поддерживают так называемые транспорты — шлюзы между Jabber и другими сетями. Например, через такой шлюз пользователь Jabber-клиента может обмениваться сообщениями со своими друзьями в ICQ или AIM. Есть и более интересные применения: отправка писем или SMS-сообщений, общение в IRC-чатах, чтение RSS-лент и даже доступ к хранилищу файлов через Jabber. (Дабы определить, какие транспорты поддерживает тот или иной сервер, в большинстве Jabber-клиентов можно задействовать функцию Service Discovery [рис. 3, клиент Psi].)


  • Страницы:
    1, 2, 3, 4, 5, 6, 7, 8