The last time I regularly used IRC was sometime in college to keep up with the underground classic arcade and console game piracy/preservation community.
I didn’t pay much attention to IRC itself – it was just an interesting way to communicate with a weird subculture I was on the periphery of.
Now that I’m looking at IRC with fresh eyes as a technologist and conscientious objector of modern social media, all the wondrous beauty, potential, incomprehensibility and flaws seem all the more apparent.
Unlike proprietary modern tightly coupled solutions, IRC is a protocol with an RFC from 25 years ago. So it runs everywhere, there’s clients for every platform, servers galore, and whole ecosystem of related software.
There’s a certain durability and comfort to these kinds of standards running on commodity hardware with an open source operating system. You can be pretty sure if you set some unix server to run IRC, you’ll be able to keep using IRC in some form years from now.
I love boring software now in a way I never thought I would.
Unlike proprietary modern tightly coupled solutions, IRC is an old school protocol where everything is an incomprehensible nightmare of disparate configuration files, arcane commands, usability nightmares, security flaws, and duct tape and chewing gum to keep it all together.
It’s great though. Really. Really? Really. Maybe.
Ignoring the general incomprehensibility of IRC and the vocabulary that is required for a user, setting up a private IRC server actually isn’t that bad as far as services go. At its core, typing in a box to send a message is more or less something that makes intuitive sense once you get people there.
(That was one of the only things that people could figure out how to do on Orkut and social networks.)
Some of the challenges with IRC –
- authentication and identity – IRC has always had a weird hodgepodge of “services” built on top to try and handle identity to fill the gaps but it feels particularly awkward now in an age of single-sign on services
- persistence – the ephemeral nature of IRC is kind of wonderful, but makes it hard to keep up with things, and the weird world of bouncers and loggers to fill in are not super easy to comprehend or deal with it
- mobile – native mobile clients for IRC exist but the protocol (and the lack of push notifications easily available) make using IRC as a modern messaging platform on the dominant platforms challenging to normal human beings who aren’t in front of a keyboard all day
Don’t Let That Stop You
Never one to let usability, security, or sanity stop me in technical endeavors for antisocial software, I now have a setup that includes:
- IRC daemon – ngIRCd set up to only allow connections from my server
- preconfigured web client that connects to it for easy access – Lounge
- logger – LogBot
- bouncer to enable persistent connection for myself and BFFs – znc
- Mac client – LimeChat
- iOS client – Mutter with push notifications
- no friends actually using it
I declare that a huge success, personally.
Or don’t. I’ll probably just ignore whatever happens on there anyway, and regret that I just made a thing that allows anyone to anonymously send me push notifications.
Ppersistence/login working seamlessly on a web version without a complicated bouncer setup would be nice.
Figuring out a way to integrate images/image hosting.
IRC bouncers are great but the multiple level of authentication / logins / etc needed to get all this to work is pretty daunting – something that handled all that seamlessly would be interesting.
Bots. There should probably an adammathebooks bot on the channel at all times, and really a host menagerie of bot pals since the internet for me has always fundamentally been about me talking to myself in various ways anyway.
At what point do I just give up and decide we all should just use the same UNIX server to talk to each other.
I feel like I’m inching ever and ever closer to just throwing everything out the window and trying to find a way to live in hacked up Raspberry Pi’s.
· · ·
If you enjoyed this post, please join my mailing list