> This makes me think that the federated network must by necessity exist in a fragile and tender state while Matrix is young, and need to be tended to with attention and care. The current stewards of the protocol don’t seem to be giving it that, growing features (even if good and competently designed ones) while treating the surroundings with something of a “they will come” approach. (To put it uncharitably: Look, there are now a whole two comprehensive server implementations, and the second one you could even afford a server for! Yeah, the Gnome people gave up on independently implementing a secure client, but surely an Electron one should be enough?..)
It's one thing to be uncharitable; it's another thing to be spouting stuff which is demonstrably false.
There are three usable server implementations participating in the network; synapse, dendrite and conduit (four, if you include construct). Synapse runs fine on a VPS with 2-4GB of RAM for almost all personal usage patterns, so snark about "servers you can afford" is BS. In addition to that we reduced its RAM footprint by 2-3x over the last few months (https://twitter.com/matrixdotorg/status/1434912387933560837).
The GNOME Fractal team hasn't given up at all - they just chose to rewrite the app for Gtk4, shifted to using matrix-rust-sdk in order to focus on the GUI layer and have been busier than ever. Meanwhile, there are tens of other implementations - a non-exhaustive list of the clients and SDKs today implementing E2EE is:
* Separate core team implementations:
* matrix-js-sdk (TypeScript)
* Element Web
* SchildiChat
* Cinny
* Thunderbird
* matrix-ios-sdk (ObjC)
* Element iOS
* Nio
* Seaglass (on hold)
* matrix-android-sdk2 (Kotlin)
* Element Android
* SchildiChat Android
* matrix-android-sdk (Java), obsolete
* Riot Android
* matrix-rust-sdk (Rust)
* “Corroded” Element Android
* Weechat-rs
* Fractal
* Daydream (archived)
* Hydrogen SDK (JavaScript)
* Hydrogen
* Independent community implementations:
* famedly-sdk (Dart)
* FluffyChat (Web, Android, iOS)
* matrix-nio (Python)
* pantalaimon
* weechat-matrix
* mirage
* mtxclient (C++)
* nheko
* mautrix (go)
* gomuks
* syphon (Dart)
* chatty (C)
* matrix-bot-sdk (TypeScript)
* TeamSpeak 5 (proprietary)
* purple-matrix (C) (incomplete)
> I’ve spent a very limited time studying the situation
This is clear.