Post ATGbFSZKkZ2fP6ZJ5M by mattj@floss.social
(DIR) More posts by mattj@floss.social
(DIR) Post #ATGbFQmNP6Hpqyeh8a by j@mastodon.n41.lat
2022-12-29T06:32:41Z
0 likes, 0 repeats
Does anyone use a #XMPP server for your family/friends? I really love #XMPP, which I have been using personally and at work for years (including hosting the service via the amazing #Prosody), but I have assumed by now that having my family to use #XMPP instead of #Whatsapp is just a dream.
(DIR) Post #ATGbFRTymzAI2D3W6K by mattj@floss.social
2022-12-29T09:31:32Z
0 likes, 0 repeats
@jIt's not just a dream! I'm a developer, working on XMPP stuff for over a decade (I founded the Prosody project).Until just a couple of years ago, my family used WhatsApp to communicate with each other, despite having accounts on a Prosody I run.I grew determined to fix the reasons for this, and that's how @snikket_im was born. Today I have over 10 family members actively using it (ages 5-85) for messaging and calls.I've now heard similar stories from others.(cont...)
(DIR) Post #ATGbFS3mdrnxpFo6uO by j@mastodon.n41.lat
2022-12-29T09:35:39Z
0 likes, 0 repeats
@mattj @snikket_im Thanks for telling me your story. And Hats off to you! #Prosody is such an excellent piece of software. Can I ask how you decided to use #Lua (which is a language I love, but unfortunately has never gained the traction it deserves).
(DIR) Post #ATGbFSZKkZ2fP6ZJ5M by mattj@floss.social
2022-12-29T10:44:34Z
0 likes, 1 repeats
@jAlso, both #Lua and #XMPP are very widely used! You would be surprised!XMPP is right there in stuff people use, like Zoom, and the Nintendo Switch: https://xmpp.org/uses/instant-messaging/Lua is, similarly, quietly running in loads of apps: https://en.m.wikipedia.org/wiki/List_of_applications_using_LuaThere are various definitions of "success", but it's fair to say that both have been pretty successful technologies in their way.Finally, both are actively developed and continuing to evolve, so who knows what the future has in store? π
(DIR) Post #ATGbFSy9GItKe4B7lQ by Phaserune@boosterfive.com
2022-12-29T14:02:01Z
0 likes, 0 repeats
@mattj @j With how streamline Prosody already is, do we know if there would be any performance or efficiency improvements if it was redone in C or C++?
(DIR) Post #ATGbFTKptx2VmQnF7w by mattj@floss.social
2022-12-29T09:34:08Z
0 likes, 0 repeats
@jIt's not magic. They still have WhatsApp installed, and use it for communicating with most people outside the family. But we have to start somewhere πSome background on the project is here: https://snikket.org/blog/products-vs-protocols/ and here: https://snikket.org/about/goals/Hopefully this inspires you to persist with the dream. You're not alone π
(DIR) Post #ATGbFTtDq6XrV4shiy by mattj@floss.social
2022-12-29T15:30:54Z
1 likes, 0 repeats
@Phaserune Excellent question!Naturally we regularly benchmark Prosody in various ways. One bottleneck that often shows up has been stanza serialization. We've optimized it significantly several times over the years.Once, we set out to rewrite it in C assuming that would be an instant win. However, after some amount of effort, we gave up. We were unable to significantly beat the pure Lua version! Given the complexity of the C code compared to the Lua code, we decided not to merge it π@j
(DIR) Post #ATGbFUbXBLzTiVc5nE by mattj@floss.social
2022-12-29T15:36:12Z
1 likes, 0 repeats
@PhaseruneMore recently, we've been (thanks to @jssfr !) working on similar experiments with rewriting some parts of Prosody in Rust. This time our main driver is reducing memory usage, or rather, making it more predictable.But yet again, it's proving extremely difficult to beat Lua here too.The developers behind Lua are smart folk, and the language is compact and well designed. It's not the best language for everything, but I have to say we've never regretted choosing it for Prosody.@j