Содержание
Данный доклад посвящён MoinMoin 2.0, следующему поколению вики-сервера MoinMoin.
MoinMoin 2.0
MoinMoin 2.0: вики-сервер нового поколения
| Седьмая конференция разработчиков свободных программ | 
| Переславль-Залесский, 2010 | 
История вики
| « | The simplest online database that could possibly work.» | 
| Ward Cunningam | |
Вики — веб-сервис, позволяющий пользователям свободно создавать и редактировать содержимое размещённых на вики-сайте страниц. Вики поддерживает форматирование текста посредством вики-синтаксиса. Другой особенностью вики является простота указания ссылок и создания новых страниц. Также следует отметить такую важную особенность вики (являющуюся енеобходимым следствием простоты внесения правок), как наличие истории изменений у каждой страницы.
Основные концепции и свойства
- Вики состоит из страниц
- Страницы вики легко можно создавать и править
- Страницы вики имеют простой синтаксис
- Страницы легко связывать
- Страницы имеют историю версий
Основная метафора в рамках концепции вики — страница. Она являет собой текст в специальной (вики-) разметке, доступный в рамках сервера по определённому адресу.
Наслоения
- Страницы, имеющие другую разметку (HTML, DocBook, ReST, …) 
- Прикрепляемые файлы
- ACL
- Различные системы расширений синтаксиса и функциональных возможностей
- Управление пользователями (группы, права, переименование, …)
- Параметризация отображения страниц
- Обработка страниц (замена ссылок, изменение упомянутого выше, и т. д.)
- Различные упражнения с внешним видом — user css, per-page css, …
Концепции Moin2
- Унификация хранимых на вики сущностей. Единый вид объекта — Item;
- Единый способ обработки различных форматов на основе wiki DOM и конверторов из входных и в выходные форматы.
- Подсистема хранения: - Выделение storage backend (который может быть любым: на основе файлов, БД, DVCS…);
- mount-like подключение различных хранилищ.
 
Здесь не упомянуты многие другие новшества Moin2 (темплейтинг на Jinja2, изменения в i18n/l10n, переработанная система дополнений), но они носят скорее внутренний и технический характер.
Item
 
 
- Item - Может иметь метаданные
- Может содержать в себе несколько версий (revision)
 
- Версия: - Содержит метаданные (MIME, ACL, авторство, время создания, …)
- Содержит собственно данные
 
- Метаданные являются таблицей строк вида «ключ-значение»
- Данные: вообще говоря, бинарные
Подсистема хранения
|   | 
Что, собственно, изменилось?
- На самом деле, концепция поменялась несущественно:
- Есть надежда, что аналогичные революционные или эволюционные изменения в других проектах позволят решить большое количество проблем, в основном связанных с воместимостью разных вики-серверов.
Текущее состояние
- MoinMoin 2.0 находится в активной разработке 
- Ввиду большого количества изменений, релиз планируется не ранее 2011 года
- На данный момент практически полностью реализована базовая функциоенальность
Спасибо за внимание
- Сайт проекта: http://moinmo.in/ 
- Репозиторий: http://hg.moinmo.in/ 

