IRC in 2024!?

124»

Comments

  • irssi and terminal?! Neah! An IRC client can run low, much lower than we even think in modern computing environments, even in BIOS UEFI: https://www.tomshardware.com/software/someone-made-a-functioning-irc-client-that-runs-entirely-inside-the-motherboards-uefi

    Thanked by (2)Not_Oles Mumbly

    How are you... online?

  • Not_OlesNot_Oles Hosting ProviderContent Writer

    "Google has found IRC to be a huge boon in incident response. IRC is very reliable and can be used as a log of communications about this event, and such a record is invaluable in keeping detailed state changes in mind. We’ve also written bots that log incident-related traffic (which is helpful for postmortem analysis), and other bots that log events such as alerts to the channel. IRC is also a convenient medium over which geographically distributed teams can coordinate."

       -- https://sre.google/sre-book/managing-incidents/

    I hope everyone gets the servers they want!

  • Not sure what to do with this.
    It seems like just a random messed up snippet that happens to mention IRC for some reason.

  • One small, random piece of IRC folklore.

    Basshunter would hang out on his QuakeNet IRC channel, as many Finns did at that time, playing WoW and occasionally creating some silly music. There was this IRC bot, or so he thought, named Anna, residing in his channel, which he consistently ignored. Until one day he realized that Anna wasn't a bot but rather his friend's girlfriend.
    This is the story behind the song.

    Original video with translations:

    (I am getting "This video contains content from WMG, who has blocked it in your country on copyright grounds")

    Original video without translations:

    (hehe, all those nostalgic comments under the video)

    Backup (non original video, just song with some weird translations)

  • edited April 12

    @Mumbly said:
    One small, random piece of IRC folklore.

    Basshunter would hang out on his QuakeNet IRC channel, as many Finns did at that time, playing WoW and occasionally creating some silly music.

    Just have to point out that Basshunter is Swedish, not Finnish.
    And man, I hated that song. In Swedish, the word 'bot' is pronounced the same as 'båt', Swedish for boat. So everyone here was singing "I know a boat". The fact that 'channel' can mean both irc-channel or a body of water did not make it any better. Trying to explain to people that the song was actually about irc and a bot and had nothing to do with boats did not exactly make you popular at parties. :lol:

    Thanked by (2)Mumbly skorous
  • edited April 12

    Hehe, yeah. My bad about Finnish/Swedish... The song was released 18 years ago, and my memory isn't what it used to be :)
    He released also an English version called "Now You're Gone" based on Boten Anna one year later, but since it's not IRC related, there's nothing to talk about.
    DotA on the other hand was a real hit :)

  • @Not_Oles many sources have disappeared over time but here is some interesting reading that delve into historical details, tracing the development of various things from their early years up to 2005.
    Some things that appear completely illogical from today's perspective on social networks made complete sense back then.

    https://ishii.de/kei/codegovernance/Ishii2005-CodeGovernance.pdf

    Thanked by (1)Not_Oles
  • Not_OlesNot_Oles Hosting ProviderContent Writer

    @Mumbly Thanks for the Code Governance link! Fascinating to read! The link goes to a PhD thesis written by Kei Ishi in 2005:

    Here below are a few quotes from Dr. Ishi's analysis of The Great Split, pages 163-164 of the pdf linked by @Mumbly:

    Among the server administrators, there were two basic opinions about who should be generally allowed to the network: Open server vs. closed server.

    Those favoring open server argued that any server should be allowed without regard to any formal process or criteria. They wanted to uphold the fundamental principle of openness. In order to serve this openness principle, the open server proponents also suggested to change the topology of the network from a tree to a star topology: Every server should connect to one central server.

    In contrast, the closed server fraction argued with security and IRC net stability. If anyone was allowed as server, it would be to easy to gain the power of an IRC admin, and thus at the same time IRC operator status, ultimately giving all users the same power in the IRC network.

    The open server proponents set up a central server at "eris.berkeley.edu", and allowed any other host to connect to it as server . This network was named appropriately as "Anarchynet" or "Anet". Those favoring the close server concept renamed their network to "EFnet" for "eris free network".

    After it became clear the the open/closed server conflict could not be resolved through debate, this conflict was "solved" by proof of concept: each side set up the network they wanted, and let the undecided server admins as well as the users decide. In this case, the EFnet survived and thrives today, while the Anet left no traces other than the conflict.


    From page 167:

    . . . [T]he main hypothesis of this work that the analysis of the source code of the IRC reveals distinct «code» features, and that the «code» constitutes a regulation system similar to, but distinct from the legal system.

    From page 153, the IRC server's configuration line to Quarantine the eris Anet server is a canonical example of "code governance."

    Algorithm 16 ”Quarantine” configuration line (Q-line)
    # Quarantine lines. These lines disallow connections to the
    # specified server and drops the link to anyone connecting to them.
    Q::they have a server open server:eris.berkeley.edu
    Source: [irc2.5.1.bu.08/doc/example.conf:109-111].
    

    There exists a symmetry in the English language uses of the word "code" between computer code as rules for governance, as in the linked thesis, and the set of rules for social governance which literally is also called "code," as in "United States Code."


    Do Usenet's 1994 Eternal September "increase in low-quality posts" and The Great IRC Split of 1996 mark the beginning of and show the reason for the "Walled Gardens" about which so many of us complain nowadays?


    Wikipedia says, "Initially, most IRC servers formed a single IRC network, to which new servers could join without restriction, but this was soon abused by people who set up servers to sabotage other users, channels, or servers. In August 1990, the server eris.berkeley.edu remained the only one to allow anyone to connect to the servers." Was "The Great Split" the internet's initial lesson about "Why We Can't Have Nice Things?"


    Thanks again @Mumbly!

    I hope everyone gets the servers they want!

  • rootroot OG
    edited April 15

    @Not_Oles said:
    [...] Was "The Great Split" the internet's initial lesson about "Why We Can't Have Nice Things?"

    Yes. I also believe it was the first lesson about how we can't have nice things.

    Humans are creatures of deep emotions aspiring to infinity. When conflicts and animosities come into play, rationality goes out the window to not accept defeat or undermining or loss, while emotions take control. This is why IRC attracted DDoS in the past and providers suffered, as people were fighting one another escalating things over petty talk.

    As a personal note: sometimes I like to think of ourselves as monkeys in banana trees, fighting over bananas even though there are plenty bananas everywhere in the forest. As we get more technologically advanced weapons, we might burn down the whole forest, just to prove we have the rights and arguments to control bananas. Proof: more than 13.000 nukes available.

    Thanked by (1)Not_Oles

    How are you... online?

  • @Not_Oles said: In August 1990, the server eris.berkeley.edu remained the only one to allow anyone to connect to the servers." Was "The Great Split" the internet's initial lesson about "Why We Can't Have Nice Things?"

    Small edit.
    Don't mix the early separation of chaotic Anet and Eris-Free Network in 1990 (which was essentially just cleaning up a mess) with the later event known as "The Great Split", which occurred in 1996, resulting in EFnet and IRCnet becoming two separate networks.

    Thanked by (1)Not_Oles
  • @Mumbly said: "The Great Split"

    Had to split my heart in two back then :smiley:

    Stayed with some old friends on IRCnet for a few years before moving completely to EFnet.

    Thanked by (2)Mumbly Not_Oles

    For domain registrations, create an account at Dynadot (ref) and spend $9.99 within 48 hours to receive $5 DynaDollars!
    Looking for cost-effective Managed/Anycast/DDoS-Protected/Geo DNS Services? Try ClouDNS (aff).

  • edited April 15

    @TheDP said: Stayed with some old friends on IRCnet for a few years before moving completely to EFnet.

    Yeah, and I was kind of an IRCnet homer, which was somehow logical considering the geographical orientation of both networks and how popular IRC became in my little country around 2000. Every city, every village, every forum, everything... had its own IRC channel populated with the general population, not just some tech junkies.
    Those channels had from 100 to 500 people, with peaks reaching around 700.
    You know how it was... Having op status on some highly populated channel meant demigod status (god status was reserved for server opers :-)
    I never dated as much as in 2000 - 2005. :) On one side, all the struggle to fight off those channel t/o teams, and on the other, all those IRC parties, meetings, etc., outside of the internet.

    Thanked by (1)Not_Oles
  • @Mumbly said: Having op status on some highly populated channel meant demigod status (god status was reserved for server opers :-)

    Tell me about it.

    Mass DMs/PMs too :smiley:

    Thanked by (2)Mumbly Not_Oles

    For domain registrations, create an account at Dynadot (ref) and spend $9.99 within 48 hours to receive $5 DynaDollars!
    Looking for cost-effective Managed/Anycast/DDoS-Protected/Geo DNS Services? Try ClouDNS (aff).

  • Not_OlesNot_Oles Hosting ProviderContent Writer

    Trying ii IRC client from suckless.org.

    Tutorial at https://www.reddit.com/r/vim/comments/48t7ws/vim_ii_irc_client_xpost_runixporn/

    Using the ii installed at ctrl-c.club, from which Libera.chat seems to disallow certain connections. So, instead of Libera, reverting to Freenode for this trial.

    About ii:

    ii creates in and out directories in ~/irc/$server_name. One uses command line tools like tail and echo to read and write messages. One reads from the out file and writes to the in file. What could be simpler . . . or perhaps more masochistic? :)

    A few snippets:

    tom@ctrl-c:~$ ii -s irc.freenode.net
    NICK tom
    USER tom localhost irc.freenode.net :tom
    
    1713657107 :*.freenode.net NOTICE * :*** Looking up your ident...
    1713657107 :*.freenode.net NOTICE * :*** Looking up your hostname...
    1713657107 PING :e\bardGUTZ
    1713657107 :*.freenode.net NOTICE tom :*** Found your hostname (ctrl-c.club)
    1713657108 :*.freenode.net NOTICE tom :*** Could not find your ident, using ~tom instead.
    1713657108 :*.freenode.net 001 tom :Welcome to the freenode IRC Network [email protected]
    1713657108 :*.freenode.net 002 tom :Your host is *.freenode.net, running version InspIRCd-3
    1713657108 :*.freenode.net 003 tom :This server was created 05:19:49 Jan 21 2024
      [ . . . ]
    1713657108 :*.freenode.net 251 tom :There are 19 users and 5644 invisible on 10 servers
    1713657108 :*.freenode.net 252 tom 9 :operator(s) online
    1713657108 :*.freenode.net 253 tom 11 :unknown connections
    1713657108 :*.freenode.net 254 tom 10458 :channels formed
    1713657108 :*.freenode.net 255 tom :I have 1734 clients and 1 servers
    1713657108 :*.freenode.net 265 tom :Current local users: 1734  Max: 1949
    1713657108 :*.freenode.net 266 tom :Current global users: 5663  Max: 7589
    1713657108 :*.freenode.net 375 tom :*.freenode.net message of the day
    1713657108 :*.freenode.net 372 tom :  Hello, World!
    1713657108 :*.freenode.net 372 tom : 
    1713657108 :*.freenode.net 372 tom :  Welcome to the
    1713657108 :*.freenode.net 372 tom :          __                               _
    1713657108 :*.freenode.net 372 tom :         / _|_ __ ___  ___ _ __   ___   __| | ___
    1713657108 :*.freenode.net 372 tom :        | |_| '__/ _ \/ _ \ '_ \ / _ \ / _` |/ _ \
    1713657108 :*.freenode.net 372 tom :        |  _| | |  __/  __/ | | | (_) | (_| |  __/
    1713657108 :*.freenode.net 372 tom :        |_| |_|  \___|\___|_| |_|\___/ \__,_|\___|
    1713657108 :*.freenode.net 372 tom :                                   AUTONOMOUS ZONE
    1713657108 :*.freenode.net 372 tom : 
    

    In a second terminal window:

    tom@ctrl-c:~/irc/irc.freenode.net$ ls
    global  harambe  in  out  tom
    tom@ctrl-c:~/irc/irc.freenode.net$ echo "/JOIN #freenode" > in
    tom@ctrl-c:~/irc/irc.freenode.net$ 
    

    Back to the first terminal window:

    1713657714 :[email protected] JOIN :#freenode
    1713657714 :*.freenode.net 332 tom #freenode :Welcome to #Freenode | www.freenode.net | For IRC or services help, please /join #help | Join #freenode-radio to listen to our very own radio | for trivia /join #trivia | For idle rpg /join #irpg | Channel Rules: https://wiki.freenode.net/view/Freenode | Winner for March is HurricaneTornado!
    1713657714 :*.freenode.net 333 tom #freenode [email protected] :1711975239
      [ . . . ]
    1713657714 :*.freenode.net 366 tom #freenode :End of /NAMES list.
    1713657715 :[email protected] NOTICE tom :[#freenode] Welcome to #freenode.
    1713657715 :[email protected] NOTICE tom :[#freenode] Please read #freenode channel rules: https://wiki.freenode.net/view/Freenode
    1713657715 :[email protected] NOTICE tom :[#freenode] For general chat please join #chat | If you joined #freenode from a web link make sure you are in the right channel
    1713657727 :[email protected] JOIN :#freenode
    1713657750 :[email protected] JOIN :#freenode
    1713657834 PING :*.freenode.net
    1713657954 PING :*.freenode.net
    1713658016 :hussam!~hussam@freenode/user/hussam QUIT :Ping timeout: 120 seconds
    1713658065 :[email protected] QUIT :Quit: Page closed
    1713658070 :[email protected] QUIT :Quit: Page closed
    1713658074 PING :*.freenode.net
    1713658079 :[email protected] JOIN :#freenode
    1713658097 :hussam!~hussam@freenode/user/hussam JOIN :#freenode
    1713658106 :[email protected] QUIT :Quit: Page closed
    1713658194 PING :*.freenode.net
    

    I hope everyone gets the servers they want!

  • Not_OlesNot_Oles Hosting ProviderContent Writer

    I hope everyone gets the servers they want!

  • Not_OlesNot_Oles Hosting ProviderContent Writer

    This is the main function from ii.c. Is anyone here good at C and interested in this ii code? :)

       795  int
       796  main(int argc, char *argv[])
       797  {
       798          struct passwd *spw;
       799          const char *key = NULL, *fullname = NULL, *host = "";
       800          const char *uds = NULL, *service = "6667";
       801          char prefix[PATH_MAX];
       802          int ircfd, r;
       803  
       804          /* use nickname and home dir of user by default */
       805          if (!(spw = getpwuid(getuid())))
       806                  die("%s: getpwuid: %s\n", argv0, strerror(errno));
       807  
       808          strlcpy(nick, spw->pw_name, sizeof(nick));
       809          snprintf(prefix, sizeof(prefix), "%s/irc", spw->pw_dir);
       810  
       811          ARGBEGIN {
       812          case 'f':
       813                  fullname = EARGF(usage());
       814                  break;
       815          case 'i':
       816                  strlcpy(prefix, EARGF(usage()), sizeof(prefix));
       817                  break;
       818          case 'k':
       819                  key = getenv(EARGF(usage()));
       820                  break;
       821          case 'n':
       822                  strlcpy(nick, EARGF(usage()), sizeof(nick));
       823                  break;
       824          case 'p':
       825                  service = EARGF(usage());
       826                  break;
       827          case 's':
       828                  host = EARGF(usage());
       829                  break;
       830          case 'u':
       831                  uds = EARGF(usage());
       832                  break;
       833          default:
       834                  usage();
       835                  break;
       836          } ARGEND
       837  
       838          if (!*host)
       839                  usage();
       840  
       841          if (uds)
       842                  ircfd = udsopen(uds);
       843          else
       844                  ircfd = tcpopen(host, service);
       845  
       846  #ifdef __OpenBSD__
       847          /* OpenBSD pledge(2) support */
       848          if (pledge("stdio rpath wpath cpath dpath", NULL) == -1)
       849                  die("%s: pledge: %s\n", argv0, strerror(errno));
       850  #endif
       851  
       852          r = snprintf(ircpath, sizeof(ircpath), "%s/%s", prefix, host);
       853          if (r < 0 || (size_t)r >= sizeof(ircpath))
       854                  die("%s: path to irc directory too long\n", argv0);
       855          create_dirtree(ircpath);
       856  
       857          channelmaster = channel_add(""); /* master channel */
       858          if (key)
       859                  loginkey(ircfd, key);
       860          loginuser(ircfd, host, fullname && *fullname ? fullname : nick);
       861          setup();
       862          run(ircfd, host);
       863          cleanup();
       864  
       865          return 0;
       866  }
    

    I hope everyone gets the servers they want!

Sign In or Register to comment.