Наши партнеры

UnixForum






Книги по Linux (с отзывами читателей)

Библиотека сайта rus-linux.net

На главную -> MyLDP -> Тематический каталог -> Программное обеспечение для Linux

Свободные программы для создания эффективных сайтов сообществ. Часть 1

Оригинал: Free software tools for designing productive community sites
Автор: Terry Hancock
Дата: 7 октября 2008
Перевод: Александр Тарасов aka oioki
Дата перевода: 10 ноября 2008

В последнее время много говорят о явлении "Web 2.0" - когда сайты становятся более интерактивными. На самом деле происходит куда более значительная вещь - сайты возвращаются к целям объединения людей в сообщества на просторах интернета. Совместная работа, кооперация и информационные сообщества - в самом начале своего зарождения мировая паутина задумывалась именно для этого. В настоящее время, когда господствуют распределенные вычислительные системы, эти технологии развились в совершенстве. Прочитав данную статью, вы узнаете 8 технологий, с помощью которых можно построить сообщество вокруг информационного проекта любого рода, будь то мультимедиа, какое-то устройство или программа.

Чем создать сообщество?

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

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

Перечислить абсолютно все пакеты для создания и поддержки сообщества не представляется возможным, поэтому я постарался выбрать из них наиболее интересные и популярные. Например, для веб-инструментария я рассматриваю пакеты для LAMP (Linux+Apache+MySQL+PHP), Drupal (CMS, написанная на языке PHP; на этой CMS работает сайт Free Software Magazine), Plone (CMS, написанная на Python/Zope, ее я планирую использовать в будущем) и других систем (основанных на C, Perl, Ruby, Java и других языках). Также я приведу примеры сайтов на этих системах, вы сможете на них зайти и посмотреть - и вам не придется устанавливать эти системы на своем компьютере.

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

Я постарался ограничить список программ клиентов и серверов, используемых участниками сообщества - в этом списке будут лишь свободные системы с открытым исходным кодом. Однако в позиции "Службы" я смягчил это требование: здесь также указаны популярные, занимающие видное место на рынке проприетарные службы. В их числе такие службы, как SecondLife и Yahoo Groups. Как та, так и другая широко используется для продвижения свободных программ и проектов свободного содержимого.

Личная переписка: электронная почта и мгновенные сообщения

Самые простые технологии общения - это те, которые позволяют устраивать диалог. Электронная почта - традиционный способ такого общения в сообществах свободных программ. В некоторых проектах диалоги могут проводиться через личные сообщения (private message, PM) на форумах, либо (когда требуется немедленно сообщить о чем-либо) через системы мгновенных сообщений. Наконец, не забывайте о телефоне!


Электронная почта и личные сообщения на форумах - это базовые средства ведения диалога. В большинстве свободных программных проектов используется электронная почта, но использование личных сообщений (PM) на форумах не менее эффективно (Автор работы: Daria Radota Rasmussen/CC-By 2.0)

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

Есть несколько вариантов чат-апплетов, которые можно запускать в окне браузера. Таким образом можно вывести чат в веб-среду. Есть также куча webmail-приложений, встроенных в веб-сайт, однако в своей таблице я их не привел.

Контекст Личная переписка
Низкий уровень электронная почта
LAMP CoolSmile, другие форумы
Drupal Forummail
Plone qi.LiveChat, MailNode, PloneFormGen, SignupSheet (см. также форумы)
Другое webmail packages
Веб-сервисы Google Mail, Yahoo Mail и т.д.
Клиенты ChatZilla, Konversation, XChat, BitchX, другие IRC; Kopete, Pidgin и другие мессенджеры
Серверы EIRC (Java), ircd, другие IRC-демоны
Инфраструктура IRC и другие протоколы
Службы OFTC, freenode, EFnet, Undernet

Форумы

Следующий шаг - это веб-форумы. Форумы являются эволюционным продолжением "электронных досок объявлений" (bulletin board systems, BBSs) из 1980-х и 1990-х годов, адаптированным под современный веб. Они доступны большинству пользователей, даже тем, у кого проблемы с электронной почтой. Что более важно, так это то, что модераторы могут следить за троллями, флеймерами и другими людьми, которые плохо влияют на развитие сообщества проекта. Такое аккуратное слежение за форумом поможет сделать проект более популярным.

Если вы хотите остаться низкотехнологичным, тогда для вас будут предпочтительны электронные списки рассылок. В большинстве новых серверов для списков рассылки имеется веб-система подписок. Также есть группы Google и Yahoo, предоставляющие функциональность почти как в новостных группах Usenet, и к ним можно обращаться как через веб-интерфейс, так и по электронной почте.


Форумы и группы - замечательное место для поддержки, обучения и обсуждений (Авторы работы: Pingu1963@Flickr/CC-By 2.0)

Контекст Форумы
Низкий уровень списки рассылки, новостные группы
LAMP PHP BB, Phorum, FluxBB, XMB и другие
Drupal Forum (core), Advanced Forum, flatforum, Forum Thread, Democracy forum, phpBBforum, Phorum integration
Plone Ploneboard, SimpleForum, zForum, TIForum, Gossip, EasyForums, NunBB, PloneMailList, Listen
Другие JForum, Beast и другие
Службы Google Groups, Yahoo Groups, Simple Machines Forums

Блоги и онлайн-содержимое

Обновлять динамичный веб-сайт, напрямую редактируя статический HTML-файл, может быть ужасно рутинной работой. Для упрощения этой работы были созданы "системы управления содержимым" (content management systems, CMS). На сегодняшний день стали широко распространены так называемые веб-логи, или (сливая два слова вместе и отсекая начало) блоги. Есть скрипты, предназначенные специально для ведения блогов, но есть также и модули блогов для популярных систем управления содержимым (включая Drupal и Plone).


В программах веб-логгинга (или блоггинга) и CMS, в зависимости от их реализации, есть все для создания открытого веб-дневника или полнофункциональной новостной службы (Авторы работы: Wee Keat Chin/CC-By 2.0, David Lisbona/CC-By 2.0)

Контекст Блоги
Низкий уровень статические HTML-страницы
LAMP Wordpress, b2evolution, LifeType, Serendipity, Nucleus CMS, FlatPress и другие
Drupal Blog(core), Single-User Blog, Blog List, Mini Blog, Blogroll, Blogger, DrupalMU
Plone COREBlog2, Quills, SimpleBlog, q Plone Blog, bda.blogview, PloneWorkflows, ReactiveWorkflow, Press Room, Slideshow Folder, Plumi (video)
Другие Typo (Ruby)
Службы Wordpress и другие

Вики и системы контроля версий

С первого взгляда может показаться странным, что я смешиваю вики и системы контроля версий, однако по сути они решают одну и ту же задачу. Вики - это легковесная система контроля версий с возможностью просмотра и редактирования прямо в браузере. Как правило, системами вики научиться пользоваться куда легче, чем CVS или Subversion, хотя для облегчения работы с ними существуют интерфейсные надстройки.


Как вики, так и системы контроля версий хранят базы текстов проекта. Вики - легковесные ситемы, их содержимое может редактировать практически любой. Чтобы научиться пользоваться системами контроля версий, требуется некоторое время, однако они обладают большей функциональностью (Авторы работы: Kevin Quinn/CC-By 2.0, Ralph Bijker/CC-By 2.0, Lars Plougmann/CC-By-SA 2.0, Ellie Van Houtte/CC-By 2.0)

Вики - это быстрая веб-система с простым языком разметки, там можно быстро создать новую страницу и просматривать ее в HTML-виде (иногда и в других форматах).

Системы контроля версий базируются на другой мысленной модели: один пользователь скачивает пакет целиком (операция называется "check out"), и затем после внесения изменений отправляет обратно (операция "check in"). Это решение намного тяжелее, чем вики, и обычно для участников есть определенные ограничения, что приводит к усложнению рабочего процесса. Системы контроля версий предпочтительно использовать для работы с исходными текстами программ. Существует множество таких систем, я указал здесь Subversion лишь потому, что у него есть веб-интерфейс. Для других систем контроля версий (в том числе и CVS, ставшей стандартом в мире свободного ПО), есть веб-интерфейсы ViewVC и Trac.

Контекст Вики и системы контроля версий
Низкий уровень статические HTML-страницы
LAMP MediaWiki, TikiWiki, DokuWiki и другие
Drupal Drupal Wiki, interwiki, Wikitools
Plone ZWiki, ZWikiFolder, Wicked, Cuic pages; ViewVC++
Другие Moin Moin (python), JAMWiki (java), Instiki (ruby); ViewVC, Subversion, Trac
Службы Wikia, Wikibooks и другие; Sourceforge (пакеты), Google Code (пакеты), другие хостинги проектов

Продолжение следует.