• [^] # Re: Point de vue d'un développeur XMPP

    Posté par (site web personnel, Mastodon) . En réponse à la dépêche Matrix pour décentraliser Skype, Whatsapp, Signal, Slack et Discord. Évalué à 7.

    Mon message n'était absolument pas dirigé contre toi, je trouve ta dépêche très bien, et la comparaison est un sujet compliqué, parce qu'il faut bien connaître les 2 environnements (d'ailleurs je ne connais pas suffisamment bien Matrix pour faire une comparaison technique poussée, j'espère avoir le temps un jour de regarder de plus près). Et c'est un projet qui fait parler de lui, c'est une très bonne chose de faire des dépêches travaillées sur le sujet, donc merci :)

    Cependant même après ton message, il me semble que la différence fondamentale est bien que Matrix intègre (kitchen sink...) à la base beaucoup plus que XMPP ? Et du coup est clairement moins flexible au niveau des extensions ?
    Cela me rappelle un peu le débat micro-noyau et noyau monolithique.

    Je pense que le débat micro-noyau/monolithique est plutôt applicable au débat décentralisé client/server contre 100% P2P, parce qu'au niveau des fonctionnalités XMPP est justement proche du fonctionnement de Linux, avec un noyau dur (les RFCs), et des modules dynamiques (les extensions).

    Au niveau des différence fondamentales, il n'y en a pas tant que ça, le système de réplication est parfaitement adaptable à XMPP. XMPP utilise XML ce qui est critiqué par certains (à tort à mon avis) sur TCP (ou autre), Matrix utilise HTTP qui a sa lourdeur.
    XMPP a des recommandations par années (les « compliance suite »), qui permet d'avoir une base commune pour les clients « modernes ».

    Par contre sur le plan politique (c'est pour ça que j'ai dis que j'attendais de voir), XMPP a beaucoup d'entreprises/associations et de particuliers impliqués (certains avec un but lucratif d'autre non), un système (par parfait certes) d'élection, de « council » (conseil), et des règles écrites (par exemple, il ne peut pas y avoir plus d'un certain pourcentage de membres de la même entreprise, je n'ai pas le chiffre exact en tête).

    Matrix souhaite un chemin similaire d'après ce que j'ai compris, mais est développé par des membres issus d'une même entreprise, avec un financement privé, une influence et une prise de décision très concentrée, et un but probablement lucratif.

    Pour moi la différence se situe plutôt là que sur le plan technique.

    En tout cas j'ai jeté un oeil vite fait, et rien ne semble avoir bougé sur leur FAQ au niveau de XMPP depuis un moment. Un point que je ne comprends pas très bien, c'est pourquoi tu te refuses à proposer un changement (pull request) pour leur FAQ ?

    À l'époque je n'avais pas (et ne voulais pas) de compte Github. Entre temps j'ai dû en faire un pour mon travail salarié, et je me suis résigné à en faire un autre pour contribuer à titre personnel à des projets dessus (que j'ai appelé goffi_contrib pour bien spécifier que c'était uniquement pour la contribution).

    Je pense aussi que je suis trop biaisé pour modifier ça moi même, et que c'est à eux de le faire de toute façon. De la même façon je ne touche pas à la page Wikipédia de SàT parce que Wikipédia demande aux gens impliqués de ne pas le faire, et pourtant je regrette que cette page est quasiment vide et n'est pas à jour.

    Et aussi (surtout), je n'ai pas le temps pour ce genre de choses annexe, même si au final écrire des commentaires comme ici est aussi long, mais j'ai vraiment un rythme de fou.

    C'est je trouve assez constructif de leur part, d'essayer d'expliquer les différences avec XMPP. Et c'est risqué car du coup ils s'exposent aux critiques si ce n'est pas parfait (seuls ceux qui ne font rien ne font jamais d'erreurs).

    Ah mais ça n'est pas ça le mal, c'est tout à fait légitime de faire ça, même de critiquer.

    Ce que je reproche c'est la manière dont ça a été fait, et dans la FAQ les réponses sont mises, mais toujours avec une formulation qui fait douter.

    Plutôt que de supprimer l'affirmation fausse que XMPP n'est pas « web-friendly », ils mettent une remarque entre parenthèses, dire que la synchronisation d'historique ou les passerelles sont des « second class citizen feature » (fonctionnalités de seconde zone) est un mensonge, c'est plein de « apparently », « questionable », il y a des guillemets autour de « fine » quand la communauté répond que ça marche avec un satellite à très faible débit.

    Sans oublier la phrase « The whole subject of XMPP vs Matrix seems to bring out the worst in people » (« le sujet de XMPP contre Matrix semble faire sortir le pire côté des gens ») qui laisse entendre que c'est la communauté XMPP qui a agit avec agressivité (il y a eu en effet quelques réponses sèches à la longue).