Etherpad

Матеріал з Фізмат Вікіпедії
Перейти до: навігація, пошук

Etherpad

Etherpad - це досить простий додаток, призначений для спільного створення текстових документів. По суті, цей веб-сервіс являє собою блокнот, але лише з однією важливою особливістю - з його допомогою кілька чоловік можуть редагувати матеріали в реальному часі. В ньому ви можете створювати власні документи (pad в термінології проекту) і запрошувати інших користувачів до редагування. Один з найпростіших способів співпрацювати з діловим партнером або колегою, але він також є одним з найскладніших звичок, які потрібно зламати.І в той час електронна пошта є настільки поширеною і майже миттєвою, що вводиться поняття послідовної співпраці - Я працюю над документом, відправляю його до вас і ви працюєте на ньому і відправляєте його назад - це незграбно.Документи, що додаються можуть засмічувати системи електронної пошти або отримати відхилення фільтрів. Якщо більше двох осіб працюють над цим, хтось повинен нести відповідальність за вирішення конфліктів.

Структура

Що показово, відсутні принципово будь-які засоби форматування тексту – тільки поле для введення і функція нумерації рядків (дуже правильна і потрібна опція, смію зауважити).Таке обмеження відразу ставить хрест на інших цілях сервісу - тут явно не розвернуться, показуючи перед колегами мистецтво оформляти документ трьома шрифтами і шістьма стилями одночасно. Однак саме в цьому і основна сила редактора.

Принцип роботи

Принцип роботи Etherpad досить простий. Перший користувач створює якийсь документ для редагування, що відкривається по спеціальному посиланню, надісланому ним іншим учасникам. Будь-які зміни що вносяться видно всім працюючим. Таке рішення цілком влаштує редакторів і авторів статей, оскільки вони зможуть знімати питання в реальному часі. З мінусів Etherpad варто відзначити не надто широку функціональність сервісу, а також те, що документи зберігаються лише протягом певного часу, а потім посилання стають недійсними. Отже, тримати файли на серверах Etherpad не варто.

Автор документа може по e-mail запрошувати до редагування будь-яку кількість інших користувачів (для цього реєстрації непотрібно, тільки унікальний для кожного pad-а URL), кожен з яких отримує свій колір для виділення своїх поправок. Що характерно, всі правки, внесені одним користувачем, дуже швидко, буквально миттєво, доступні всім - застосовується технологія Comet для безперервного зв'язку з сервером, самі розробники протиставляють це класичному AJAX-підходу, у тому ж Google Docs, де на збереження документа витрачається кілька, а то й десятки секунд. Тут візуально часто непомітна затримка, що дозволяє добитися майже живого спілкування. Додатково присутній чат для спілкування учасників редагування - він також без надмірностей, що дуже тішить (уф, я такий радий, що тут немає смайлів). Він буде корисний для загального оповіщення учасників або уточненні тих чи інших правок. Історія чату зберігається при перезавантаженні і повторному вході в редактор, що також великий плюс.

У редакторі реалізована система версій, хоч і з поправкою на специфіку програми. Будь-який користувач може зберегти поточний стан документа у ревізію, разом з усіма правками, які внесені на поточний момент, а в майбутньому можна повернуться до будь-якої проміжної версії або ж просто переглянути її (правда, з обмеженнями - тільки у вигляді простого тексту). Похвально, що всі проміжні версії доступні за своїми унікальними адресами і їх можна роздати іншим або занести в закладки - документи будуть завжди доступні, а якщо у вас є право їх редагувати - то ви зможете відразу почати працювати з будь-якої проміжної версією. Слід сказати, що збереження ревізій тут виробляється вручну, а не автоматично, як в Google Docs, і це правильне рішення. У більшості випадків документ оновлюється прямо по мірі набору іншим користувачем тексту, тому автоматичне за розкладом збереження тексту навряд чи дало б потрібний результат - документ і так персистентний, тобто зберігається поточна копія, а де і коли, на якій стадії створювати проміжні версії, які можуть знадобиться, вже особиста справа самих редакторів.

Налаштування опцій

У редакторі не так багато опцій, яку можна налаштовувати, одною з них – є підсвідчування JavaScript коду! Якщо ви редагуєте не просто текстовий документ, а вихідний код JS, то ця опція дозволить набагато більш зручно організувати свою роботу. Саме в цій функції приховано основне призначення редактора - він дуже зручний для навчання або розбору складних моментів у коді між розробниками. Ну або для парного кодування, слідуючи популярній методології ХР - вам не обов'язково сидіти за одним робочим столом і ділити один комп'ютер, можна бути де завгодно, а працювати спільно. Ну і приємна дрібниця - редактор можна розгорнути на всю площу екрана, приховавши навіть панель опцій і чату, звільняючи таким чином максимум місця для самого тексту. Проект дійсно простий, в ньому реалізовано лише кілька, але найбільш потрібних і використовуваних можливостей.

Платформа редактора

Сама платформа, на якій розроблено і виконується проект, гідна окремого дослідження. AppJet - це онлайнова платформа, яка використовує JavaScript, що виконується як на сервері, так і на клієнті, для побудови веб-додатки. На нижньому рівні, на сервері, виповнюється сервлет, який забезпечує всі інші можливості - масштабування, доступ до баз даних, реалізує Comet-протокол, вбудовану об'єктну базу даних і навіть просту IDE для розробки, також працює прямо в браузері.

Джерела інформації:

EtherPad

EtherPad — онлайн редактор

EtherPad: дистанційна колективна робота над текстом