Pull to refresh

Comments 95

Ну тут скорее маркетингове исследование. Мы думали в какой блог лучше выложить. Остановились на блоге google wave. Про наш проект особенно ничего и не написали.
UFO just landed and posted this here
Где исходники можно посмотреть?
Пока есть исходники только по редактору на базе Operational Transformation. Вот тут можете глянуть: github.com/rizzoma

По мере устаканивания архитектуры будем остальные куски выкладывать.
Выкладывайте быстрее — крайне хочется развернуть локально.
Где продолжение фотосета можно посмотреть?

image
Да тема крутая нужно еще про нее статью написать. Спасибо что напомнили
Нихт ферштейн :)

раскройте тему :)
Давайте потестим чтоли… rizzoma.com/wave/08317ae14d28773fa9d99aa71819973a/
Первое что бросилось в глаза: горизонтальный скролл при ширине экрана 1024 и слишком много пустого места на панелях слева.
Запишите на отдалённое будущее ещё «говорящие» URL-ы. А то что-то вроде безликого /08317ae14d28773fa9d99aa71819973a/ портит весь настрой. )
Если честно даже не знаю как к такой задаче подойти. Там каждый адрес содержит айдишник документа. Хотя есть пара идей. Можно будет делать сокращенную ссылку и в качестве парамтера передавать название топика или его транслит. В общем да на очень отдаленное будущее:)
/08317ae14d28773fa9d99aa71819973a/whatever-you-want? Проблема же, скорее, в безликости, а не в длине
ну если делать и длинный айдишний и название то будет слишком длинно на мой взгляд. Поэтому я бы эти вещи комбинировал.
Плюс тут еще возникает проблема того что у приватного топика может быть открытое название. В общем думаю все решаемо.
Первое что бросилось в глаза мне — не поддерживают IE :(
Да поддержка IE это очень сложная задача в нашем случае. К сожалению не успевали ее сделать к закрытию google wave. Причем сначала нам нужно будет для firefox сделать поддежку. В общем очень много чего еще делать.
Кстати вот наш роадмэп
Вот image

Полный текст тут: blog.rizzoma.com/2012/02/15/we-need-your-input-for-rizzomas-next-phases/
Приоритеты обсуждаются и если что-то более важное появиться мы меняем
Ну что круто риззома временно упала:) Это было очень хорошее стресс-тестирование, земетили пару узких мест. В общем спасибо всем кто рпинял участие.
точнее не упала, но жестко затормозила.
Может длинные волны? В последней картинке вроде наглядно показано.
В смысле, длинное древо комментариев?
Что-то в этом роде, только это не комментарии, это кусочки, которые может дописать любой и все изменения будут видны в реальном времени…
Большой волной можно было считать волну из 400 кусочков. Кстати, древовидным становился только второй ответ, что позволяло избежать дерева с огромной степенью вложенности при общении аля im и довольно сильно сокращалось наращивание уровня при обсуждении.
Да все верно. Только в google wave была такая проблема что было несколько видов камментов. Часть сворачивалась и часть не сворачивалась.

И если специально по этой тем ене заморачиваться то получалось что почти все коменты несорачиваются. В общем косяк был.

Мы немного дугим путям пошли. Но тоже накосячили. Щас допиливаем:)

Я так понимаю вы работаете над rizzoma.com. Можете вкратце написать, почему волны требовали так много ресурсов на стороне клиента, сам по себе html/css с большим деревом не требуют столько ресурсов, отстается js, если утрировать, при получении новых данных надо найти id в dom, и обновить содержимое. Как получилось, что при открытии большой волны съедались сотни метров оперативки и все жутко лагало?
В кратце дело в том что просто работа по оптимизации скорости была просто заброшена. Я щас пообщаюсь с нашим гуру по архитектуре google wave и там касетвенный ответ.
Тут нужно начать с того что Wav использовало для одновременного редактирования технологию operational transformation. Технология в целом очень крутая. Но та реализация которая получилась у Google имела очень много требований к ресурсам как на стороне клиента так и на строне сервера.

— Кроме того были утечки в клиете. И поэтому открытая волна постоянно жрала оперативу.
—Еще была проблема с не самой эффективной версткой: для волны в 160 блипом имеем 13000 DOM элементов
— реализация ОТ требовала отдельно модели данных на JavaScript и рендеринга в HTML (DOM) + много обработчиков самых разных событий

нав в этом смысле сильно повезло. Часть команды Wave на так давно разработала альтернативную реализацтю OT проект называетс: sharejs. Проект этот опенсорсный и им можно опльзоваться. то мы и сделали. Вот недавно выложили наш rich editor на базе sharejs. Сылка на код есть выше.
так мы условно называли волны с более чем 150 сообщениями, то есть такие, в которых уже непросто ориентироваться, если тщательно не структурировать
Это как в комментариях на хабре?)
Ага. Вот и я че-то промахнулся с этим комментом.
При 150 сообщениях не требовалось много ресурсов и было вполне читабельно за счет «плоскости» обсужденей.
Ну у кого-то не тормозит а у кого-то уже тормозит. Вообще говоря 150 это нижнаяя граница, только начало жизни это длинной волны:) Часто было и 1000 блипов.
Я был на все 100% уверен, что Волны официально умерли еще в прошлом году о_О
«Для тех, кто не видел Google Wave, вот скриншот интерфейса.»
ну и где же скриншот?
А за что ФФ-юзеров дискриминировали? Кстати у меня ничего не тормозит :)
Mozilla/5.0 (X11; Linux x86_64; rv:13.0) Gecko/20120229 Firefox/13.0a1 — Build ID: 20120229031108
Странно что работает:) Дискриминировали потому что еще баги для FF есть.

Тут еже еще такая тема что иногда проект шлеш инвесторам или другим важным чувакам. Чувак зайдет а там верстка сломалась или тупит. В общем лучше сразу сказать что вообще не работает.

Но тем не менее для нас FF это очень важный мэйлстоун. Щас немного с производительностью допилим и за него возьмемся
Ну дайте понаписать чо-ть! Ну пажалуйстаааа!
ну там же есть опция идти на свой риск. А если не можете редактировать то это не фича а баг. Под FF редактирование не всегда работает:)
Ну да. У меня кроме ввода букв всё работает. Запишите.
Ну так ввод букв этож самое важное. Хотя может и верно написать что для FF только в режиме чтения
Да это написано… Просто я думал вы именно отключили эту возможность.
Хотел посмотреть как глючит :) А смотреть, как выясняется, не на что.
Жаль что закрыли, очень удобная штука была.
на 100% согласен. Мы тоже очень любили пользоваться волной. Наделали для нее гаджетов и роботов:
image

И даже встречались с высокопоставленными менеджерами из google. В общем переходить назад в google docs нам не хотелось и мы решились запустить свою волну:) Скорее от безысходности нежели от чего-то другого
Черт. Когда первый раз прочитал статью про rizzoma не заметил упоминания, воспринял просто как статистику закрытия гугловейва. Сейчас по комментам понял о чем речь :)

Сейчас как раз используем rizzoma как альтернативу.

Очень не хватает возможности выделения цветом текста (особенно фоново), и заодно разных размеров шрифта. Хотя бы чтобы заголовки нормально выделить.

И не считая парочки багов (иногда просто отваливается, и ещё непрочитанные сообщения постоянно появляются), rizzoma действительно очень крута. :)
Спасибо за поддержку. Да нам самим очень не хвататает возможности выделения цветом. С размерами шрифта вроде особой проблемы нет хотя конечно веш нужная.

Мы сейчас работаем над масштабируемостью. Кстаии сегодняшний хаброэффект здорово помог выявить проблемы которые нужно решить чтобы выйти на следующий уровень по скорости:)

Как только раскопаемся с этими задачами то вернемся к редактору и будем много чего там еще хорошего делать. По датам сориентировать к сожалению не могу.
Да, штука была действительно интересная. Я ей пользовался не по работе, но по учебе. Группой общались чтобы делать дипломную работу товарищу. Точнее, он там мне задавал вопросы по программингу а я подключал людей и чем мог — сам помогал.

Парень в итоге защитил работу на 5. Осталось приятное впечатление от работы с волной. Так как в скайпе все сводилось к банальному флуду. А потом как-то забылось.
Да в учебе волна отлично. Мы сами вкучу курсавиков и всяиких других документов написали в гуглвэйве. В том числе и эту статью:) Реально удобно писать вдадцатером. Такой коллективный разум.
UFO just landed and posted this here
время инвайтов у нас уже было, и то сделали ровно потому что сервиса еще ну было. Сейчас сервиса открыт для всех. заходи и пользуйся
вообще современные юзеры они такие что лишнее поле ввода запонять не будут:) Не то что инвайт просить. Я сам если ент акаунта через фб или гугл то не пробую сервис
Странно, что пользователи жаловались на несовместимость с FF: насколько я помню у меня в Волне всё работало (тормоза не в счёт)
Вошел «с помощью гугла». Список тем пустой. Всё задизейблено кроме кнопки «нью топик». При нажатии на нее ничего не происходит. Печаль.
О, посыпались сообщения об ошибках. Хабраэффект?
да, если честно не ожидали такого мощного эффекта. Статья вроде не про сервис а про гугл вэйв; И тема волны уже всем надоела.
А получилось по 1000 человек в час. Жесть ваще. Зато очень хорошее стрестестирование нашли пару узких мест, которые аньше не видели. В общем в любом случае клево:)
+1. Непонятно (
Да временно сервис лежит. Щас чиним. Я напишу как починим.
Как развернуть у себя на сервере? Или пока невозможно?
Отличное исследование, и как нельзя вовремя, когда юзера начали наперебой кричать о том, какой функционал нужно добавить прежде всего, и что необходимо изменить — вспоминаем про злосчастные аватарки справа и структуру блипов :)

С интересом слежу за проектом.
А почему аватарки справа злосчастные? Вы пользователись нашим расширением для google wave?
Извините, если кого побеспокою. Хочу показать, что было написано в результате моих html5 изысков. textspace.com.ua
Ну конечно же нам интересно. Для чего писал? Что будеш делать с этим дальше делать? Какие технологии тебе интересны? Что думаеш про наш проект?
Интересно просто было сделать что-то необычное на html5. Используется canvas и websocket. На серверсайде jetty websocket servlet. Убого конечно сейчас, но это от того что полная свобода. Никто же не мешает ввести правила, по которым люди будут общаться. Нужно просто понять какую нишу вообще это может занимать. Исходный текст github.com/captain-protect/textspace

Ваш проект это конечно супер, буду знать теперь, потому что когда отменили wave было немного неудобно переносить все в email. Мы там вели краткий weekly report.
Первое впечатление от кода хорошее. Еще немного глубже почекаем код. А вы наш код смотрели? Что думаете?
Вы использовали спецификацию от Google или полностью свое писали?
Спецификацию гугл не использовали. Но использовали shareJS от разработчиков гугла одной автралийской команды.
Первое, что я сделал, когда услышал о вейве как об «электронной почте 2.0» и потом через несколько месяцев получил инвайт, — отправил письмо с обычной почты на свой адрес %username%@googlewave.com. Оказалось, эта функция не поддерживается. Тогда и подумал впервые, что скорее всего этот проект ждет фейл.
Да с интеграция с почтой была очень плохой.
Несмотря на интерес к Wave не могу понять как можно использовать его практически. Внутри команды для коллаборации используеются немного похожий на Wave подход, а именно (внимание!) Miscrosoft OneNote. Умом понятно что Web/Wave с облаками это гораздо более стильно-модно-молодежно, но старый десктопный офис оказывается удобнее и быстрее.
О непонимании как можно использовать волну практически всё уже перетёрто по 9000 раз. Не ворошите труп.
Не я начал ворошить труп :-)
На 100% согласен с тем что подход wave пока не понятен и требует пояснений. Тут нужно и примеры пользовательских кейсов, и видео и пояснения. Над чем мы как раз сейчас активно работаем.

Microsoft OneNote класная штука на самом деле. У меня даже есть опыт внедрения этой технологии в одной конторе. Как раз сейчас общаемся с одной командой которые с ван ноут на риззому переходят. Не очень все удобно в будущем нужно будет сделать что-то типо интеграции чтобы пользователям проще переходилось.

Вообще я не вижу тут никаких противоречий, нужно много разных инстурментов. Мы ксттаи взяли несколько интерфейсных идей с ван ноута. Был бы признателен если бы вы поделились почему вы предпочли ван ноут тем же zoho докс или микрософт офис 365.
То что я бы выделил как преймущество oneNote перед известными мне веб-системами:
  • offline работа: можно редактировать и просматривать документы в офлайн, синхронизация сработает как только появится доступ
  • screen clipper: изображение вставляется с экрана вставляется в документ практически одним кликом. Это сильно выигрывает перед веб системами где нужно сначала сохрянять в файл, а потом аплоадить на страничке. Вообще работа с изображениями в режиме copy/paste вроде в вебе еще не работает.
  • Несколько удобных вещей в редакторе, вроде тегов.
  • производительность и надежность native приложения. практически никогда данные не бывают потеренными, бэкап можно делать по файлам.
Спасибо за развернутый ответ.

Да пока у нас не будет офлайн версии мы с точки зрения надежности с нативными приложениями конкурировать не будем. Ну это хорошо видно на примере gdocs они вышли вперед microsoft только после того как сделали офлайн версию.
Нам в какомто смысле повезло когда мы через три месяца будем делать офлайн мы сможем воспользоваться последними навортами в HTML5 и сможем воспользоваться опытом других офлайнверсий вэбовский приложений.

Про copy/past для веб. Собственно в вебе сейчас делать можно все, просто нужно для этого переучиваться. В общем мы у себя технически все для этого подготовили, и тоже реалтзуем скоро. Ну майкрософт хорошо понимает что за веб уже настоящее и тоже идет в веб. Для пользователей микрософта это хорошо тем что потом можно будет легко перейти на вэб без каких-то проблем. Они то своих не кинут:)
Интересно, успехов вам.

Еще пара замечаний:

Google Docs если правильно понимаю не позволяет редактировать документы в офлайне, это довольно неудобно если вы например ведете какие-нибудь свои заметки, исследования, систематизируете информацию.

Screen clipper — это для нас убер фича, несмотря на то что выглядит второстепенной. При разработке софта возможность мгновенно отрепортить замеченную проблему стоит очень многого.
Не тестил работает ли редатирование гуглодоксов в офлайн. Должно по идее работать. У нас точно будет работать, по крайней мере ничему не противоречит.

Про быстрое делание скриншотов я на 100% согласен. Сейчас сам пользуюсь апликухой которая за одно нажатие горячей клавиши делает скриншот и геренит ссылку на него. Впринципе достаточно удобно получается в rizzoma. Хотя я думаюе можно сделать еще быстрее
А у вас редактор и OT по-прежнему ограничены линейным текстом или предполагается поддержка структурных элементов и операций над ними?

Ларс говорил, что тут есть всякие сложности, и они так и не придумали как их решить.
А в чём именно эти сложности?
(помимо необходимости замены корректировки скалярной позиции курсора — корректировкой цепочечного пути к элементу)
У нас ОТ на объектах. То есть вообще другая модель.

Изначально мы хотели брать исходники волны (WIAB) и их допиливать. Но разработчики очень сильно фыркали на ихнию технологию и уговорили нас рискнуть и полностью переделать архитектуру. В результате получилось то что получилось. Есть конечно и минусы, но в целом все гораздо стройнее. Например с тем же rich text в GW эту были дополнительный список аннотаций к каждому сообщению. А у нас гладко и ровно в дереве объектов. Ну и кроме этого уже сейчас работают всякие клевые штуки типо востановления удаленного сообщения по ctrl+z.

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

Тоесть — документ не структурирован. и нет даже принципиальной возможносит, например, редактировать параграф и одновременно перенести его в другое место.

Или я что-то упустил?

Аргументированно спорить не могу так как деталей реализации не знаю. Ну и кроме того объектный подход можно понимать по разному.
Отвелкать сейчас разработчиков тоже не хочется. У них выходной:) Ну и вообще сейчас все заняты переходом на следующий левел по производительности. Ответсвенное дело.

А если вам действительно интересно как у нас там и что работает. То я могу вас позвать в обсуждение в котором мы скоро будем готовить письмо для разработчиков Evernote (они хотят себе наш редактор впилить в будущем). Причем получилось такая не очень хорошая ситуация что нужно подготовить концептуальное описание на английсокм чтобы евернотовские разработчики въехали быстро в код. А у нас все заняты. И было бы очень полезно если бы вы помогли нам прояснить где основные непонятности своими вопросами.

В общем если интересно скажите я приглашение в личку отправлю.
Я, к сожалению, не ахти профессиноал в жаваскрипте и темболее в кофескрипте, такчто по сути кода наврядли шибко помогу.
ну ладно. В общем все проблемы которые были у разработчиков волны мы знаем. В том числе благодаря тому что они их описали и даже пару видосов сняли. И сейчас этих проблем нет, например втраивание @mentions получилось достаточно легко и нативно. Но конечно же появятся какиенибудь новые при дальнейшем развитии куда же без них:)
Кстати мы планируем делать драг энд дроп и вообще всяческое перемемщение текста внутри обсуждение. И по сути все для этого готово с технической точки зрения заминка только в интерфейсах. Так что мне по сути вообще не важно объектная это модель или линейная:)
драг-энд-дроп это, конечно, круто.
но если это будет транслироваться в операции delete/insert — то такой фокус будет не особо OTируем в плане «intention preservation».

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

Уже сейчас при низкой нагрузке на сервер мы работаем быстрее google wave. То есть запустил вторую ноду и вот тебе ускорение в два раза. И как раз в течении месяца будет работать горизонтальная масштабируемость.

Ну и по клиенту есть куда расти. Хотя у меня телефон rizzoma уже сейчас тянет. Хотя волну не тянул. Я выше описывал почему с волной были тормоза. Проблемы на клиенте были связаны с утечками в клиенте и с тяжкой версткой.

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

в случае cut-n-paste реализации, фрагмент удаляется из позиции src, а потом добавляется в новом месте dst.
если это совмещать с операцией вставки в позиции src+x получится лажа, если эта операция попадёт МЕЖДУ удалением и вставкой другого клиента.
даже не представляю, как вы собираетесь выкручиваться в этой ситуации.

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

Нужно будет еще пообщаться с ребятами, хочется зашарить. А то глупо конечно наш диалог выглядит. Тот кто не понимает что-то рассказывает тому кто не знает:)
Я этим летом пробовал немного въехать. Но мена концепция асинхронного программирования и колбеков достаточно запутала чтобы дальше перехотелось лесть. Зато немного понял в coachbase:) Ваще на мой взгляд наши разработчики просто гении. И в гугле кстати говорят что у нас очень грамотная архитектура. Я недавно общался с руководителем проета walkaround. Он сказал что мы очень верно сделали что не пошли по пути допиливания wiab.
а разрабов на хабре нету чтоли?
(йо-хо-хо, могу пригласить двух хороших людей)
специально такого желания нет. Но если есть кто-то кому не лень поразибраться в нашем коде то конечно круто.

Вообще да нужно писать нормальную статью про OT. И тема это интересная и информации у нас очень много про разные реализации которые мы накопали за два года накопилось и поможет опенсорскомьюинити быстре привлеч. В общем надо рюхать:)
ну и да.
структурированность даёт возможность реализации других фич совместной работы:
привязка к фрагменту чата, обсуждений, ACL.

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

да и вообще, линейный текст для документов, ИМХО, прошлый век, эдак 78год.
Sign up to leave a comment.

Articles