Highlights include Sliding Sync (instant login/launch/sync), Native OIDC (industry-standard authentication), Native Group VoIP (end-to-end encrypted large-scale voice & video conferencing) and Faster Joins (lazy-loading room state when your server joins a room).

  • pezhore@lemmy.ml
    link
    fedilink
    arrow-up
    2
    ·
    edit-2
    10 months ago

    Okay, help an old-timer out.

    Lemmy :: Reddit

    Mastodon :: Twitter (I refuse to call it “X”)

    Matrix :: ???

    Is it like discord? The olden days of AIM/ICQ/IRC?

    • u_tamtam@programming.dev
      link
      fedilink
      arrow-up
      0
      ·
      10 months ago

      I will get shit for writing that, but Matrix in its current form shouldn’t have seen the light of the day, nor should have been let to spread with close to no technical scrutiny and based on empty promises/hype like it did.

      Just to be clear, I’m absolutely encouraging, in fact, actively promoting federated alternatives to things like WhatsApp, Messenger, Signal, Telegram, …
      But I don’t believe for a second that the foundations on which Matrix is built make sense, can be made to work well in practice, nor represent a problem worth spending so much time and effort solving. This article does a good job at introducing the “behind the scenes” of the protocol: https://telegra.ph/why-not-matrix-08-07

      The whole history of Matrix can be summarized as:

      • “let’s do this because it’s cool”

      • “shit, it’s hard/slow, but we will figure it out”

      • “I have a breakthrough, here comes a new version of the protocol/client/…” (the ecosystem reboots)

      (rinse and repeat)

      Matrix has seen more incompatible reincarnations of itself in the last 5 years than XMPP in the last 20. Arathorn, its lead contributor and evangelist will keep apologizing, promising that this time they have their stuff in order, that whatever buzzword will solve this or that aspect of the problem, while the elephant still is in the room. You practically can’t tell apart arathorn’s messages of 2015 from those of 2022 and that would be funny if it wasn’t so sad.

      IMO Matrix is broken beyond repair, while XMPP is quietly used by millions of users. I wish Matrix could carry its own weight and be so unambiguously better that we wouldn’t need competing alternatives there. To me, the better XMPP is XMPP itself, and I’d be happy to elaborate on that.

      • rglullis@communick.newsOP
        link
        fedilink
        English
        arrow-up
        0
        ·
        10 months ago

        I agree in theory, but in practice my experience with Matrix has been infinitely better than with XMPP:

        • There is no decent client for all major platforms on XMPP. Conversations is “good” on Android, but what is its equivalent on iOS? On the desktop, Pidgin/Adium were ok if you wanted just to chat, but audio/video required a lot of work.
        • No decent web-based client for XMPP.
        • Setting up e2ee is a pain.
        • Setting up MUC is a pain.
        • To this day I did not manage to set up video chat on my XMPP server, or at least I never found someone on a different server that managed to connect with mine.

        Matrix may be technically complex, but at least it has managed to keep its ecosystem together. Whenever I’ve faced an issue with my server, all I needed to do was upgrade synapse. The “millions of users” in XMPP are mostly all on their own silos, while I am yet to have an issue where I want to chat with someone on Matrix but couldn’t because their client/server was not compatible with mine.

        • u_tamtam@programming.dev
          link
          fedilink
          arrow-up
          0
          ·
          10 months ago

          Yep, I’m absolutely appreciative of the good work put together by the Matrix folks on the client side, element is overall okay (although slow, quirky, unstable, …) because of fighting a misguided and unstable server and protocol.

          To answer your points:

          • what is its equivalent on iOS?

          https://siskin.im/

          • No decent web-based client for XMPP.

          I would argue that https://movim.eu/ is at least as good as element web. https://conversejs.org/ does the job to bridge across native clients.

          • Setting up e2ee is a pain.

          What is there to set up? The experience is very comparable to Signal and al. What did you find painful?

          • Setting up MUC is a pain.

          How so? It depends on the client, but on Conversations it’s a matter of clicking on + → “Create private group chat” or “Create public channel”. In gajim it’s + → “Create group chat”

          • To this day I did not manage to set up video chat on my XMPP server, or at least I never found someone on a different server that managed to connect with mine.

          For calls to work, you need to use a stun/turn server (like everything everywhere else, including Matrix, Jitsi Meet, …). If you self-host, and you have a recent ejabberd, it’s configured out of the box and you just have to open server ports.

          Matrix may be technically complex, but at least it has managed to keep its ecosystem together.

          Another way to put it, is that matrix is technically so complex that only a single party can afford to develop and maintain a working implementation. The documentation is lacking and alternative implementations are incompatible in effect. This isn’t a sustainable situation (that those who define the standard are the ones implementing it) and we have started to see the cascading effects of that with the bitrot of the IRC bridge with libera.chat for instance.

          I am yet to have an issue where I want to chat with someone on Matrix but couldn’t because their client/server was not compatible with mine.

          it’s funny because I’ve never experienced that in the XMPP world where the protocol is so stable that you can just S2S/C2S with decades-old servers seamlessly, whereas failing to update synapse for a matter of weeks guarantees compatibility issues. And I’m not even talking about 3rd party implementations like conduit for which incompatibilities is a guarantee.

          • rglullis@communick.newsOP
            link
            fedilink
            English
            arrow-up
            0
            ·
            10 months ago

            Not to dismiss the work of FOSS developers, but siskin seems quite primitive. It does provide the very basic functionality that you could expect from any messenger from about 10 years ago but that’s about it.

            For calls to work, you need to use a stun/turn server

            I may try to take another look, but I did have a ejabberd server that was passing pretty much all the tests in the conversations suite, but I did not manage to make calls between pidgin and conversations.

            Which is kind of my beef with frustration with XMPP. There was never a whole combination of client/servers that would work consistent.

            Another way to put it, is that matrix is technically so complex that only a single party can afford to develop and maintain a working implementation.

            As long as this working implementation is working and it is open source with some community oversight, I don’t mind having a clear leader in the project. The alternative is this eternal push-pull of forces that we had in XMPP, where we end up with a fragmented ecosystem which is never universally accessible.

            whereas failing to update synapse for a matter of weeks guarantees compatibility issues.

            Well, yeah… but since when it is a good idea to let a server unpatched/out-of-date in the public internet?

            • u_tamtam@programming.dev
              link
              fedilink
              arrow-up
              0
              ·
              10 months ago

              Not to dismiss the work of FOSS developers, but siskin seems quite primitive.

              Fair, but it does that in ways that do not deceive its users, as in, what it does it does pretty well.

              It does provide the very basic functionality that you could expect from any messenger from about 10 years ago but that’s about it.

              As far as I’m concerned, Instant messaging was a solved problem 20 years ago, we had practically more features in Yahoo and MSN Messengers (of which XMPP was a superset, for bridging and compatibility purposes), and Whatsapp, telegram and the rest have been removing the most distracting features. What are you missing for effective communication essentially?

              I may try to take another look, but I did have a ejabberd server that was passing pretty much all the tests in the conversations suite

              Are you talking about the compliance suite? As far as I remember, it’s pretty upfront about testing the capability but not the implementation (because testing for things like calls is very difficult and network dependent, you won’t get the same behavior from being behind a NAT or a public IP, and the test passing is no guarantee that it will work in the wild. Even Google's own WebRTC STUN/TURN testing tool is full of gotchas but is a good step to add to your testing).

              Which is kind of my beef with frustration with XMPP. There was never a whole combination of client/servers that would work consistent.

              There will never be a client nor a server that will implement all XEPs, because that’s not desirable: some fringe/IoT/obsolete cases just have no meaning nor use for most users, though there are some compatibility levels, updated regularly, that all maintained clients and developers target (e g. https://xmpp.org/extensions/xep-0479.html ). Under those circumstances you have a pretty good user experience.

              As long as this working implementation is working and it is open source with some community oversight, I don’t mind having a clear leader in the project.

              But how about the implementation not working so well in practice and with enormous trade-offs, and the leader being essentially a marketing agency running for funds while covering up those trade-offs or blatantly lying about them?

              The alternative is this eternal push-pull of forces that we had in XMPP, where we end up with a fragmented ecosystem which is never universally accessible.

              Beyond the facade of new vector’s products, Matrix is as much fragmented if not more. Why would it be otherwise? Nothing is fundamentally better: there’s a spec and people chasing it. Except that in the case of Matrix, the spec is just there for reference and eventually consistent with what’s in the code of synapse running matrix.org, which is actually what matters (and might be quite different from what your server is doing for a bunch of good and bad reasons). I’ve bumped into more client to server and server to server incompatibilities hosting Matrix for few months than I did over years and years of operating XMPP. Things are just so much more stable and mature there (and slow, and boring, which users and admins alike tend to appreciate for something so central to their lives).

  • ono@lemmy.ca
    link
    fedilink
    English
    arrow-up
    1
    ·
    10 months ago

    Their native group VoIP calling looks to have a solid topology that could easily replace Jitsi in the near term, and eventually compete with larger scale conferencing services like Zoom. That’s kind of exciting for those of us who care about open systems and privacy.

  • Izzy@lemmy.ml
    link
    fedilink
    arrow-up
    1
    ·
    10 months ago

    I wish the whole project was a little bit more clever with its names. Matrix and Element are not unique enough names and can cause a lot of confusion.

    I like the project though and still hope it continues to succeed.

  • u_tamtam@programming.dev
    link
    fedilink
    arrow-up
    0
    ·
    10 months ago

    “Sliding sync” is Matrix’s own admission that the protocol is too complex and taxing on clients to be practical, and shifts the burden further onto already overwhelmed servers for what’s essentially bouncers marketed as new tech. And it’s still a mess.

    • shrugal@lemm.ee
      link
      fedilink
      arrow-up
      0
      ·
      edit-2
      10 months ago

      Admitting problems and improving/replacing your protocol is good, you make it sound like a bad thing. I mean you could argue that they should have started with this, but imo better late than never. From what I’ve seen this will take load off of the client AND the server, because both don’t have to sync thousands and thousands of events anymore. It basically looks like an indexing/caching layer between client and server, which is standard practice to make things go faster, especially for thin clients.

      • u_tamtam@programming.dev
        link
        fedilink
        arrow-up
        0
        ·
        edit-2
        10 months ago

        Admitting problems and improving/replacing your protocol is good, you make it sound like a bad thing.

        The only bad thing about this is that we’ve been at it for 10 years. If you’ve been following Matrix long enough, you’ve witnessed “the next big thing that will solve all problems” being promised every year. Matrix funding relies on hype, and I’m somewhat ok with that, so long as users and hosts are not taken hostage of empty promises. My first hand experience of Matrix X is that we are still far from what’s being advertised.

        edit: adding a missing word “thing”

        • shrugal@lemm.ee
          link
          fedilink
          arrow-up
          0
          ·
          edit-2
          10 months ago

          I really don’t get this attitude. It’s not like global decentralized instant messaging with all the usability, bells and whistles of centralized services is an easy problem to solve. And no one is selling anything, not to regular users at least. If you thought that this would be a straight forward path to a finished product then idk what to tell you, that’s not how this works.

          • u_tamtam@programming.dev
            link
            fedilink
            arrow-up
            0
            ·
            10 months ago

            It’s not like global decentralized instant messaging with all the usability, bells and whistles of centralized services is an easy problem to solve.

            Yup, absolutely, and being in this space myself as an enthusiast, that’s an interesting problem to see being worked on and having significant brain power allocated to, though that doesn’t remove anything from the fact that

            a finished product

            …is precisely what Matrix developers are advertising Matrix to be, and actively marketing it to be. You can go on hackernews right now and observe Arathorn telling everyone that everything is fine and solved now, even when shown evidence that it is not, like he has done since the beginning.

            I believe people should know what they are engaging with.

            • shrugal@lemm.ee
              link
              fedilink
              arrow-up
              1
              ·
              10 months ago

              precisely what Matrix developers are advertising Matrix to be

              Idk what stuff you’re reading, but every dev talk I’ve seen includes many acknowledgments of the shortcomings that still exist and the difficulty of the underlying problems. I never had the impression that they’re trying to sell a silver bullet that’ll fix everything once and for all. It’s mostly just incremental changes here and there that fix or improve certain parts of the system, and with that a steady progress towards the goal.

              Arathorn telling everyone that everything is fine

              I wouldn’t give too much on the speculations and opinions of any one person, even if he’s the Matrix project lead. Probably especially the project lead, because part of his job is being optimistic about changes so they actually happen. But this is still mostly uncharted territory, and all anyone can do is make best effort attempts to improve things bit by bit. And from what I’ve seen he also openly talks about issues and the limits of coming changes, so perhaps you just read too much into his more optimistic posts and comments?

              Personally I’m just excited for new developments, but also aware that any change has to prove itself in the field before it can be declared a solution for anything.

              • u_tamtam@programming.dev
                link
                fedilink
                arrow-up
                1
                ·
                10 months ago

                I wouldn’t give too much on the speculations and opinions of any one person, even if he’s the Matrix project lead. Probably especially the project lead, because part of his job is being optimistic about changes so they actually happen.

                Yep, I think that’s a very peculiar aspect of Matrix, about how it’s run and why I have such a hard time trusting and recommending it. It’s uncommon for opensource projects (especially “essential” ones) that adoption and fame must precede stabilization, as a condition to get to keep the cashflow and the lights on.
                I don’t think Matrix, starting up on venture capital, with an original but completely unproven idea, downplaying alternatives with FUD and superlative marketing, over-promising and constantly deflecting, was good community building.
                Had they kept a lower profile and not an antagonizing one, they could probably have built and integrated better with the other communities in this space (and I’m not just talking about XMPP, which was on the receiving end of the FUD, but also about libera.chat whose OPs are right to be fed-up with NV).

                so perhaps you just read too much into his more optimistic posts and comments?

                Arathorn, 2023-09-23:

                It’s also true that 8 years ago, everything was flakey as hell. However, whether you like it or not, we fixed it. The federation problems were resolved before the time of Matrix 1.0 back in 2019, and since then we’ve focused on making everything go fast too - e.g. Faster Room Joins in Matrix 2.0.

                I don’t know any admin who considers federation problems to be solved, and I don’t think Matrix 2.0 to be ready for the general public, so I call this denial, but heh, this is subjective :)