3 ms·
It's such a terrible protocol and a pain in the ass all the time. Sadly, there is no other wide-spread protocol with good multi-user chat clients. XMPP might b
by lucian1900 14y ago
It's such a terrible protocol and a pain in the ass all the time.
Sadly, there is no other wide-spread protocol with good multi-user chat clients. XMPP might be the best replacement, but there are almost no dedicated multi-user chat clients and irc networks (like freenode) would have to join the two protocols during the transition.
- kybernetyk 14y agoHe, for me it's the other way: I like IRC because it's very simplistic. But when I have to do something with XMPP on the protocol level I just want to stab my eyes out because it's a bloated pile of XML. Maybe it depends on tooling. If you have a language that is married with XML - like Java - you probably will have no problems with XMPP. But if you're doing stuff with C you will love the simple structure of IRC.
- lucian1900 14y agoIRC is extremely idiosyncratic, though. XMPP is much more logical and consistent. Any decent language can deal with trees, although XML is sometimes a little annoying. The potential problem with XML is the overhead. I'm not sure that's been an issue so far, though.
- lmm 14y agoI've heard it argued that the main reason Wave died was all the XML overhead from being built on XMPP.
- lucian1900 14y agoI doubt that's it. More likely Wave died because they somehow neglected to actually release it. By the time they closed it down, very few people had gotten invites.
- lmm 14y agoMaybe they were stingy with the invites because they couldn't scale up the servers?
- shabble 14y agoXML is a gleaming beacon of purity and grace compared to the CTCP spec[1]. Something that should be relatively simple: "allow very basic RPC using inband signals." The mess of incoherent and mutually contradictory statements about how quoting these messages should happen makes it likely that anyone writing a bot either uses an existing library or still wakes up occasionally in teh middle of the night in a cold sweat. [1] http://www.irchelp.org/irchelp/rfc/ctcpspec.html http://www.irchelp.org/irchelp/rfc/ctcpspec.html
- chipsy 14y agoOne protocol I've skimmed over is http://about.psyc.eu/ http://about.psyc.eu/ which claims to bridge IRC and XMPP, among numerous other things. The claimed scope is so broad, though, that it's hard even to figure out a good starting point for further investigation.
- laumars 14y agoHaving written an IRC client and several bots, I actually like the simplicity of the protocol.
- jlgreco 14y agoYeah, the simplicity is a godsend. Lets you pump out a minimally viable client/bot in minutes with whatever language you like, without having to mess around with an existing framework or library.
- sigil 14y agoI'll second that. For example, here's a bot that logs every channel you invite it to...in 50 lines of shell. How big would the equivalent XMPP bot be (libraries included)? https://github.com/acg/logbot/blob/master/bin/logbot.sh https://github.com/acg/logbot/blob/master/bin/logbot.sh
- jlgreco 14y ago50 lines of clean comprehensible shell code even! Written with the traditional code-golfed style of shell scripting I bet you could half that without even trying. ;)
- bonch 14y agoHaving also written a client, I have to disagree that the protocol is simple. The lack of standardized text encoding, the 512 message limit, the desync issue of RPL_NAMREPLY, the hundreds of differences between each network's server behavior, and more make it quite a pain to write a competitive client. It's so bad that the CAP/ACK was protocol was drafted to query the behavior of a server in a standardized way, in addition to RPL_ISUPPORT (which uses the 005 numeric in a way that conflicts with the protocol standard). That's another problem: all the subprotocols grafted onto IRC, especially CTCP which is such a mess that most clients don't implement it completely. Then there's mIRC colors which has parsing ambiguities. Also, the multiple passive DCC request formats. It's a complete mess, and there desperately needs to be a standards body of some sort at the very least collecting all this info in one place for client developers.
- ChiperSoft 14y agoWhat is so terrible about it? IRC was one if the first protocols I ever implemented, I found it a joy to work with, and surprisingly flexible.