Group Chat

From Bibliotheca Anonoma
Jump to: navigation, search

The Bibliotheca Anonoma works together, shares ideas, and socializes through the magic of group chat.

Before Group Chat

Before the introduction of a reliable group chat system with daily attendees, the organization was simply a one man show. Potential contributors would have to talk over email, and as the founder I did not often respond fast and neither did the other party. Most of all, there was not much socialization, with the effect of less organizational cohesion and camaraderie.

Chat Systems

Our organization uses a rather complex combination of group chat systems designed to leverage the benefits and reduce the downsides of each.

The organization uses both IRC and Discord at the same time. Messages are transferred between the systems with the use of a bridge: Itabashi.

IRC (2014-present)

The Bibliotheca Anonoma uses Rizon IRC due to its long history with 4chan and related channels. It allows easy cross communication with neighbor channels on the network, from #4chan to #archived.moe and #sapphire.

Unfortunately, in terms of group chat IRC has several crippling drawbacks. First, it was designed for a world where chat only happened at a computer that could stay always on. Despite using centralized servers, IRC does not retain chat history and thus cannot provide push notifications to mobile devices without a constant connection: resulting in a very lonely experience for small channels. This meant that the Chief Archivist, a person perpetually away from keyboard, would never see messages from new users.

Group chats now excel on smartphones with individuals that roam away from keyboard, with data connections that can be intermittent and cannot use too much data. This can be mitigated with the use of bouncers, but the requirement to set up a home server with port forwarding locks out much of the possible userbase. Simply put, IRC is a mismatch with the modern smartphone-enabled world.

Discord (2016-present)

Discord is a modern group chat client first suggested by the user Texas, and has become wildly popular with gamers and imageboard users alike to replace Skype, Teamspeak, and other forms of group chat. It has a design similar to Slack, with cross platform support, chat history, push notifications, and even group voice chat. (Unfortunately, it is also wholly proprietary and servers are hosted directly by Discord themselves, but it was the best we could do at the time.)

In addition, it quickly became difficult to move the entire organization to a new group chat system. For all the problems of IRC, its esoteric nature makes its users quite technically skilled, as well as loath to embrace supposedly "flash-in-the-pan" systems. Thus, the solution was simple. We just bridge the two networks together: turning Discord into a free and accessible IRC bouncer.

Itabashi - Discord Bridge

板橋 (Itabashi) bridges an IRC and Discord channel together, syncing messages back and forth using a bot.

It was developed for the Bibliotheca Anonoma to coordinate operations between its Discord and IRC channels.

For generations past, IRC has been an indispensable tool of communication. It’s a system well suited to the computer age, and the various channels on a network make it easy to jump around and bring people together.

However, for the next generation of users who live in a mobile device focused world, IRC is increasingly frustrating and inadequate for their usage.

Popular replacements such as Slack and Discord have been developed for cross-platform support, push notifications for all users, and significantly lower barriers to entry.

Unfortunately, Slack in particular leads to isolated walled communities that are disconnected literally, and figuratively from the Great big IRC networks. This occurs by design: corporate developers deliberately meet in private to build a proprietary, NDA-protected product before the competition finds out.

But this isn’t how open-source development works. And as such, open source projects have been driven by IRC and remain the mainstay userbase. However, IRC just isn’t palatable to modern mobile users used to group chat. And IRCCloud is great, but costs money.

The solution we use is to run a bridge between the two chat worlds: of Discord (a popular, accessible group chat used by gamers), and IRC.

Future Alternatives

While we will still remain involved with IRC to some degree, a bridge between two systems can sometimes be unwieldy and cause issues upon desyncing.

There needs to be some open source, non-login chat system that is run on our own servers. Discord is quite great and popular, but it is fully proprietary.

Matrix/Riot.im/PTO.im

Due to the diverse range of communities I work with, I currently wrangle with up to 10 group chat systems to communicate with various individuals across the country and the world. Each of these (from Skype, LINE, Discord, Whatsapp, Facebook Messenger, and Hangouts) are fully proprietary and have no provision for intercommunication.

Now how about a modern, open source group chat (akin to Slack) that would stand on its own, allow self hosted servers, yet provide full federation and bridging to IRC and other group chat systems? That's what Matrix, and it's frontend Riot does.

  • Matrix is an open protocol for modern group chat where you can use self hosted servers, and have them interact with each other: like XMPP or IRC, but modernized.
  • Riot is a cross-platform frontend for Matrix that provides an example server and allows you to connect to your own: as well as bridge some IRC networks (Freenode and Mozilla currently).
  • PTO.im - Perpetually Talking Online (PTO) is an IRC frontend to the federated Matrix network. It aims to enable as many people as possible to use an existing Matrix homeserver with their existing IRC clients.
  • matrix-appservice-bridge - Matrix bridges can be easily put together: we can make one for Discord to maintain continuity.
    • We can set up our own Matrix server that can be used through PTO and Riot, and provide bridging to IRC Rizon.

Effective use of these two systems will allow us to abandon proprietary Discord to run our own server, yet retain continuity with our IRC channel.


Archival IRC Bot

Currently in semi-active development we are working with our own IRC bot, Akabane to aid in our archival tasks.