Loomio

Using EtherPad in place of the Context Box

DS Danyl Strype Public Seen by 133

In the Pirates group we often find ourselves using a PiratePad (implementation of EtherPad run by the German Pirates) instead of the Context Box, for drafting documents. There are a number of benefits to this over using the Context Box including:
* realtime editing by multiple users
* colour-coded tracking of what has been changed by who
* timeline functions which makes it super-easy to navigate through various versions in the history and see what has changed

The downside of this is that at times people put material into the Pad that really ought to be a comment in the Loomio discussion (or both), so you end up with two diverging discussions, and because the contents of the Pad is not on the same page (literally and figuratively) as the Loomio discussion, people can end up talking at cross-purposes because one person hasn't read what the other one has been adding to the Pad. Another downside is that the Pad doesn't know about the privacy settings, or group membership, of the discussion it is attached to.

I imagine it would be a lot of work to reimplement EtherPad functionality within Loomio. But would it be possible to run an Etherpad server in parallel with a Loomio server, and have the pad appear where the Context Box currently appears? Is it possible to make it only visible to users with read access to that group, and only editable by those with write access? It is possible to set it up so that whenever a new discussion is created in the Loomio group, a new pad is also created to be associated with it as just described?

I guess this would be done through a plug-ins architecture? The Context Box would still be the default feature, but if Loomio hosts decided to run an Etherpad, and install the plug-in, the behaviour described above would replace the Context Box on that instance.

DS

Danyl Strype Tue 14 Nov 2017 9:52AM

Apache Wave is the reference implementation of the Wave Federation Protocol, a set of extensions to XMPP (originally developed by Google then handed over to the Apache Foundation). Wave may (or may not) be useful for federating two or more Loomio servers, but I'm not sure how it would be used to add Etherpad-like features for collaborative editing.

DS

Danyl Strype Sat 31 Mar 2018 7:14PM

More on protocols. From recent reading, it seems that one of the main headaches in using XMPP for web apps is that it's concepts and vocabulary don't fit well with those of the web standards. Matrix is an attempt to do the same things XMPP does using web-native protocols. I'm guessing the Wave protocol was an attempt to hack XMPP into a more web-centric form (the folks working on Wave at Google were well ahead of their time IMHO).

ActivityPub has recently been formalized as a W3C standard for federation of social media apps. It's being used to federate microblogging apps like Mastodon and Hubzilla, as well as media hosting apps like MediaGoblin and PeerTube, and file storage apps like NextCloud. I wonder if AP would be useful in handling interactions between a Loomio server and an Etherpad server?

F

fauno Tue 14 Nov 2017 2:42PM

at https://consenso.partidopirata.com.ar we just put an extra button next to the context box linking to a pad called the same as the thread :P

DS

Danyl Strype Wed 15 Nov 2017 2:07AM

That's a great start, but I would love to either have the pad embedded in place of the context box, OR, have the current text of the pad auto-imported into the context box, with history.

F

fauno Fri 24 Nov 2017 2:28PM

embedding etherpad-lite may sound simple but in my experience trying to
make it integrate with mediawiki, most plugins that promise to do it are
half baked and don't even work. maybe things have changed. also, ep
history is huge because it saves every key stroke so i'd say it would be
best just to save the starred revisions.

DS

Danyl Strype Fri 6 Apr 2018 11:12AM

Thanks to the good folks at Disroot.og, I just discovered CryptPad, which might be a better choice for this use case than Etherpad.

It encrypts edits to pads using ChainPad allowing them to be visible and editable only by authenticated users. It's licensed AGPL, like Loomio, so high chance of shared values. FYI they use an intriguing CLA called the Commons Management Agreement.

EDIT: fixed typo

RG

Robert Guthrie Fri 6 Apr 2018 10:17PM

Wow. Looks cool!