- cross-posted to:
- technology@lemmy.world
- cross-posted to:
- technology@lemmy.world
Still a bit alpha, but looks promising. Several features seem to be waiting for atproto implementation.
Still a bit alpha, but looks promising. Several features seem to be waiting for atproto implementation.
Is matrix too difficult to develop or contribute to? Why do new chat apps keep popping up that do the same?
I haven’t tried it, but seems to be difficult enough that practically everyone uses the SDK. And also, before the SDK existed, practically nobody was successful in doing it.
The hardest bit is encryption, you can get a basic app or bot running trivially from scratch if you don’t care about that. People successfully wrote matrix apps for years before the Rust SDK existed, and there are plenty of other bits of the matrix ecosystem that don’t use it (mautrix/Beeper is mostly written in go!). The Rust SDK is nice to use and give a bunch of bonus features on top, so that’s why it’s popular.
I’m not a developer, so I don’t know the actual effort involves, but it seems to me like making a new one is like reinventing the wheel. Matrix probably has solved many problems that this new things still has to run into.
What’s an SDK? I looked it up but can’t really understand the techno lingo on wikipedia. It’s a “kit” (whatever that means) that allows developing a platform specific app? Matrix isn’t another OS like Linux, so I’m confused.
https://github.com/matrix-org/matrix-rust-sdk
SDK is a library layer that hides the complexity of a thing inside an easier facade. It’s exactly the right thing to do when the thing is a complicated one, but it also hints towards … you know, the thing being complicated.
We haven’t quite figured out whether a chat network needs to be as complicated as Matrix is under the hood. Could be that it does: federation, E2EE and the overall design of Matrix (it being a log propagator instead of a more traditional message passing system) increase the technical challenge by a lot, but then again, none of the three are essential (although undeniably useful in certain cases) for a chat network.