Live data from Hacker News

This Year in Matrix

matrix.org

51–60 of 109 posts

Re: This Year in Matrix

#51

Earlier quoted context omitted.

I'm running Synapse and Cactus chat on a 1gb memory, 1 vCPU Linode and it's just fine. Given, I have a small blog (ie low load on cactus), but I'm in many (15+) medium sized (100-1000 members) federated chats and it's just fine on a day to day basis. There are some limitations tho: - I can't join large rooms (2000+ members and whatever number of servers that entails on average) - Initial sync (first time log in on ne…

I think the initial sync issue is one of the worst problems, because someone joining in to leave a quick comment will be waiting for the system to synchronize. You can run the system on 1GiB/1 vCPU, but that comes with a performance penalty. My instance of Synapse definitely can't join any matrix.org chatrooms, no matter how hard I try. Even rooms with a few hundred participants are awfully slow and leave scrollback…

> I think the initial sync issue is one of the worst problems, because someone joining in to leave a quick comment will be waiting for the system to synchronize

The initial sync issue is only a problem for large accounts which have joined many rooms. Cactus comments creates a guest user for non-logged-in commenters, and an empty guest account is pretty much instant to load in my experience.

You can go to my cactus comments instance (running on aforementioned 1gb machine) to test out the speed https://karmanyaah.malhotra.cc/tech/2021/06/website-things/

Re: This Year in Matrix

#52
post #42
post #31

Earlier quoted context omitted.

> federation issues > gazillion TCP connections We’ve been running a Synapse server with quite a bit of federated rooms, even larger ones like you mention. Never noticed a single issue like this that I recall. I wonder if the reason is that we’re doing whitelisting, instead of federation with everyone by default. The whitelisting is quite liberal; I’ll add a server as soon as I’m in a conversation thread with someone…

I didn't whitelist anything, maybe that was a source for issue. > Disagree. Sure, UX can be improved, but compromising here defeats the purpose of why we’re doing this in the first place. The thing is, as I ran my own server in my office, SSL (with no E2E) is already a good privacy. And even with that setup, the server users got "harassed" by the UI asking them to sync devices keys. For many users, a single prompt ab…

So you are asking for a client setting (in Element I presume) to stop nudging users to set up e2ee? Did you file an issue for that?

Re: This Year in Matrix

#53
post #10

I tried to adopt matrix for our small business and here is summary of my experience. - Synapse is very resource hungry even for a small server - Synapse creates a gazillion of TCP connection and keep them open, it was a real problem for my ISP router (SOHO router for 1gbit/s) and it took a very long time to debug, be sure to limit the number of TCP connection on the server - Synapse is hard to get a good idea of the…

I'm running a small (at the beginning it was completely public, now I'm keeping an eye on registrations) homeserver with synapse for a few years - I really like Matrix on a conceptual level and I'm happy that it exists even through it's not perfect it works pretty well mostly. I don't want to be too harsh because it's the best decentralized alternative for chat at the moment and it's open-source and there is a lot of progress but damn' it was a pain in the ass to run that server... we solved our problems mostly with throwing resources and memory on the problem... it's a nice tour de force if you want to learn about debugging distributed systems but it's nothing to install somewhere and just keep running.

synapse is quite a mess and there are a lot of hidden footguns if you just run a server - this is just the tip of iceberg to keep the postgres database somewhat sane: https://levans.fr/shrink-synapse-database.html - lot's of other issues in the issue-tracker where you can just scratch your head.

bridges are all subtly broken - the xmpp bridge is horrible and broke in so much interesting ways that I'm not going to touch it ever again - telegram works okay most of the time, irc-bridge also have some warts - but it's easy to criticize from my chair and probably unfair to talk so negative about it here but it's often buggy and broken for edge-cases - it works most of the time pretty okay but it's quite a mess to get a mental model for the code and so it's difficult to debug things.

moderation/spam/etc.pp is all hackable but not there out of the box - it looks and feels like mostly quickly hacked up nodejs code that at least for us exploded in all kinds of interesting ways. https://github.com/matrix-org/mjolnir writing 3tb of logs in a few day and eating memory like crazy for instance. You have to babysit it and there is no simple ui for anything.

So it's powerful but requires quite a bit of dedication and patience to get right. It's a full blown distributed system and often state is all over the place and once you make a mistake it's difficult to impossible to get that thing do work correct again without starting over.

But there are so much promising projects that I'm confident that these issues will be resolved and it will only get better but in my experience it will break badly on all kinds of edge-cases - the mentioned xmpp-bridge created usernames that can't be deleted via the http api for instance. someone bridged 1000 channels via our telegram-bridge and there is no code to remove those channels - you have to code something up in python for yourself. irc bridge kicks you after 30 days idle because they can't handle the connections - freenode (before the takeover) said it's not them - maybe single threaded nodejs is not such a good idea for that.

Could I do it any better and delivering? Probably not. But except some adventure and if you want to deploy it for an org carefully test any assumptions you take for granted. It's cool but it's also kind of quick'n'dirty in a lot of ways. Still better than anything else I'd use it over any megacorp messenger anytime but maybe don't switch your family yet.

But for using it you don't have to care - and there are great projects like https://github.com/spantaleev/matrix-docker-ansible-deploy that solve most of the problems out of the box and mobile clients and web clients and E2E crypto also works really well.

Re: This Year in Matrix

#54
post #50

> "Social Login via multiple SSO providers (MSC2858) - almost 50% of new registrations on the Matrix.org homeserver now use social login!" Interestingly the split of SSO usage is roughly 70% Google, 12% GitHub, 11% Apple, 6% Facebook and 1% GitLab. Congrats to the matrix team, really great work. However, I'm a little confused by the excitement around "social login". Why is it such a great thing? Aren't you just givin…

Welcome to federated decentralised service. Please log in with your facebook account.

This seems like a flippant insubstantial criticism. Facebook is one of many many options—including first-party username+password auth.

It's more like, "Welcome to our federated decentralized service. You can log in with your Facebook account if you want to." Which doesn't sound like a bad thing to me.

More choices for users is usually a good thing. If users' choices have bad consequences, that's not Matrix's fault. Though maybe Matrix should warn people that if 3rd-party cuts them off they'll be locked out of their Facebook account too—choices need to be informed!

Re: This Year in Matrix

#55

Earlier quoted context omitted.

I think it is helpful to have Element to test out the spec. I think the problem is that the "bar" for accepting features is too low for my taste. > While I’d have loved us to have infite manpower getting all the security features in from day 1, we had to bootstrap and we prioritised usable apps over optimising for a perfect spec. I get the decision. But it leaves a sour taste in my mouth that Matrix advertises itself…

There isn’t a marketing team for Matrix, unless you count me & the dev advocacy team. I actually have another (big) blog post called Metadata And Matrix which attempts to enumerate the privacy properties we have today to try to educate everyone, and how we’re improving it in future - will post it shortly. Agreed it could be better, but if you’re on your own server you are in a pretty good place.

I want to voice strong agreement with kevincox. I use an encrypted Matrix room daily and had no idea that reactions, relations (does that mean that edits are in cleartext??), etc are completely unencrypted. I've read a little bit of the spec (though clearly not very much), I've written a bot, I've patched the Element desktop client, I've even been working with a JSON export of my message history and didn't notice—perhaps I should have, but my point is that it's not obvious at all, and users SHOULD be proactively made aware of what's encrypted and what's not.

Sending things unencrypted that users have every reason to think are encrypted is extremely irresponsible. And I assumed, as I think is perfectly reasonable, that everything in an E2EE room is in fact end-to-end encrypted. I'm very disappointed to find out this way that it's not (and won't be for the foreseeable future), and I don't see any justification for failing to making users aware of that.

All that said, I love Matrix, will continue to use it every day, and am hugely rooting for the success of the project. Thanks for all your hard work on it!

Re: This Year in Matrix

#56
post #43

Earlier quoted context omitted.

Synapse is bloated and mostly good for very large organisations. Use conduit.rs or dendrite. I use conduit and it takes a couple of MB ram even while I’m in large rooms

Last time I checked critical features were not supported, like read receipts.

I use conduit to run multiple rooms, read receipts have been working just fine.

Re: This Year in Matrix

#57
post #43

Earlier quoted context omitted.

Last time I checked critical features were not supported, like read receipts.

I use conduit to run multiple rooms, read receipts have been working just fine.

I will give conduit another look if I ever try to setup a server again. I am quite active in the rust community and maybe I could also participate.

Re: This Year in Matrix

#58

Earlier quoted context omitted.

There isn’t a marketing team for Matrix, unless you count me & the dev advocacy team. I actually have another (big) blog post called Metadata And Matrix which attempts to enumerate the privacy properties we have today to try to educate everyone, and how we’re improving it in future - will post it shortly. Agreed it could be better, but if you’re on your own server you are in a pretty good place.

I want to voice strong agreement with kevincox. I use an encrypted Matrix room daily and had no idea that reactions, relations (does that mean that edits are in cleartext??), etc are completely unencrypted. I've read a little bit of the spec (though clearly not very much), I've written a bot, I've patched the Element desktop client, I've even been working with a JSON export of my message history and didn't notice—per…

Is it really that surprising that the act of reacting to a message with an emoji isn't E2EE, given the server needs to count the number of reactions? One could encrypt the emoji itself, but it doesn't seem like a massively sensitive datapoint in its own right. (That said, we will encrypt them eventually, but it's just not very high priority given the fact it doesn't practically feel very high impact, relative to all the other things we could be doing to improve Matrix).

Re: This Year in Matrix

#60
post #36

Any big progress on p2p? I mean more in the MSC side (multi-homed identity and stuff like that). Also, arewep2pyet.org pretty please.

Only the stuff mentioned in the blog post. I've written the content for arewep2pyet.com; need to just get it live.
Post reply on HN