All,

A few things on the editor.  For one.  I think ACE is a plain text editor, 
which I have used for a bunch of things.  Has a great API for collaboration 
integration, but it is not rich text, which is what wave is all about.  So I 
don’t think that will work.

Also, I think perhaps I should clarify the term editor.  I probably used in 
inappropriately.

There are two parts to be concerned with.  The first is collaborative 
rendering.  If you are just looking at a blip, you can still see it change in 
real time.  So this would be collaborative rendering.  Then when you are 
actively editing a blip, you need a collaborative editor.  Both are important.

The main performance issue comes in two places.  First I may have a 
conversation model that contains hundreds of blips.  Some sort of lazy loading 
strategy here is probably required and smart attaching and detaching of 
listeners.  If you have hundreds of blips all rendered at once and all having 
to have listeners attached to them because any one of them can change at any 
time you can run into rendering performance issues.  Secondarily, if you do 
have lots of people editing lots of blips, much of that will not be “on screen” 
for a given user, and you don’t want to be processing all of those events and 
messing with the DOM if you don’t need to.  So there are performance and 
complexity issues there.

Then there is the actual editor.  Building a Rich Text Editor is not trivial 
(still.. How can this be???).  So you have to deal with all the issues of 
building a rich text editor.  Then on top of that you want to integrate remote 
cursors, selections, authorship, etc. into that editor.  Most editors do not 
have that (a few do, and some are easier than others to add that).  So there is 
complexity here as well.

If you want to use an open source editor you need one that does the kind of 
rich text editing you want to do. It needs to either have the collaboration 
capabilities (shared cursors, etc.) that you want, or it has to be reasonably 
easy to implement them yourself.  And it needs to have a good enough eventing 
API for you to hook into it to capture local changes, and to have API to allow 
you to drive remote changes into it.

The point being that, the conversation renderer and rich text editor is a very 
non-trivial component, if the assumption is to roughly replicate what is there.


One point I definitely agree with is that the editor itself really should know 
nothing about OT.  It should be decoupled and just needs to have a good API 
with good events.

~Michael




On 3/15/16, 10:11 AM, "Pablo Ojanguren" <pablo...@gmail.com> wrote:

>Talking about editors I suggest ace from mozilla,
>https://en.wikipedia.org/wiki/Ace_%28editor%29
>
>BTW, as example, this is an app we are developing on with SwellRT as
>backend:  http://staging.teem.works , -it is the staging version, you can
>play! ;)-
>
>2016-03-15 17:12 GMT+01:00 Yuri Z <vega...@gmail.com>:
>
>> No, not really. Javascript on client side is enough - this is how it was
>> originally implemented in microwave by antimatter.
>>
>> On Tue, Mar 15, 2016 at 6:08 PM Thomas Wrobel <darkfl...@gmail.com> wrote:
>>
>> > Ah, right. I am all for realtime, merely that I was also happy to lose
>> > it if it meant significantly more simple implementation.
>> >
>> > >>"Otherwise we can use Robot
>> > >>API - like in https://github.com/vega113/microbox";
>> >
>> > Not keen on RobotAPI as every time I read its use it seems to need an
>> > extra server in the chain/
>> > ie;
>> >  ...<>WaveServer <> Google App Engine <> client
>> >
>> > It should be possible with the web today to avoid that and have
>> > clients connect directly to the wave server no? (hopefully using the
>> > same protocol as any desktop/mobile client).
>> > Of course, I assume you could run host both servers on the same
>> > hardware, but still seems unnecessary to have that extra step.
>> >
>> >
>> > --
>> > http://lostagain.nl <-- our company site.
>> > http://fanficmaker.com <-- our, really,really, bad story generator.
>> >
>> >
>> > On 15 March 2016 at 16:48, Yuri Z <vega...@gmail.com> wrote:
>> > > Yeah, the intention is to have realtime editing. Otherwise we can use
>> > Robot
>> > > API - like in https://github.com/vega113/microbox
>> > >
>> > > On Tue, Mar 15, 2016 at 5:45 PM Thomas Wrobel <darkfl...@gmail.com>
>> > wrote:
>> > >
>> > >> Does it need to be OT aware on that scale? I thought that was only
>> > >> needed to have fully realtime blip updating rather then a "edit +
>> > >> submit" system. (whereupon the differences could be calculated
>> > >> separately from the editing)
>> > >> Is the intention then to still have realtime editing ? or is this
>> > >> needed anyway regardless?
>> > >>
>> > >> I admit I only know the basics of OT and am vaguely remembering a
>> > >> conversation about realtime blip editing adding complexity to things.
>> > >>
>> > >> --
>> > >> http://lostagain.nl <-- our company site.
>> > >> http://fanficmaker.com <-- our, really,really, bad story generator.
>> > >>
>> > >>
>> > >> On 15 March 2016 at 16:30, Yuri Z <vega...@gmail.com> wrote:
>> > >> > Not really. You would need to make it OT aware. and then make it
>> > >> efficient.
>> > >> > Lot's of effort.
>> > >> >
>> > >> > On Tue, Mar 15, 2016 at 5:24 PM Thomas Wrobel <darkfl...@gmail.com>
>> > >> wrote:
>> > >> >
>> > >> >> As a side, I noticed Michael MacFadden mentioned building a rich
>> text
>> > >> >> editor in the browser, this much at least have been done in GWT
>> > >> >> libraries;
>> > >> >>
>> > >> >>
>> > >>
>> >
>> http://www.gwtproject.org/javadoc/latest/com/google/gwt/user/client/ui/RichTextArea.html
>> > >> >>
>> > >> >> Its fairly basic, but then, I would assume to start with at least
>> any
>> > >> >> new wave client should stay fairly basic?
>> > >> >> --
>> > >> >> http://lostagain.nl <-- our company site.
>> > >> >> http://fanficmaker.com <-- our, really,really, bad story
>> generator.
>> > >> >>
>> > >> >>
>> > >> >> On 15 March 2016 at 15:48, Yuri Z <vega...@gmail.com> wrote:
>> > >> >> > Yeah, we need to re-use the existing editor. Patches would be
>> > great!
>> > >> >> >
>> > >> >> > On Tue, Mar 15, 2016 at 4:46 PM Pablo Ojanguren <
>> > pablo...@gmail.com>
>> > >> >> wrote:
>> > >> >> >
>> > >> >> >> Hi,
>> > >> >> >>
>> > >> >> >> I agree with the dependency hell issue and the suggestion for
>> > >> throwing
>> > >> >> >> away the GWT client. This would require a new client-server API
>> as
>> > >> >> >> suggested, however I think a Rest API won't be enough, because
>> > real
>> > >> >> editing
>> > >> >> >> needs websocket.
>> > >> >> >>
>> > >> >> >> I also agree with Michael, developing a new editor is a massive
>> > >> task, so
>> > >> >> >> we should use an existing one and plug it in the new API.
>> > >> >> >>
>> > >> >> >> To write again the server in other language would be great, but
>> I
>> > >> think
>> > >> >> it
>> > >> >> >> requires a huge effort.
>> > >> >> >>
>> > >> >> >> I will be happy to help in decoupling the server-client, I can
>> > >> provide
>> > >> >> the
>> > >> >> >> experience from my fork. And I plan to send some patches to Wave
>> > >> soon.
>> > >> >> >>
>> > >> >> >>
>> > >> >> >> These are some slides about my fork (swellrt) it could give you
>> > some
>> > >> >> ideas:
>> > >> >> >>
>> > >> >> >>
>> > >> >>
>> > >>
>> >
>> https://docs.google.com/presentation/d/1WFDS_m7eyNjBjcdPs0zH496Y9bMSl0_JnSEYGjxNFn0/edit?usp=sharing
>> > >> >> >>
>> > >> >> >>
>> > >> >>
>> > >>
>> >
>> https://docs.google.com/presentation/d/18hMYyECo5EmQsrAb8DT6SkO7LksWVJnhdZmqeCsar4c/edit?usp=sharing
>> > >> >> >>
>> > >> >> >> btw, I would like to start a business providing these SwellRT
>> > >> services.
>> > >> >> >>
>> > >> >> >>
>> > >> >> >>
>> > >> >> >> 2016-03-14 23:27 GMT+01:00 Joseph Gentle <m...@josephg.com>:
>> > >> >> >>
>> > >> >> >>> I've been playing with the idea of starting a company around a
>> > >> rewrite
>> > >> >> of
>> > >> >> >>> wave for years.
>> > >> >> >>>
>> > >> >> >>> -J
>> > >> >> >>>
>> > >> >> >>> On Tuesday, 15 March 2016, Adam Bielski
>> > <a_biel...@ymail.com.invalid
>> > >> >
>> > >> >> >>> wrote:
>> > >> >> >>>
>> > >> >> >>> > Hiya all!I wish I could find out who is potentially
>> interested
>> > in
>> > >> >> >>> creating
>> > >> >> >>> > the WAVE for a commercial service/productwith my seed
>> > >> startup!Cheers!
>> > >> >> >>> > Adam
>> > >> >> >>> >
>> > >> >> >>> >     20:23 poniedziałek, 2016-3-14, Zachary Yaro <
>> > zmy...@gmail.com
>> > >> >> >>> > <javascript:;>> napisał(a):
>> > >> >> >>> >
>> > >> >> >>> >
>> > >> >> >>> >  I am inclined to agree with Yuri—if the alternative
>> > >> implementation
>> > >> >> can
>> > >> >> >>> be
>> > >> >> >>> > developed in parallel around the same protocol, that would
>> seem
>> > >> to be
>> > >> >> >>> the
>> > >> >> >>> > best scenario, but the existing codebase should be kept
>> because
>> > >> it is
>> > >> >> >>> > (AFAIK) the most functional implementation of the protocol.
>> > >> >> >>> >
>> > >> >> >>> > Zachary Yaro
>> > >> >> >>> > On Mar 14, 2016 15:05, "Yuri Z" <vega...@gmail.com
>> > >> <javascript:;>>
>> > >> >> >>> wrote:
>> > >> >> >>> >
>> > >> >> >>> > > I think that more "wavy" projects are nice, but IMO it
>> > doesn't
>> > >> >> mean we
>> > >> >> >>> > > should abandon Apache Wave as it is now. I agree there are
>> a
>> > >> lot of
>> > >> >> >>> > issues
>> > >> >> >>> > > with current code, but I think there's still value as
>> people
>> > can
>> > >> >> see
>> > >> >> >>> what
>> > >> >> >>> > > Wave can potentially be.
>> > >> >> >>> > >
>> > >> >> >>> > > On Sun, Mar 13, 2016 at 8:46 AM Evan Hughes <
>> > >> >> wisebald...@apache.org
>> > >> >> >>> > <javascript:;>>
>> > >> >> >>> > > wrote:
>> > >> >> >>> > >
>> > >> >> >>> > > > The link for those who wish to join, Ill also add this
>> link
>> > >> onto
>> > >> >> the
>> > >> >> >>> > new
>> > >> >> >>> > > > website.
>> > >> >> >>> > > >
>> > >> >> >>> > > > https://www.hipchat.com/gsModF8CY
>> > >> >> >>> > > >
>> > >> >> >>> > > > On Sun, 13 Mar 2016 at 12:12 Michael MacFadden <
>> > >> >> >>> > > > michael.macfad...@gmail.com <javascript:;>>
>> > >> >> >>> > > > wrote:
>> > >> >> >>> > > >
>> > >> >> >>> > > > > Yeah. Chatting is fine and beneficial. We just need to
>> > make
>> > >> >> sure
>> > >> >> >>> we
>> > >> >> >>> > > > > capture key decisions and rationale back in the list
>> for
>> > >> all to
>> > >> >> >>> see.
>> > >> >> >>> > > > >
>> > >> >> >>> > > > > ~Michael
>> > >> >> >>> > > > >
>> > >> >> >>> > > > > > On Mar 12, 2016, at 6:07 PM, Evan Hughes <
>> > >> >> >>> wisebald...@apache.org
>> > >> >> >>> > <javascript:;>>
>> > >> >> >>> > > > wrote:
>> > >> >> >>> > > > > >
>> > >> >> >>> > > > > > It does not so as Ive seen other projects state this
>> > motto
>> > >> >> "If
>> > >> >> >>> its
>> > >> >> >>> > > not
>> > >> >> >>> > > > on
>> > >> >> >>> > > > > > the mailing list it didnt happen at all", but allows
>> > for
>> > >> non
>> > >> >> >>> formal
>> > >> >> >>> > > > talk
>> > >> >> >>> > > > > > and back and forth discussion realtime. The Monthly
>> > >> reports
>> > >> >> >>> that we
>> > >> >> >>> > > > > talked
>> > >> >> >>> > > > > > about back when we did the hangout session should
>> > >> probably be
>> > >> >> >>> > picked
>> > >> >> >>> > > up
>> > >> >> >>> > > > > > again, ill add it to the monthly todo's.
>> > >> >> >>> > > > > >
>> > >> >> >>> > > > > > On Sun, 13 Mar 2016 at 11:58 Michael MacFadden <
>> > >> >> >>> > > > > michael.macfad...@gmail.com <javascript:;>>
>> > >> >> >>> > > > > > wrote:
>> > >> >> >>> > > > > >
>> > >> >> >>> > > > > >> One follow up question though. Does hip hat store
>> > >> >> conversations
>> > >> >> >>> > in a
>> > >> >> >>> > > > > >> publicly accessible manner?  If not, we need to make
>> > sure
>> > >> >> key
>> > >> >> >>> > > > decisions
>> > >> >> >>> > > > > >> that come out of chats are captured and discussed on
>> > the
>> > >> >> >>> mailing
>> > >> >> >>> > > list
>> > >> >> >>> > > > > for
>> > >> >> >>> > > > > >> all to see.
>> > >> >> >>> > > > > >>
>> > >> >> >>> > > > > >> ~Michael
>> > >> >> >>> > > > > >>
>> > >> >> >>> > > > > >>> On Mar 12, 2016, at 7:15 AM, Evan Hughes <
>> > >> >> >>> wisebald...@apache.org
>> > >> >> >>> > <javascript:;>>
>> > >> >> >>> > > > > wrote:
>> > >> >> >>> > > > > >>>
>> > >> >> >>> > > > > >>> I would get infra to make us a hipchat channel so
>> we
>> > >> have
>> > >> >> some
>> > >> >> >>> > > place
>> > >> >> >>> > > > to
>> > >> >> >>> > > > > >>> talk casually web interface / irc, but seesm the
>> > jira's
>> > >> >> down.
>> > >> >> >>> > > Looking
>> > >> >> >>> > > > > to
>> > >> >> >>> > > > > >>> getting this rolling in some way or another by mid
>> > week.
>> > >> >> >>> > > > > >>>
>> > >> >> >>> > > > > >>> ~ Evan
>> > >> >> >>> > > > > >>>
>> > >> >> >>> > > > > >>>> On Fri, 11 Mar 2016 at 19:48 Evan Hughes <
>> > >> >> >>> > wisebald...@apache.org <javascript:;>>
>> > >> >> >>> > > > > >> wrote:
>> > >> >> >>> > > > > >>>>
>> > >> >> >>> > > > > >>>> The client-server protocol would define a protobuf
>> > and
>> > >> >> json
>> > >> >> >>> rest
>> > >> >> >>> > > > > >> services
>> > >> >> >>> > > > > >>>> so any language that support protocol buffers
>> would
>> > be
>> > >> >> able
>> > >> >> >>> to
>> > >> >> >>> > > make
>> > >> >> >>> > > > a
>> > >> >> >>> > > > > >>>> client or fallback to the json rest.
>> > >> >> >>> > > > > >>>>
>> > >> >> >>> > > > > >>>>
>> > >> >> >>> > > > > >>>> On Fri, 11 Mar 2016 at 19:24 Andreas Kotes <
>> > >> >> >>> > > > > >> count-apache....@flatline.de <javascript:;>>
>> > >> >> >>> > > > > >>>> wrote:
>> > >> >> >>> > > > > >>>>
>> > >> >> >>> > > > > >>>>> FWIW,
>> > >> >> >>> > > > > >>>>>
>> > >> >> >>> > > > > >>>>> I also consider the idea pretty good and would
>> want
>> > >> >> stronger
>> > >> >> >>> > > > > decoupling
>> > >> >> >>> > > > > >>>>> of server/client. I'd be interested in a python
>> > client
>> > >> >> >>> > > > > implementation,
>> > >> >> >>> > > > > >>>>> mostly for CLI and bot integration.
>> > >> >> >>> > > > > >>>>>
>> > >> >> >>> > > > > >>>>> Not sure whether doing a client-side C
>> > implementation
>> > >> of
>> > >> >> the
>> > >> >> >>> > > > > >>>>> communication protocol would be best here (so
>> > wrapper
>> > >> for
>> > >> >> >>> more
>> > >> >> >>> > > > > >> languages
>> > >> >> >>> > > > > >>>>> can follow), or whether native Python would be
>> > >> better. We
>> > >> >> >>> need
>> > >> >> >>> > > > > >> something
>> > >> >> >>> > > > > >>>>> for non-Java folks in any case, I think.
>> > >> >> >>> > > > > >>>>>
>> > >> >> >>> > > > > >>>>> Cheers,
>> > >> >> >>> > > > > >>>>>
>> > >> >> >>> > > > > >>>>>  count
>> > >> >> >>> > > > > >>>>>
>> > >> >> >>> > > > > >>>>>> On Fri, Mar 11, 2016 at 10:52:34AM +1000, Evan
>> > Hughes
>> > >> >> >>> wrote:
>> > >> >> >>> > > > > >>>>>> Thankyou all for your feedback and expressions
>> of
>> > >> >> >>> interests,
>> > >> >> >>> > > seems
>> > >> >> >>> > > > > >> like
>> > >> >> >>> > > > > >>>>> we
>> > >> >> >>> > > > > >>>>>> may be able to develop some teams together to
>> make
>> > >> this
>> > >> >> a
>> > >> >> >>> > faster
>> > >> >> >>> > > > > >> reality
>> > >> >> >>> > > > > >>>>>> than just I. Hopefully we can get some more
>> > people to
>> > >> >> >>> express
>> > >> >> >>> > > > > >> interests
>> > >> >> >>> > > > > >>>>> in
>> > >> >> >>> > > > > >>>>>> this way forward.
>> > >> >> >>> > > > > >>>>>
>> > >> >> >>> > > > > >>>>> --
>> > >> >> >>> > > > > >>>>> Andreas 'count' Kotes
>> > >> >> >>> > > > > >>>>> Taming computers for humans since 1990.
>> > >> >> >>> > > > > >>>>> "Don't ask what the world needs. Ask what makes
>> you
>> > >> come
>> > >> >> >>> alive,
>> > >> >> >>> > > and
>> > >> >> >>> > > > > go
>> > >> >> >>> > > > > >> do
>> > >> >> >>> > > > > >>>>> it.
>> > >> >> >>> > > > > >>>>> Because what the world needs is people who have
>> > come
>> > >> >> >>> alive." --
>> > >> >> >>> > > > > Howard
>> > >> >> >>> > > > > >>>>> Thurman
>> > >> >> >>> > > > > >>
>> > >> >> >>> > > > >
>> > >> >> >>> > > >
>> > >> >> >>> > >
>> > >> >> >>> >
>> > >> >> >>> >
>> > >> >> >>>
>> > >> >> >>
>> > >> >> >>
>> > >> >>
>> > >>
>> >
>>

Reply via email to