There is an interesting development on the uTorrent site blog. While releasing µTorrent 3.0, the developers have released an interesting application called µChat. While it sounds like a generic application, there is one interesting aspect to it – the lack of servers.
Note: This is an article I wrote that was published elsewhere first. It has been republished here for archival purposes
Many chatrooms today do need servers. IRC, one of the oldest, yet popular methods of chatting to this day use servers in order to function. In fact, even numerous instant messaging requires a server to keep the service going. µChat appears to have done away with the servers and have gone completely decentralized. From the BitTorrent blog:
Magnet links are the biggest key to knocking down the first barrier. Virtually every piece of functionality in µChat uses magnet links in one way or another. For example, every room you join is a magnet link, and the peers you see in the rooms are fellow swarm peers. Except I pulled a fast one on µTorrent. You’re not actually downloading anything (and the peers don’t disconnect because we’ve coded them to be very optimistic about their future chances of getting the torrent file). That all worked well, except we still needed a way to find rooms, and we didn’t have a buddy list. Two obstacles left…
Next, I needed to find a central place for users to find chat rooms. Upon launch, µChat client joins a giant predetermined swarm. We’ve seen swarms in the wild that are absolutely massive, so it is a reliable way to get all the peers together to exchange information about available rooms. µChat clients actually inform each other about rooms.
Lastly, no chat function is complete without the ability to keep track and reconnect with your friends. So the buddy list is my favorite. In the real world no one knows all your friends. Just you. And when you introduce yourself, you can say whatever you want. I think that’s a pretty good setup, and so with µChat, your buddy list is known only to you, and you can call yourself whatever you’d like. When you become friends with someone else, you both add the same unique magnet link so that you can find each other later simply by joining that swarm. We also implemented a level of crypto to verify the friend. So instead of both your information persisting on a server, a friendship on µChat is simply a common swarm, your friend’s public key, and their original name (because sometimes a contact may have changed their chat name).
While this is interesting, I think adoption would be the next obstacle. Would people begin using this or would hardcore chatroom enthusiasts stick to the classics like IRC? It’s probably way too early to tell as it’s still in its early days. In addition, it’s not as though this application is entering an empty market. Simple research can turn up serverless chat clients like KouChat (from 2009), and RetroMessenger (from 2010) to name two examples. So, while not completely unique compared to other clients out there, it is interesting to know that there is still a push to ditch chatroom servers.
[Via /.]
Drew Wilson on Twitter: @icecube85 and Google+.