On 13/01/2017 08:37, Alberto Fanjul Alonso wrote:
Hi, hackers
Do anybody though about trying new services for communication?
- signal https://whispersystems.org/
- telegram https://telegram.org/
- matrix.org <http://matrix.org> http://matrix.org/
- gitter https://gitter.im/
I'm the project lead for Matrix, and thought it might be useful to list
the pros & cons that we see with respect to Matrix for a community like
GNOME:
Pros:
* It's a neutral open standard HTTP API (https://matrix.org/docs/spec)
with a bunch of different client, server, bot & bridge implementations
of different maturity
(http://matrix.org/docs/projects/try-matrix-now.html). The API is
super-easy and fun to hack on - sending & receiving messages is just
PUTing or GETing some JSON from your server.
* Matrix.org is a non-profit and everything is FOSS (Apache licensed);
both servers, clients, SDKs, bots, bridges, etc. It's not a half-FOSS
thing like Telegram. I think we also have a pretty vibrant & friendly
FOSS community going on :)
* It's completely decentralised; you can run your own server and
bridges to things like IRC, Gitter, Slack, XMPP etc. Conversations are
signed and replicated over all the participating servers in a manner
very similar to Git; no single server or network owns the conversation
(unlike MUCs or IRC). You're not stuck in a silo like Signal etc.
* Matrix isn't meant to be the One True Chat standard. Instead it's
just a lowest-common denominator decentralised pubsub network, and the
bridges to things like IRC let people continue using whatever clients
they prefer. For instance, https://linux.conf.au/wiki/conference/chat/
shows how the LCA folks are using it to defragment their IRC & Slack
communities (whilst also supporting native Matrix for those who want it).
* Matrix provides E2E encryption for those who needs it. It's still
beta, but the core crypto has been publicly audited and is robust:
https://matrix.org/blog/2016/11/21/matrixs-olm-end-to-end-encryption-security-assessment-released-and-implemented-cross-platform-on-riot-at-last/
etc.
* Riot.im (the flagship Matrix client) is relatively polished, with
native apps for iOS & Android; React app for Web, and Electron for
desktop. (As well as being packaged up as a proper Gnome app by aperez
in the form of Revolt: https://github.com/aperezdc/revolt)
* Supports zero-sign-up guest access (unlike Slack, Gitter, etc),
letting folks jump straight into a room and start talking - e.g.
https://riot.im/app/#/room/#riot:matrix.org
* There are a bunch of good integrations & bots with things like
Github, JIRA, Jenkins, Travis, etc. In Riot these are exposed through a
single-click appstore style UI, similar to Slack's.
* There's a relatively advanced GTK/Vala SDK implementation at
https://github.com/gergelypolonkai/matrix-glib-sdk. This was written by
the community with the intention of adding a Telepathy implementation of
Matrix, but got stuck when it became obvious that Telepathy isn't in a
great state for exposing Matrix's infinite-scrollback /
sever-side-search / decentralised conversations architecture.
Cons:
* E2E encryption is still in beta; specifically there are some races
where decryption keys aren't correctly synced between participants, and
we haven't finished implementing sharing history when new devices are
added to a conversation, and we haven't finished the UX for key
verification yet. We're rushing to get it out of beta in time for
https://fosdem.org/2017/schedule/event/encrypting_matrix/.
* Riot has some irritating UX problems and quirks which make for a
steeper the necessary learning curve. These are being addressed
currently:
https://github.com/vector-im/riot-web/issues?q=milestone%3A%22UX+Fixes%22
* Only one of the server implementations (synapse) is ready for
production use currently, and is technically still in beta.
* Synapse is written in Python/Twisted and is quite resource hungry
(typically requires 2GB of RAM), although mem usage should improve
significantly in the next few weeks.
* While there are lots of clients, Riot is by far the most functional,
making it a bit of a monoculture currently. However we would *love* to
see more clients, especially GTK ones!
* By default Matrix logs everything (it's very much a conversation
history syncing system). The log visibility can however by configured
per room - e.g. we turn it off by default for IRC bridged rooms.
* https://solson.me/2016/10/08/irccloud-to-matrix.html has some other
good critique.
Obviously I'm not remotely neutral, but hopefully this gives a few more
datapoints to help make a decision :) Feel free to come and bug me with
questions on https://riot.im/app/#/room/#riot:matrix.org or
https://riot.im/app/#/room/#matrix:matrix.org if desired.
Matthew
--
Matthew Hodgson
Matrix.org
_______________________________________________
desktop-devel-list mailing list
desktop-devel-list@gnome.org
https://mail.gnome.org/mailman/listinfo/desktop-devel-list