Что такое NPJ

Разрабатываем документацию с помощью NPJ: эффективно и удобно!

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

Очень часто работа с Open Source-проектом (не важно, его разработка или установка) тесно связана с чтением и написанием документации. Все мы знаем, что память человека обладает избирательностью и имеет свойство убирать «на дальнюю полку» неиспользуемые в данный момент знания. Количество же таких знаний напрямую зависит от вашего опыта работы и размера серверного парка вашей компании.

По своему опыту могу сказать, что пара десятков грамотно написанных (собственноручно) документов по настройке «типовых» решений – сильно облегчают жизнь и навсегда избавляют от мучительных воспоминаний. Больше нет раздумий о том, что же я на этот раз забыл куда прописать и какой нюанс, встретившийся когда-то, никак не может всплыть из глубин моей памяти. Не стану отрицать, наверное, существуют супер-профессионалы, которые помнят всё и всегда, но мне такие не известны. Гуру, с которыми мне приходилось общаться, нет-нет да и говорили в ответ на вопрос «Что-то такое было... Я точно не помню».

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

Для разработки документации из наиболее удобных инструментов можно выделить «НетПроектЖурнал» или просто NPJ. Он построен на принципах работы любого Open Source-проекта. Люди объединяются в сообщества (рабочие группы) и работают над какой-либо документацией. Для примера ведения проекта могу привести весьма простой, но от того не менее удобный биллинг «cake» (https://npj.ru/cake). В данном случае сайт проекта является и его главной страницей, и местом разработки документации, и местом поддержки проекта, так как NPJ – гибкий инструмент и фактически может выступать в любом качестве. Для примера ресурса, основная цель которого разработка и сбор документации, могу привести npj.akeeper.ru. Учитывая весьма продвинутые средства поиска по узлу NPJ – это крайне удобный инструмент.

Суть удобств:

ü Установка и настройка, как правило, занимает 5-10 минут.

ü Гибкость архитектуры позволяет создавать на вашем узле практически всё что угодно – от банального блога (есть ресурс, где NPJ используется для ведения личных дневников livejournal) до серьёзного ресурса по разработке, представлению и ведению проекта.

ü Сквозная авторизация на узлах других систем (о ней чуть ниже) позволяет вам принимать участие в работе на любых узлах, подключённых к общей сети NPJ-узлов.

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

ü Рабочие группы могут быть публичные, премодерируемые, скрытые.

ü Любая страница внутри узла может выступать в любом качестве – от обычного документа, до формы форума (об этом тоже чуть позже).

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

ü Гибкость настройки системы прав позволяет определить, кто, к чему, какой будет иметь доступ. (Это касается как документов и записей рабочей группы, так и документов с записями любого пользователя. Только вы решаете, с каким доступом создаете запись или документ.)

ü Несколько способов представления индекса и разбиения по категориям всей документации рабочей группы.

ü Легкость поиска по всему узлу.

ü В узле, при условии соответствующей настройки доступа, комментировать можно всё, а получать комментарии и отвечать на них можно прямо из вашего почтового клиента. (Больше никаких идиотских писем: «Появился новый комментарий, на который вы подписаны. Пройдите по ссылке, чтобы его увидеть» – забудьте! Жить стало значительно проще и удобнее.)

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

ü Документ можно анонсировать по рабочим группам, сообщив таким образом о его существовании.

ü Есть возможность создать дайджест.

ü Благодаря Wiki-разметке, писать документы не просто, а очень просто. И крайне приятно.

ü Интерфейс для каждой группы, пользователя настраивается индивидуально.

ü Возможность прямо с центральной страницы увидеть все документы, изменения в документах всех пользователей, ленту всех пользователей, ленту всех анонсов, список изменений в дайджестах и так далее.

ü Поддержка RSS.

ü Есть багтрекер.

Выше я упоминал сквозную авторизацию на разных узлах. Дело в том, что каждый узел «НетПроектЖурнала» имеет возможность войти в объединённую общую сеть. Это производится нажатием пары ссылок в настройках. Механизм работы этой системы довольно прост – при заходе на любую гостевую NPJ система находит куки-файл от родного (для вас) хоста и запрашивает у него вашу авторизацию. Если ваш хост авторизацию подтверждает, то на гостевом узле вы будете представлены под именем yournick@yourhost, и вся ваша деятельность перестаёт быть анонимной.

Почему это важно?

Благодаря авторизованной таким образом деятельности вы можете подписаться на уведомления с разных узлов. Это одна из самых полезных функций NPJ. Можно получать уведомления о:

ü Создании новых документов. В томчисле, получать в письме весь новый документ, со всей разметкой.

ü Изменениях в существующих документах.

ü Анонсах на узлах (о создании новых групп, сообществ, разработок).

ü Новых комментариях к записям, в том числе отвечать на эти комментарии прямо из вашей любимой почтовой программы.

ü Прочие уведомления.

Особого внимания заслуживает то, что любая страница журнала может выступать в совершенно разных качествах. Для пояснения необходимо немного рассказать об архитектуре этой системы. Суть архитектуры «НетПроектЖурнал» можно было бы охарактеризовать как «вот вам пластилин, что на ум пришло, то и лепите». Это значит, что каждая страница доступна для редактирования и может как содержать информацию в самой себе, так и являться (например) оглавлением для раздела. Вы можете создать ссылку в теле страницы на объект, который не существует. А сразу после сохранения созданной страницы можно перейти на эту ссылку и тут же создать документ, который будет по ней располагаться. И только вам решать, будет это документом или очередным оглавлением, каталогом, индексом, гостевой книгой или чем-то ещё.

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

Ещё одна деталь, на которую хотелось бы обратить ваше внимание. NPJ написан c применением концепций ООП, а следовательно, добавление функциональности не составляет особого труда. Например, в мою NPJ-систему были внесены необходимые изменения, которые позволили использовать одну общую базу пользователей как для этой системы, так и для phpbb2 форума. Это оказалось весьма удобно, а реализация не заняла и двух дней.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: