Comment by rilita
11 years ago
IRC was essentially created 25 years ago. In all that time we have still to make anything significantly better.
Why does a system with the following features not exist:
1. Requires all implementing servers and clients to support the full protocol
2. Allows users to communicate to users on other servers ( not just users within a server )
3. Has free client open source reference implementations for native use ( C or the like ) and some web language ( Python & Dynamic JS )
3b. Has a free open source server reference implementation
4. Logging on the server indefinitely
5. Is always encrypted ( end to end via public keys, so that clear data never reaches the servers )
6. Offline messaging
7. Large file transfer with clean re-connection and continuation ( if neither party has a publicly accessible port, payment/membership to the server would be required to facilitate the transfer... )
8. Random chat
9. Group chat
10. Utf8 for full multi-lingual use
11. Index of users for finding other users
If someone would just create such a thing it would put an end to all the stupid shifting from one system to another from year to year. I'm getting tired of switching systems and reverse engineering shitty protocols in order to continue doing the same thing with less features.
Did you just describe email? There are a couple of things that make email unattractive for chatting: 1) latency (seconds or minutes instead of sub-seconds), and 2) user habits of treating emails as something that can be responded later instead of NOW.
I grew up with IRC, but I now prefer emails to chat. It makes you think a bit more before hitting "send", and so the signal/noise ratio is higher with emails.
Email fails in the following ways:
1. Email client have vastly different feature sets and capabilities. Most notably, the HTML support is very different from one browser to another.
5. The vast majority of email systems do not even support encryption of the message itself
7. Large file transfer via email is horrible and extremely limited
8. No random chat support
9. No group chat ( cc doesn't count as it lacks history of the group chat )
10. Have you ever received emails seemingly full of gibberish? Utf8 not supported properly in majority of implementations. ( which imo requires getting and using a font that supports the codepoints )
11. No user index ( saying that you could have an address book also doesn't count; and that is a seperate thing which also there is no one spec that is used by all people using email )
12. No real time messaging support. Inherent in the discussion is that chat software is insant, not based on server polling.
> Email client have vastly different feature sets and capabilities. Most notably, the HTML support is very different from one browser to another.
That's hardly an email issue, that's a client issue. The mail protocol doesn't care much about the content.
Also, you will find some people averse to using HTML email.
> The vast majority of email systems do not even support encryption of the message itself
Again, that's not part of the email protocol itself, and as far as email encryption goes PGP is pretty much the standard. The real issue here is whether to use the sucky PGP/inline or the proper PGP/mime
> No random chat support
You mean randomly send an email to someone, without being invited ? That's pretty much what spam is.
> No group chat ( cc doesn't count as it lacks history of the group chat )
I don't see why cc wouldn't count, when combined with the various In-Reply-To: and Refenrences: headers, you can build a very solid group chat history.
> Have you ever received emails seemingly full of gibberish? Utf8 not supported properly in majority of implementations. ( which imo requires getting and using a font that supports the codepoints )
Again, a client problem, but I'll agree that clients can lie on the actual encoding that is used in emails. Mandating UTF-8 would be such a heaven.
> No user index ( saying that you could have an address book also doesn't count; and that is a seperate thing which also there is no one spec that is used by all people using email )
I don't understand. Why couldn't a server index your emails and extract your contacts ?
> No real time messaging support.
Theoretically, you can (and should) run an MTA on your machine; you'd then receive messages in real time
> server polling
Polling sucks, don't do it. If you don't have an MTA on your machine, at least use IMAP IDLE. Disclaimer: I wrote this (https://github.com/rakoo/idlewatch) to automatically sync all my mails when there's something new.