Follow

drewdevault.com/2021/04/07/The

Drew DeVault has some correct criticisms of Matrix. Although I haven't run a server myself directly, I've been in close contact with people who have, and I know what a task it is.

However, DD seems to think this disqualifies Matrix all together. I'd like to think that it can overcome these difficulties, maybe with upcoming implementations like Dendrite.

@makeworld

> I would also recommend leaving a lot of those features at the door, anyway. Typing notifications and read receipts are pretty toxic, if you examine them critically. A lot of chat apps have a problem with cargo-culting bad ideas from each other. Try to resist that.

Very true.

@tost got any insight to share? I don't have experience with it.

@makeworld I've been running dendrite basically since it started being versioned
there's basically no progress being made
hell there have been 8 commits total in the last month
and most of the progress since it became versioned has just been smallish bug fixes, while the basic features that are borderline required to use the damn thing (e.g key cross-signing) are nowhere to be seen

@tost oh yikes. I thought it had active development.

@makeworld @tost

It certainly is not developed quickly for one reason or the other. But there is stuff like conduit too.
Plus I have been following the matrix Friday news and there has been news now and then. It is still in active development. Just maybe not as much as it will replace everything this year

@tost @makeworld As one of the developers of Dendrite, part of what’s contributing to the slowness of development recently is that I’m currently on over 2 weeks annual leave due to moving house, there are other projects going on and our time is divided in the team as a result. We are painfully aware that there are a lot of features still to be added (like cross-signing) and they will come. We have been very forward though in saying that Dendrite is only for the adventurous at this stage.

@makeworld this is the guy that threatened to black hole your users if your browser implemented favicons right?

@oppen @makeworld I also seem to recall his response to Github changing its default branch to "main" included both "Nobody was talking about this before this year" AND "I've been following this issue for several years now".

@oppen yes this is him. I'm not sure it's really related like you claim though.

@makeworld well, as someone running a service he's in a position of power and threatened to abuse that power - so I think it's hilarious when he writes things like this.

@oppen @makeworld that's literally the point he's making though, right? like even if he blackholed users he can't stop them from visiting other capsules, and even if he blackholed users in gmnisrv you could just go choose a different server.

it is amusing that he is the type of person to abuse his power that he mentions in the article, but he's sort-of proving his own point here

@makeworld I have deployed 3 different #Matrix servers all different ways (Standard installation (on Debian), Yunohost, & Ansible Playbook (docker) all for various purposes. While each way had it its own quirks to get set up (Ansible playbook being the best way to go IMO) maintaining them is little to no effort. The performance of Synapse ("flagship" #Python Matrix server) is only a major issue when federating large number of federated rooms on lower end hardware (Raspberry Pi, $5 VPS' and so on) and you only notice the hitches when joining those rooms and your server busting ass to catch up. Shoot if you just want a non federated server for internal chat meant a for a select group it runs smooth on most hardware.

Matrix.org is trash many servers have found other places to host their channels and just provide a Alias to matirx.org. Overall is it perfect.... no, but is it improving...yes! Also if all you want is chat and nothing else fancy there are a couple client that support the encryption stuff on mobile and desktop that are not based on Element if a "modern" chat client is not your cup of tea.

@makeworld It's hard to take seriously someone who says "compelling alternative to IRC" in 2021. Literally anything is better than a protocol that requires users to stay online 24/7 to not miss discussions.

@makeworld Oh right, this is the same guy who thinks emailing patches is a great way to collaborate on software 🙄

@be @makeworld It's actually how Git was meant to be used for collaboration from day one. I also think sending patches via e-mail is a better way to collaborate than having to create an account in a specific hosted Git service in order to fork a repo and submit pull-requests; it locks you into a hosted service (e.g. GitHub) and makes it harder for people not in that service to contribute to software.

@avalos @be @makeworld

The problem with git-mail though is that it has a steep learning curve to newcomers. I can see it being an option.
But if it is the only option it can be a huge gatekeeping move. Like gnu does

@msavoritias @be @makeworld I haven't ever used git-email nor sent patches via email; but yeah, that's the case from what I've heard. Although, honestly, Git in general has a very steep learning curve and it's ugly. Take a look at this for a nice joke: git-man-page-generator.lokalto

@avalos @msavoritias @makeworld Git does have a fairly steep learning curve, but I think it is appropriate for how complex its job is.

@be @avalos @msavoritias @makeworld

My compromise for my projects: Use my rudimentary issue tracker without signing up. And you have the choice to either run `git format-patch` or link me to the codeforge of your choice.

I think that addresses all concerns...

@be @msavoritias @makeworld The complex functionality of software shouldn't interfere with the basic parts, in my opinion. Git doesn't need to be complex for simple tasks.

@be @makeworld I feel the same about IRC, but take into account that IRC wasn't meant to store conversations, but rather only to relay messages (hence the name Internet Relay Chat) across computers for real-time, synchronous conversations.

@makeworld The biggest problem with Matrix is the huge and rapidly changing API, as well as a lot of bad design decisions (e.g. JSON/HTTP polling) that would take creating a different protocol to solve.

Dendrite does not really solve any problem, it rather makes the existing ones less noticeable. Being written in Go means a lot more performance, efficiency and reliability (to the point where it can run in your phone or web browser); but complexity and bad protocol design decisions are still there.

@avalos @makeworld Matrix *already is* the different protocol. And totally needlessly aswell. There is no technical reason why they couldn't simply have gone with XMPP

@waweic @makeworld True, XMPP is probably a better choice. The XMPP ecosystem needs to grow and evolve. OMEMO needs to be fully standardized.

@avalos @makeworld It basically just needs some funding. That's the single reason why Matrix is proliferating. The protocol isn't better, it's arguably worse in many aspects. But Matrix.org got the money

@waweic @makeworld Actually, XMPP is still one of the most used chat protocols, but users are not aware because Big Tech doesn't bother talking about it.

@avalos @makeworld

Sadly there is nothing better though.
Xmpp is half dead.
At least in the protocol space things seems to have standardized in matrix.

@msavoritias @makeworld XMPP is half dead because nearly every Big Tech company adopted it once, developed proprietary extensions and software, then locked-in their users into their services (i.e. disabled federation and interop), and never contributed back to the XMPP project.

@avalos @makeworld

That's true. Sadly matrix is a permissive license too. That's one of the things that gave me a red flag. Its not gonna go far if it allows the capitalistic companies to do anything they want.

I think though that part of the problem. Xmpp is also horribly fragmented as a protocol. There is no central specification with a bunch of requirements. So you basically end up with a lot of incompatible implementations.

@makeworld I run a Matrix server and have no problem keeping it up and running.

It's a small server, so maybe if you have tens of thousands of users it performs poorly? As for poor client performance, again, I've seen no evidence.

Confusing UI? Neither I nor any of my users have had any problems. Don't know what they're on about.

I tried Dendrite first and almost abandoned Matrix because of it. It was a nightmare. After I switched to Synapse, all the problems went away.

@adam @makeworld On one point he is right it is waaay too complicated. I also thought it was too heavy because when I installed it for the second time (the first time I tried dendrite which is incomplete) but it is because it takes a while to complete the federation and cache all the metadata and the user icons. By default it will dinamically resize icons and images, and that has a big impact on performance, I turned that off now but still I have almost 1GB on images in the media store (mostly user icons). I also increased the memory cache and it uses 800MB ram to cache ip addresses and other informations that are lost everytime the server is restarted. It is important to let the server run 24/7 otherwise it takes a couple of days before the caches are recreated. And that is just the main server … now I can join most rooms without problems even on my odroid N2 running at home. DD is right about the complexity of the software, I am running 2 workers an identity server, a couple of bridges, I will maybe try also dimensions the integrations manager, but they ship it only for x86_64 I have to recompile it for aarch64 …. way too complicated for the average guy.

@adam @makeworld I think that maybe MSC2134 (hash lookup) wil be very useful for the privacy, that is why I am running my identity server. https://github.com/matrix-org/matrix-doc/blob/master/proposals/2134-identity-hash-lookup.md

Sign in to participate in the conversation
Sunbeam City 🌻

Sunbeam City is a anticapitalist, antifascist solarpunk instance that is run collectively.