Now you may be thinking; “That chat program is still around?” or “What the heck is a eye-arr-see?”
Well let me tell you my friend. It stands for Internet Relay Chat and it’s been around for 34 years. It’s pretty much perfected at this point and quite easy to use if you have even the slightest technical knowledge.
So IRC servers are separate from one another with each server having it’s own admins. Each server you connect to has it’s own bots ran by individuals to messages and ask for things.
IRC servers work by sending slash commands much like discord does. To message another user you might type /msg coolboot2000 hello world! Piracy on IRC works by sending a bot a pm with the pack number you want.
“Where do I find servers and bots and pack numbers?” It’s as easy as using a xdcc search engine. http://sunxdcc.com/ has both a search and a list of networks. (DCC is Direct Client to Client meaning no files pass thru the server and XDCC is a version of DCC that allows large files to be transferred.)
“How do I connect?” You use an IRC client with SSL support. ~mIRC~ AdiIRC for windows and Hexchat with a patch for Linux. Once installed you can use the slash command /connect or use the clients GUI buttons to make a connection to the server.
“How do I make my own IRC client?” Follow the specifications here. https://en.wikipedia.org/wiki/List_of_Internet_Relay_Chat_commands There are a ton of pre-made IRC libraries for pretty much every programming language.
Best luck friends!
edit: updated 11-6-23
Server resources are not that high because of the protocol, but because it’s done in fucking Python, which is inherently inefficient.
Yes in any other language it will still need more resources than IRC, but not that amount as now, and I think the tradeoffs are worth it.
An other thing is the resource usage of the clients.
Well yes if nearly all of the clients are made in web garbage then it’s no surprise they’ll be resource hungry.
But an other point that worsens the situation is that currently synchronization is done in a way that practically requires clients to keep all your joined rooms in memory. Change is on the way, fortunately, though.
That’s why I’m glad Lemmy is written in Rust. I know that the instance admins are getting the most bang for their buck when they aren’t wasting CPU cycles on running an interpreter.
Sounds like a hard pass until these are resolved.