Jardin Entropique ? WTF ? Ben c'est un Festival qu'on organise a Rennes le W/E 2015-06-26 to 28 thématique FLOSS, Hacker, DIY, Maker voire meme NumericoNumerique c'est pour dire a quel point ca ratisse large (bref voila pour l'autopromo…)
http://jardin-entropique.eu.org/
Au programme de l’événement, j'aimerais attirer votre attention sur le projet Matrix !
Connaissez vous la matrice ? la N-ieme messagerie unifié et décentralisé ?
J'ai pas mal de sympathie pour ce projet et ses membres, car j'ai l'impression que le problème de la messagerie n'est tjr pas réglée..
A ce jour j'ai tendance a me cantonner a IRC (irc://irc.freenode.net/#breizh-entropy ) et XMPP (qui remplissent tres bien leur job) un peu de WebRTC mais j'ai aussi envie d’expérimenter des choses differentes (en parlant de techno extraterrestre GNUnet sera aussi présenté au #JardinEntropique aussi)
Bref pour les curieux, pour vous donner un avant gout :
https://matrix.org/blog/2015/02/04/back-from-fosdem/
Et pour ceux qu'ils veulent quitter le monde réel pour entrer dans la matrice quelles sont vos envies et attentes d'un systeme de messagerie (ou alertes signalitique iot etc) ?
# Ça ca parler de Matrix ou de l'IM en général au final ?
Posté par edhelas (site web personnel) . Évalué à 3.
J'ai l'impression que le débat va plutôt tourner autour de Matrix.
Néanmoins je trouve ça dommage de voir un énième protocole de messagerie apparaitre… comme si on en avait pas assez.
[^] # Re: Ça ca parler de Matrix ou de l'IM en général au final ?
Posté par Amandine . Évalué à 1.
L'idée c'est de présenter Matrix pour expliquer pourquoi un nouveau protocole, ce qu'il a de différent mais aussi d'ouvrir le débat et de discuter avec ceux qui auraient des questions/doutes/désaccords avec notre initiative. Surtout que nos specs sont flexibles et qu'il doit avoir l'adhésion du plus grand nombre pour avoir du succès, donc nous sommes ouverts aux retours/commentaires/suggestion de tous :)
[^] # Re: Ça ca parler de Matrix ou de l'IM en général au final ?
Posté par Marotte ⛧ . Évalué à 4.
Je crois que l’idée derrière le commentaire d’edhelas c’est ça :
[^] # Re: Ça ca parler de Matrix ou de l'IM en général au final ?
Posté par Amandine . Évalué à 1.
C'est ce qu'on fait tout pour éviter :)
[^] # Re: Ça ca parler de Matrix ou de l'IM en général au final ?
Posté par Marotte ⛧ . Évalué à 4.
On fait tout pour éviter ça.
Oui, je suis un nazi de la grammaire ! ;)
[^] # Re: Ça ca parler de Matrix ou de l'IM en général au final ?
Posté par Frank-N-Furter . Évalué à 6.
https://www.youtube.com/watch?v=c3y0CD2CoCs
Depending on the time of day, the French go either way.
[^] # Re: Ça ca parler de Matrix ou de l'IM en général au final ?
Posté par Marotte ⛧ . Évalué à 2.
[^] # Re: Ça ca parler de Matrix ou de l'IM en général au final ?
Posté par Arathorn . Évalué à 2.
Matrix est beaucoup plus que d'un autre protocole de chat comme IRC ou XMPP: l'argument "15 du protocole" est un peu injuste, même si nous le savons bien. À sa base, Matrix est une base de données JSON décentralisée avec la cohérence éventuelle, fédération ouverte, et la sémantique de PubSub - si vous devez comparer, FMUC ou buddycloud seraient une meilleure comparaison. Sauter couches redondantes de XMPP en faveur de HTTP natif pur + JSON est pas nécessairement une mauvaise chose. Il est un peuple de la honte sont hostiles à des gens qui expérimentent avec de nouveaux protocoles! Après tout, il était une fois il ya 16 ans, XMPP est la nouvelle expérience.
(svp excusez-moi mon français google-translaté ;)
[^] # Re: Ça ca parler de Matrix ou de l'IM en général au final ?
Posté par Marotte ⛧ . Évalué à 2. Dernière modification le 06 juin 2015 à 19:21.
If you translated from English please tell me what was the original sentence because it has absolutely no meaning in French ;)
Peuple de la honte ?
Shameless people ?
It would rather be : « les gens qui n’ont pas honte » (or a better translation…)
« Peuple de la honte » would translate in : "People of the shame" :)
[^] # Re: Ça ca parler de Matrix ou de l'IM en général au final ?
Posté par Marotte ⛧ . Évalué à 2.
Like « les éhontés »…
[^] # Re: Ça ca parler de Matrix ou de l'IM en général au final ?
Posté par Amandine . Évalué à 3.
L'original:
Matrix is much more than another chat protocol like IRC or XMPP: the "15th protocol" argument is a bit unfair, although we know it well. At its core, Matrix is a decentralised JSON database with eventual consistency, open federation, and pubsub semantics - if you must compare, FMUC or BuddyCloud would be a better comparison. Skipping redundant layers of XMPP in favour of pure native HTTP+JSON is not necessarily a bad thing. It's a shame people are hostile to folks experimenting with new protocols! After all, once upon a time 16 years ago, XMPP was the new experiment.
[^] # Re: Ça ca parler de Matrix ou de l'IM en général au final ?
Posté par Marotte ⛧ . Évalué à -1. Dernière modification le 06 juin 2015 à 19:55.
C’est une honte que les gens soient hostiles à
Merci !
[^] # Re: Ça ca parler de Matrix ou de l'IM en général au final ?
Posté par Marotte ⛧ . Évalué à 1.
They are more inadequations in the this translation but this on was very eyes stinnging :)
[^] # Commentaire supprimé
Posté par Anonyme . Évalué à 7.
Ce commentaire a été supprimé par l’équipe de modération.
[^] # Re: Ça ca parler de Matrix ou de l'IM en général au final ?
Posté par Julien.D . Évalué à 3.
Je suis quand même de l’avis des autres, à première vue encore un autre protocole de messagerie instantané n’est pas souhaitable, et cela pour plusieurs raisons.
- Encore un autre.
- L’effet réseau est quelque chose de très difficile à faire démarrer même en ayant de bons arguments.
- XMPP offre déjà un protocole de messagerie instantané qui permet beaucoup de choses, et pour le reste il permet d’en ajouter plus tard le support avec les XEP.
- Une nouvelle dilution des compétences, des réseaux.
Je reste toujours ouvert à des alternatives bien entendu, simplement dans le cas présent j’ai du mal à voir comment un protocole peut faire mieux qu’XMPP.
Donc si tu pouvais expliquer en quelques lignes les avantages de matrix sur XMPP, ça serait intéressant de lancer également le débat ici.
[^] # Re: Ça ca parler de Matrix ou de l'IM en général au final ?
Posté par Amandine . Évalué à 2.
Oui XMPP est une bonne base, mais on essaie de prendre un angle d'approche différent: Matrix est un système de synchronisation de données, n'importe quel type de données, Matrix y est agnostique (messages instantanés, signalisation d'appel WebRTC, données d'IoT…). C'est une architecture distribuée dans laquelle les données sont persistées, n'importe qui peut déployer son serveur et garder le contrôle de ses données. En fait Matrix peut être considérée comme une grande base de données éventuellement cohérente.
L'idée c'est d'être pragmatique (APIs HTTP) et avoir une baseline de fonctionnalités qui correspondent à celles qui sont indispensables ds la messagerie d'aujourd'hui: historique par défaut, chat de groupe par défaut, échange de n'importe que type de fichier. Matrix permet aussi de l'encodage bout en bout.
Le mieux c'est d'aller jeter un œil sur http://matrix.org et chatter sur https://matrix.org/beta/#/ pour entrer en contact avec les experts. Ou bien sûr venir nous voir au Jardin Entropique :)
[^] # Re: Ça ca parler de Matrix ou de l'IM en général au final ?
Posté par Julien.D . Évalué à 1.
Merci pour cette réponse
Je n'arrive pas à accéder au site http://matrix.org (erreur 504), c'est bien dommage puisque j'ai pas mal de questions sur le sujet.
Un intéressant commentaire à vous :
[^] # Re: Ça ca parler de Matrix ou de l'IM en général au final ?
Posté par edhelas (site web personnel) . Évalué à 9.
Pour la signalisation d'appels WebRTC il y a Jingle dans XMPP avec entre autres :
Jingle est déjà implémenté dans de nombreux clients tel que Jappix (via WebRTC) ou Jitsi (https://jitsi.org/).
Pour l'IoT :
Avec des intérêt par des industriels tel que Cisco (http://blogs.cisco.com/ioe/beyond-mqtt-a-cisco-view-on-iot-protocols).
Je chipote un peu mais c'est également le cas de XMPP.
XMPP supporte l'authentification SASL, le chiffrement est maintenant obligatoire entre les serveurs (voir l'initiative https://xmpp.net/) et très souvent sur les clients (via StartTLS). Pour du chiffrement bout en bout des normes comme OTR sont maintenant largement déployés sur les clients XMPP (même si je trouve ça pas très très propre sur le coté protocolaire).
Je me suis penché sur Matrix il y a quelques semaines, car je me suis demandé qu'est ce qui pouvait pousser un groupe de développeurs à vouloir réinventer un nouveau protocole pour une énième fois alors que XMPP semble offrir tout ce qu'il faut.
Mais bon j'ai bien eu l'impression qu'il s'agissait plus d'une envie de repartir sur une nouvelle base au lieu de prendre le chemin de la difficulté et d'avoir à travailler avec la XSF pour améliorer/compléter XMPP.
Si c'est l'interconnexion avec le Web qui les embêtes :
Et même :
Oui, lire des normes c'est compliqué, et on est pas toujours d'accord avec ce qui est écrit. Mais quand le protocole est utilisé par des dizaines de serveurs utilisés par des universités, entreprises, multinationales, gouvernements, particulier; des centaines de clients sur toutes les plateformes et a plus de 15 ans d'ancienneté avec plusieurs RFC à l'IETF c'est plus compliqué de mettre tout le monde d'accord :) Pour le reste j'ai déjà écrit un commentaire là dessus il y a quelques jours http://linuxfr.org/nodes/105862/comments/1606599.
Le dernier point que je voulais aborder concerne l'une des spécificités de Matrix : fonctionner en HTTP.
Je pense que cette décision est une grave erreur, pourquoi ? Car HTTP amène un overhead énorme (oui c'est considérable quand il s'agit de gérer des listes de 400 contacts avec plusieurs dizaines de connections, des salons et des messages dans tous les sens). De plus cantonner un protocole "social/IM" au Web uniquement a une conséquence terrible : c'est compliqué de faire autre chose que du Web.
Le Web n'est qu'une petite partie d'Internet. Donc quand on base un protocole sur des technologies Web (HTTP en l'occurence) c'est plus difficile d'en sortir.
Et quand je vois ça dans la documentation de Matrix (http://matrix.org/docs/howtos/client-server.html) :
C'est ce qu'on appelle plus communément du long-polling, j'ouvre une requête HTTP, le serveur me répond quand il a quelque-chose à dire et j'en renvoie une autre derrière. Croyez moi sur des grosses charges ça ne tiens pas. Si vous voulez avoir du temps réel faite du socket (pure TCP ou WebSocket), encore une fois vous vous compliquez la vie et vous allez compliquer la vie des clients qui souhaiteraient faire du "vrais" temps réel et qui devront le simuler en utilisant des librairies comme Curl pour recréer un système évènementiel derrière.
[^] # Re: Ça ca parler de Matrix ou de l'IM en général au final ?
Posté par rzr (site web personnel) . Évalué à 1.
Je te remercie pour toutes ces précisions… sinon ca me semble un prerequis de pouvoir communiquer sur http
quitte a faire du TCP over http ou je ne sais quelle horreur…
Car on ne peux dire que la tendance des usages d'internet (du moins en france) soit a l'ouverture…
Peut etre meme prendre un peu d'avance en se remettant au minitel (surtout depuis que le reseau est down) ;(
Une autre idée qui me trote par la tête , pensez vous qu'il est possible de faire de passerelles et/ou emuler des services existants sans changer les applications clientes … je m'explique en hackant plus ou moins son OS (mobile) il me semblerait possible d'utiliser un client farcebook par example et rediriger le trafic vers sur son instance cloud perso supportant les meme APIs … au final l'experience utilisateur reste inchangée (reste qd meme la partie Auth, crypto a hijacker et je passe sur l'aspect legal d'un tel usage car si ca peut etre benefique dans ce cas ca pourrait ne pas l'etre dans un autre…)
Bref je m’égare un peu de la messagerie instantanée mais la problématique est du même ordre … il me semble d'ailleurs que ce w/e @nitot de cozycloud a insisté sur ce point … mais on en reparlera dans un autre contexte.
gpg:0x467094BC
[^] # Re: Ça ca parler de Matrix ou de l'IM en général au final ?
Posté par Arathorn . Évalué à 2.
(writing in English to avoid further google translate confusion; apologies. also, my phone lost my first attempt to answer this so apologies for terseness)
Edhelas: thanks for list of XEPs. I think you are missing the point: the current typical dialect of XMPP revolves around 1:1 IMs and XEP-45 MUCs. If I am talking in a MUC with JID foo@bar.com and the server(s) at bar.com go down, i lose the whole conversation - including the conversation history if it's implementing XEP-313. This is a major design flaw: conversations should be owned by the people participating in them; not any single party or vendor. Plus with a decentralised approach you get offline operation and merging history after netsplits for free.
You could implement these semantics on top of XMPP, which is what FMUC and BuddyCloud do - but you are effectively creating a whole new dialect (with very limited compatible server and client implementations, increasing fragmentation) just using XMPP as a basic message passing transport. So we decided to skip XMPP altogether and just use plain HTTP API with a higher set of baseline functionality (whilst still being extensible), rather than arbitrarily build on XMPP given the end result wouldn't be compatible with normal MUCs and XMPP IMs anyway. (We also only discovered the BC and FMUC XEPs after designing and launching Matrix).
I'm sorry that the existence of Matrix seems to upset some people who have successfully invested in XMPP. If XMPP works for you, then we're very happy and we're not stopping you. And we'll provide an XMPP s2s to Matrix bridge to let you enjoy Matrix too.
In terms of your concerns on HTTP long polling: with HTTP/2 it's really not that bad and only slightly worse than websockets. And anyway we only mandate plain HTTP as a baseline protocol for compatibility - if you want to put JSON or capn proto over WS or COAP or MQTT or whatever than go for it :)
Edhelas: this is the third time we've had the same discussion - if it still doesn't make sense please tell me what is confusing so we don't get stuck in groundhog day…
[^] # Re: Ça ca parler de Matrix ou de l'IM en général au final ?
Posté par edhelas (site web personnel) . Évalué à 1.
Sur l'idée d'avoir des MUC décentralisés je te l'accorde c'est bien sympa et en effet sur XMPP c'est pas pensé comme ça. Mais encore une fois ce sont des choses qui peuvent être imaginés et étendues sans soucis.
Concernant le fait de perdre l'historique si le serveur tombe, ce n'est pas totalement vrais. MAM permet de garder un historique sur notre propre serveur, même si le serveur distant n'est plus disponible.
C'est ici que je ne suis pas d'accord avec toi. XMPP (Extensible Messaging and Presence Protocol) n'est pas/plus Jabber. Aujourd'hui le "cœur Jabber" n'est plus qu'une petite partie du protocole, mais je te l'accorde ici aussi, oui ça a été construit "par dessus" donc il y a encore l'état d'esprit du protocole original.
Par ailleurs, XMPP n'a pas vocation a être implémenté dans sa totalité par les clients et serveurs, libre à vous de choisir/casser ce qui vous plait, ou pas, dans XMPP. Mais le fait de garder une architecture commune permet de limiter la difficulté quand il s'agira de construire les "ponts" entre les réseaux.
Et je pense qu'il y aura également des transports XMPP vers le réseau Matrix :) Ce n'est pas la première fois qu'on essayera de créer un pont en utilisant une interface Web, je viens de packager 2 librairies (pour le réseau Skype et QQ) qui passent par une interface Web pour interagir avec leurs réseaux respectifs (voir http://edhelas.movim.eu/blog/?post/2015/06/06/Packaging%2C-d%C3%A9ploiement-et-int%C3%A9gration-de-nouveaux-transports-XMPP) .
HTTP/2 est encore très loin d'être déployé et utilisé partout, mais en effet les avancées faites vont considérablement réduire la signalisation et le temps de latence lors de l'échange des données.
Dans mon projet j'ai fait le chemin inverse, je suis partit du long polling HTTP pour aller vers les WebSockets, puis sur du Socket simple. Pensez aussi aux mobiles, le long-polling implique systématiquement un "ping" pour savoir si la ressource est encore disponible, le mobile/navigateur risque donc d'envoyer des centaines/milliers de requêtes quotidiennement pour simplement garder une connexion ouverte sur le serveur.
Oui nous en avons déjà parlé mais sans avoir le temps de creuser exactement les points où nous n'étions pas d'accord. Je sais que je donne des fois l'impression d'être quelqu'un de têtu mais je trouve dommage d'avoir un explosion de protocoles d'IM (tant libre que propriétaires) et de passer notre temps a écrire des librairies de transports alors qu'il existe déjà tout ce qu'il faut comme standard dans la nature.
Ne pas être d'accord ou essayer de penser "hors de la boite" est super, c'est d'ailleurs l'essence même de ce que fait le logiciel libre. Mais ce qui caractérise aussi le libre c'est l'utilisation des standards. On a réussit à se mettre d'accord sur beaucoup d'entre elles, mais ça bloque pour l'IM/social et ça fait maintenant 5 ans que je pense que XMPP a la possibilité de devenir une norme universelle au même niveau que IMAP/SMTP/POP ont fait ce qu'on appelle aujourd'hui "l'email".
D'ailleurs ce qui est rigolo c'est qu'une fois qu'une norme arrive a émerger, l'innovation tend à se faire finalement plus sur les clients avec le temps. IMAP/SMTP/POP ça n'a pas fondamentalement changé depuis des années, pourtant on a eu Outlook, Thunderbird, les webmails, les clients mobiles avec plein d'interfaces… pareil pour le Web, pendant des années on s'est tapé dessus pour normaliser tout ça et au final, une fois que tout le monde s'est mis d'accord (HTML5…) on a vu ce que ça a donné : des applications web dynamiques, des systèmes d'exploitation (FirefoxOS), des intégrations poussées (notification, visio-conférence…) sur toutes les plateformes inimaginables.
Donc oui les normes c'est chiant, mais on fait avec. Je vais te faire une confidence, je n'aime pas particulièrement certains trucs dans XMPP, j'ai déjà eu des échanges assez mouvementés avec la XSF (comme sur certains problèmes relatifs à PubSub http://wiki.xmpp.org/web/PubSubIssues ou sur les Bookmarks http://mail.jabber.org/pipermail/standards/2014-April/028833.html), mais bon je fais avec. Mais je préfère prendre du temps pour discuter, proposer des corrections et faire évoluer tout ça. Et finalement le temps que je vais prendre pour "casser des choses" dans XMPP sera tout autant de temps gagné pour les autres projets qui souhaitent intégrer ces fonctionnalités/changements.
[^] # Re: Ça ca parler de Matrix ou de l'IM en général au final ?
Posté par devnewton 🍺 (site web personnel) . Évalué à 2.
Malheureusement il faut aussi souvent faire du heart beating pour ne pas perdre une oueb chaussette, c'est moins lourd, mais bon…
Le post ci-dessus est une grosse connerie, ne le lisez pas sérieusement.
[^] # Re: Ça ca parler de Matrix ou de l'IM en général au final ?
Posté par Thierry Thomas (site web personnel, Mastodon) . Évalué à 2.
Éventuellement cohérente ?
Sérieusement ?
[^] # Re: Ça ca parler de Matrix ou de l'IM en général au final ?
Posté par rakoo (site web personnel) . Évalué à 2.
Justement, l'un des points forts de Matrix est qu'il permet de réutiliser une identité qui existe déjà ailleurs pour s'authentifier dans le réseau. Pas besoin de créer un nouveau compte.
Ben il suffit d'observer. XMPP c'est super hein, techniquement on peut faire plein de trucs avec, yapluka déployer. Sauf que c'est ce yapluka qui me chagrine, et qui fait qu'en pratique très peu de personnes font, et XMPP n'est toujours pas le protocole qui domine le domaine. On pourrait dire que c'est IRC qui reste le protocole majoritaire des salons de discussion publics (voire même privés), avec Slack qui commence doucement à lui manger des parts (surtout dans les privés). Il n'y a pas encore de protocole d'IM un poil ouvert qui soit majeur, pour le microblogage encore moins, pour la diffusion d'informations il y a très clairement RSS+HTTP qui se fait doucement manger par Twitter…
Bref, XMPP est tip top techniquement mais il n'a pas su être suffisamment convaincant pour devenir une référence (dans le sens "Nan mais allo quoi, tu fais de la messagerie instantanée/des salons de discussion/du pubsub/de la communication entre entités en général mais t'utilises pas XMPP"). De ce point de vue j'ai du mal à voir comment Matrix fera la différence cela dit, mais pourquoi pas !
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.