5 ms·
I'm so incredibly conflicted about whether to keep investing time and energy and hope around Matrix. I normally have good tech intuition and matrix is in this
by k8svet 3y ago
I'm so incredibly conflicted about whether to keep investing time and energy and hope around Matrix. I normally have good tech intuition and matrix is in this weird spot. I think the vision and direction and attitudes are amazing but they keep fking up badly.
I'm embarrassed at the thought that I would "soon" soft nudge my friends and family to matrix, years ago. With the state of synapse, matrix.org, and the project in general, I wouldn't consider trying that for another 12-18 months. Or more.
This current news just gives me more pause about leadership and vision. This is a huge "oopsie" to put it nicely. It feels like a massive loss for matrix (bad first impressions, negative impact on network effects, etc) and will undoubtedly be something that matrix detractors will point to for years.
I normally keep quiet about this and just huff more copium because I WANT matrix to succeed, but I wish using Element and matrix as it exists didn't make me feel so ... Idk. Normally by now a tech project with this transcripts hits a steady state but man, the protocol is lacking, element web is just passable at the most generous. Element on Android, I won't even speak about, refer to where I want element to succeed.
To balance this out - Element x has been pleasantly satisfying lately. I'm curious if the team is deliberately taking a different strategy. New Element is working on basically the intersection of what I think are going to be foundational future "stuff" but seem almost to eager. Meanwhile element x is missing for feature but is, still after months of using it, "blazingly fast".
- immibis 3y agoMatrix, at this point, is effectively proprietary. It's fully controlled by one for-profit company (Element) and the blockchain protocol (yes, it uses a blockchain) is complicated enough to prevent independent reimplementations. And it doesn't even work that well.
- camgunz 3y agoSorry I don't think anything you've written here is true: > Matrix, at this point, is effectively proprietary. Matrix is fully open [0] and fully spec'd by the MSCs [1], and stewarded by the Matrix Foundation [2]. > It's fully controlled by one for-profit company (Element). 2/5 people on the board work for Element [2]. > and the blockchain protocol (yes, it uses a blockchain) It does not use a blockchain (there is no proof-of-anything). You might be confusing blockchains with Merkle Trees, but in that case you'd also have to think git is a blockchain. > is complicated enough to prevent independent reimplementations There are several independent client [3] and server [4] implementations. > And it doesn't even work that well. Maybe not, but it has pretty good adoption [5] [0]: https://github.com/matrix-org https://github.com/matrix-org [1]: https://spec.matrix.org/ https://spec.matrix.org/ [2]: https://matrix.org/about/ https://matrix.org/about/ [3]: https://en.wikipedia.org/wiki/Matrix_(protocol)#Clients https://en.wikipedia.org/wiki/Matrix_(protocol)#Clients [4]: https://en.wikipedia.org/wiki/Matrix_(protocol)#Servers https://en.wikipedia.org/wiki/Matrix_(protocol)#Servers [5]: https://en.wikipedia.org/wiki/Matrix_(protocol)#Adoption https://en.wikipedia.org/wiki/Matrix_(protocol)#Adoption
- deleted 3y ago[deleted]
- vilunov 3y ago> Matrix is fully open [0] and fully spec'd by the MSCs [1], and stewarded by the Matrix Foundation [2]. Technically correct, but in practice the spec is complex enough that there are only 2 more or less working server implementations, both of them developed by the same org. I tried to implement it myself, but in comparison to IRC and XMPP it's just too complex. That's what "effectively" means. > There are several independent client [3] and server [4] implementations. Only one non-Element server is there is "Production ready", and it's dead. The website is down and the last commit is from 2021. There were many spec changes since then, including the infamous "sliding window sync", which is necessary for the next gen clients. > It does not use a blockchain (there is no proof-of-anything). You might be confusing blockchains with Merkle Trees, but in that case you'd also have to think git is a blockchain. They probably mean the DAG-like structure of rooms, which is a horror to implement, and even more horrifying to implement efficiently. It's a blockchain of sorts, with room events being linked to parent events. > there is no proof-of-anything It does not need to be "proof-of-anything" to be a blockchain, that's not why there are words "block" and "chain" are there. There is a consensus protocol between home servers, and it fails terribly, leading to room resets.
- camgunz 3y ago> That's what "effectively" means. Sometimes hard things are hard, and it turns out a distributed E2E messaging system is one of those things. Same goes for writing a fit-for-purpose C compiler. Doesn't make GCC or the C standard any less open. > Only one non-Element server is there is "Production ready", and it's dead. Yeah I think reasonably you're looking at Synapse, Dendrite, and Conduit -- all Element-written. I think the argument was "it's too hard to implement", but someone's done it three times, so it still seems like that's wrong. > They probably mean the DAG-like structure of rooms, which is a horror to implement, and even more horrifying to implement efficiently. Op used "blockchain" as a pejorative, which is why I was responding "if you think Merkle trees are blockchains (and I would argue you shouldn't), you think a lot of perfectly fine software is a blockchain." If the argument is that implementing a distributed database is hard, well yeah, it is. > It does not need to be "proof-of-anything" to be a blockchain Not strictly, but you need a way to suppress fraudulent chains. Blockchains are Merkle trees with the requirement that the deepest tree is authoritative. They attempt to ensure this by requiring proof-of-*, which makes the creation of a fraudulent tree very computationally intensive, and therefore unlikely to ever catch up to the "real" tree. Matrix has nothing like this. > There is a consensus protocol between home servers, and it fails terribly, leading to room resets. Yeah, I think probably a lot of this goes away w/ the switch to MLS. But not all of it, they chose AP out of CAP (correct IMO) so this is just gonna be the way it goes. Your other options are deal with the service being down while it becomes consistent--which would happen constantly--or welcome back IRCs netsplits.
- jesopo 3y agothere's a lot of critiques to make of matrix's state synchronisation model but "blockchain!!!" is beyond facile
- immibis 3y agoIf you actually read my comment, you'd know that I did make a critique, and your ""blockchain!!!"!!!" reply is beyond facile.
- joshsimmons 3y agoAs the Managing Director of the Matrix.org Foundation it is expected that I conduct myself with some level of decorum. So, exercising all due restraint, I say this: your statement is unmoored from reality. I thank @camgunz for chiming in and citing sources.
- Zetobal 3y agoRidiculous. You joined a mere 6 months ago you didn't have any say in the decisions you are trying to defend now. You aren't even defending them you are just babbling and more emberassing playing personal attacked while deflecting. Matrix is dying and element killed it. Good riddance. I knew the stories were too good to be true but turns out you are just as corp as every other hired gun. There is a reason why they put a community manager in charge of matrix. Tell us why your spec trails your implementation for months so you basically make sure no one can develop competing server/clients.
- Arathorn 3y agoI think your vitriol is better directed at me (as Matrix project lead & founder) rather than Josh, whose role as MD for the Foundation is to ensure it gathers $ and distributes it as effectively as possible to support Matrix. The original post here is written by Josh because he took over diplomatics with Libera to give it a fresh start as an independent, given the breakdown in trust on both sides. In terms of Matrix dying, killed by Element: I’m afraid rumours of Matrix's death are highly exaggerated. And Element spends its life helping Matrix come to life rather than death, for better or worse. The reason the spec trails the implementation for months is precisely the same reason that the formal HTML5 spec trails the implementations for years. It's not some grand conspiracy that Mozilla ships CSS Flexbox behind a vendor prefix for years (decades?) ahead of the feature being finalised in the spec. Instead: the point is that you get to play with the spec change in the wild, prove that it works, iterate on the design, and then eventually propose it for merge into the spec itself. Personally, I think this is one of the bits of Matrix that we've got right. The spec process doesn't evolve as fast as it could, but that might well be a feature (just like it's a feature that HTML5 moves slowly too, but doesn't stop folks experimenting all over the place on it). https://spec.matrix.org/proposals/ https://spec.matrix.org/proposals/ explains the full process and the workflow, in case you want to understand it.
- Zetobal 3y agoDrop it. After all the shit they pulled last year (no oss server code anymore, killing bridges, bugged clients) and hiring a PR person you just know they are going for entshitification. I wonder if they will recognize that their commercial offerings are just not up to spec.
- joshsimmons 3y agoCheck your facts. Matrix remains an open protocol, under open source license, with open governance, stewarded by a nonprofit. And there remain multiple open source server implementations and clients. As useful as Cory Doctorow's concept of enshittification is, it has absolutely no utility in describing what is happening here. Nobody is being locked in, the user experience is incrementally improving as the spec and the implementations evolve, and we're sure as hell not collecting ever more data and using recommendation algorithms to shove advertising down people's throats. There are plenty of valid critiques. But what you're saying here is just patently absurd.
- Zetobal 3y agoThe PR person is here... next time at least tell everyone who you are. Actions speak loader than PR babble especially if it's not addressing the mentioned concerns.
- wkat4242 3y agoThey did reveal that in an earlier post only 3 above this one, to be fair. It would get a bit tedious adding a disclaimer to every comment.
- joshsimmons 3y agoI really appreciate you sharing your concerns, and for all the hope and energy you've put into Matrix to date. Very much to your point, we're not yet in a state where I recommend Matrix to friends and family. Right now I only use it with people in FOSS and other circles where folks are a little more patient with the tech. Only time will tell, and of course I'm biased as the Matrix.org Foundation's Managing Director, but I think there's good reason to remain hopeful: The spec continues to evolve with major improvements expected in feature set and performance in the next year as we get to the 2.0 spec release, the Foundation is staffing up and beginning to fundraise, we're on the cusp of holding our first ever community elections to seat a Governing Board, and adoption has continued doubling on an annual basis. I invite you and anyone else who is invested and/or concerned to join us in the Foundation's new office room – it's a way to get a view into ongoing activities, ask questions, provide direct feedback, and celebrate all the little wins on our way to collective success: https://matrix.to/#/#foundation-office:matrix.org https://matrix.to/#/#foundation-office:matrix.org
- Arathorn 3y ago> with the state of synapse, matrix.org, and the project in general, I wouldn't consider trying that for another 12-18 months. Or more. Synapse is very stable these days, and relatively resource efficient. Matrix.org (both the server, website, spec and foundation) is in a good place too, as is (from my biased pov as project lead) the project in general. > This is a huge "oopsie" to put it nicely We simply don't have the people to do a good job of maintaining the Libera bridge. We tried to jump forwards on it with persistent connections to improve the experience on the Libera side; this caused a tonne of instability; we couldn't move back (given it would have also been seen as a backwards step); we didn't have the manpower to fix it rapidly either; so this is not remotely our preferred outcome. We ran the bridge for almost 8 years; it wasn't perfect; it wasn't a total disaster either; but in the end we overstretched ourselves and Libera pulled the plug. > It feels like a massive loss for matrix (bad first impressions, negative impact on network effects, etc) and will undoubtedly be something that matrix detractors will point to for years. Matrix has around 5M native active users based on the phonehome stats, of which ~22k were using the libera bridge. I agree that it's awful for early adopter geeks who love IRC, and I despair that it has happened. But I don't think the sky is falling either. > Element X has been pleasantly satisfying lately. I'm curious if the team is deliberately taking a different strategy. Yes, it's a very different strategy. Element isn't working on the legacy mobile apps at all any more (other than for security updates), and rather than being spread too thin over too many projects and codebases (Element Web, Element iOS & Element Android all had zero code in common other than libolm) instead the intention is for Element to focus on one primary codebase (matrix-rust-sdk + Element X and Element Web 'R') and nail it. Meanwhile we don't have the manpower to do a good job of other projects (e.g. Libera bridge, P2P Matrix, Third Room etc.) and so they are on hold for now. I agree that with 20:20 hindsight this hasn't been the most efficient route to get to where we are today.
- deleted 3y ago[deleted]
- Laaas 3y agoDid you solve the funding issues after that Christmas (?) post about not having enough funds? I assume probably not fully given you don't have enough manpower?