Parley: Federated, decentralised chat that speaks plain IRC
Thread
Unofficial Hacker News client; not affiliated with Y Combinator.
Parley: Federated, decentralised chat that speaks plain IRC
Unofficial Hacker News client; not affiliated with Y Combinator.
Conlectus · · focus · HN ↗
In this case, this is basically a poorly specified implementation of half of XMPP. Of course, I half expect the LLM would have mentioned that at some point, but the repository does not.
dale_glass · · focus · HN ↗
I don't know how it just happens that sending text messages to people can manage to result in specs that are painful to implement.
monkeywork · · focus · HN ↗
Can you provide more details here? I've never seen an issue with the protocol at all, more issues with feature difference between servers depending on what they have decided to implement or not.
dale_glass · · focus · HN ↗
<a href="https://news.ycombinator.com/item?id=9772968">https://news.ycombinator.com/item?id=9772968
<a href="https://news.ycombinator.com/item?id=31133082">https://news.ycombinator.com/item?id=31133082 (article and discussion)
But TL;DR:
* It's hard to even parse, XMPP uses an uninterrupted XML stream. * The contents are often baroque and complex * Standards are a mess, and stuff that should be in core isn't * Data loss is possible * Protocol wasn't made for mobile devices * Multiple devices are terribly supported * Data loss is possible
From my attempts long ago, and other testimonials, writing an XMPP client is a full time job of solving weird problems that shouldn't exist in something better designed.
fishgoesblub · · focus · HN ↗
p2detar · · focus · HN ↗
I can't take this write-up seriously if it starts like that. I still read the whole thing though and I couldn't find any solid argument as to why someone would prefer XML to JSON for XMPP.
> This is especially true in browser environments, where XMPP streams run over WebSockets, which naturally frames the XMPP protocol. That’s why you are never actually working with XML trees consuming large chunks of memory. Modern implementations like XMPP.js go further and use LTX—a lightweight parser built specifically for XMPP’s streaming model—rather than the browser’s DOM parser. The result: developers work with JSON-like objects anyway. The wire format becomes invisible to your application code.
That to me, is an argument for using JSON, not XML. XML is strong when you have elements referencing other elements in your document structure or DOCTYPE for grammar defs. I might be missing something but I don't get how streaming XML is to be preferred over JSON for XMPP.
Dylan16807 · · focus · HN ↗
>> XML remains the best format for representing trees—deep hierarchies of nested data. JSON handles flatter structures well, but good messaging protocols are extensible: extensions can be embedded at different levels and composed together, like Lego bricks. That’s where XML shines.
Anything reasonable you'd be doing with messaging protocol is pretty flat.
GoblinSlayer · · focus · HN ↗