News: 1637363471

  ARM Give a man a fire and he's warm for a day, but set fire to him and he's warm for the rest of his life (Terry Pratchett, Jingo)

Friday FOSS fest: Franz, RamBox, Pidgin and more

(2021/11/20)


Most modern chat systems are entirely proprietary: proprietary clients, talking proprietary protocols to proprietary servers. There's no need for this: there are free open standards for [1]one-to-one and [2]one-to-many comms for precisely this sort of system, and some venerable clients are still a lot more capable than you might remember.

But as it is today, if you need to be on more than one chat system at once, the official way is to install their client app, meaning multiple clients – or at best, multiple tabs open in your web browsers. Most of these "clients" are JavaScript web apps anyway, running inside Electron – an embedded Chromium-based single-site browser. Which is fine, but Chrome is famously memory-hungry.

There is a brute-force way round this: have one app that embeds lots of separate Electron instances in tabs. There are a few of these around – first came [3]RamBox , followed by [4]Franz . Both use the "freemium" model: there's a completely functional free client, plus subscriptions for extra features. If you prefer to avoid such things, both services have no-cost forks: [5]Ferdi from Franz and [6]Hamsket from RamBox. A newer rival still is [7]Station .

[8]

They're not perfect but these messaging-aggregators are very handy: you get all your messaging apps in a single client, with a single set of notifications, and they're separate from your browsers. You can configure multiple accounts on each service, which can be tricky in a browser if it stores your credentials. The snags are that the UI inside each tab is totally different, and they are very memory-hungry: each tab takes hundreds of megs of RAM, and if you have a lot of tabs, the parent app can easily snarf a couple of gigs. That's the price of building apps in Javascript.

[9]

[10]

But there is another way. If you were online in the 1990s, you may recall the early days of online chat, with multiple proprietary "instant messengers": AIM, Yahoo, MSN and so on. Most of them have been shut down now, although the oldest of all, ICQ, was spun off by AOL and is still around. Some of the clients could connect to rival services, leading to decidedly hairy hacks to validate that clients were genuine, such as AOL intentionally exploiting a buffer overflow in its own [11]code . This didn't stop third parties creating their own clients, such as the Linux client [12]GAIM .

[13]Ubuntu, Wikimedia jump ship to the Libera Chat IRC network after Freenode channel confiscations

[14]Will the real IRC please stand up? Freenode’s forest fire leaves ashes – and fresh growth

[15]After staff revolt, Freenode management takes over hundreds of IRC channels for 'policy violations'

[16]The Rust Foundation gets ready to Rumbul (we're sure new CEO has never, ever heard that joke before)

Back in 1999, a group came together to create a free open standard for person-to-person messaging: [17]Jabber , later renamed the Extensible Messaging and Presence Protocol or [18]XMPP . For a while, it was widespread, including large corporations such as Facebook and Google, although most have removed support for it now.

The original purpose of GAIM went away, but the app did not. The team added support for other operating systems and protocols and renamed it to [19]Pidgin . It's still very much alive. It runs on Windows as well as Linux, and not only does it work with any XMPP service, such as [20]Cisco's , but also Apple's Bonjour, Google Talk, Groupwise, ICQ, IRC, SIMPLE, and Zephyr.

There are also [21]plugins available for dozens more – Telegram, Facebook Messenger, both personal and business versions of Skype, Discord, Mattermost, QQ, Rocket.chat, Twitter, Slack, Steam, Threema, WeChat, and more. It may not talk to every chat service out there, but it supports most of them.

[22]

There is a drawback with multiprotocol clients like this, though, be they tabbed web-apps or true native client-server setups – you need to configure all the protocols you will use in each client. A newer protocol hopes to tackle that problem: [23]Matrix . Matrix can do point-to-point conversations, as XMPP does, but also channels and chatrooms – and more importantly, it can link to other services via server-side bridges. A Matrix client – the reference one is [24]Element – can bring multiple messaging services together into a single inbox in a single local app, connected via a single login.

Matrix can be tricky to configure, though, so some companies are offering paid-for messenger-unification services running on top of the Matrix protocol. [25]Beeper is a commercial effort and includes Apple iMessage via a [26]hilarious workaround, whereas the cheaper [27]Element One is basically a hosted version of Matrix. A new mystery contender is [28]Texts , which is closed-source for now although the company [29]says it will open-source its SDK later.

There never was a golden age of any-to-any chat systems, but fifteen years ago, things were a lot better than they are now. There is reason to hope, though. There are signs that things are getting better. ®

Get our [30]Tech Resources



[1] https://takebackourtech.org/xmpp-comeback/

[2] https://matrix.org/

[3] https://rambox.app/

[4] https://meetfranz.com/

[5] https://getferdi.com/

[6] https://github.com/TheGoddessInari/hamsket

[7] https://getstation.com/

[8] https://pubads.g.doubleclick.net/gampad/jump?co=1&iu=/6978/reg_software/front&sz=300x50%7C300x100%7C300x250%7C300x251%7C300x252%7C300x600%7C300x601&tile=2&c=2YZiBBMTBJoNh9jdeBM2CfgAAAQ4&t=ct%3Dns%26unitnum%3D2%26raptor%3Dcondor%26pos%3Dtop%26test%3D0

[9] https://pubads.g.doubleclick.net/gampad/jump?co=1&iu=/6978/reg_software/front&sz=300x50%7C300x100%7C300x250%7C300x251%7C300x252%7C300x600%7C300x601&tile=4&c=44YZiBBMTBJoNh9jdeBM2CfgAAAQ4&t=ct%3Dns%26unitnum%3D4%26raptor%3Dfalcon%26pos%3Dmid%26test%3D0

[10] https://pubads.g.doubleclick.net/gampad/jump?co=1&iu=/6978/reg_software/front&sz=300x50%7C300x100%7C300x250%7C300x251%7C300x252%7C300x600%7C300x601&tile=3&c=33YZiBBMTBJoNh9jdeBM2CfgAAAQ4&t=ct%3Dns%26unitnum%3D3%26raptor%3Deagle%26pos%3Dmid%26test%3D0

[11] https://www.geoffchappell.com/notes/security/aim/index.htm

[12] https://wiki.c2.com/?GaimMessenger

[13] https://www.theregister.com/2021/05/27/ubuntu_freenode/

[14] https://www.theregister.com/2021/06/01/freenode_issues_help_irc_grow/

[15] https://www.theregister.com/2021/05/26/freenode_irc_takeover/

[16] https://www.theregister.com/2021/11/19/rust_foundation_ceo/

[17] https://www.jabber.org/

[18] https://xmpp.org/

[19] https://www.pidgin.im/

[20] https://www.cisco.com/c/en/us/products/unified-communications/jabber/index.html

[21] https://www.pidgin.im/plugins/?publisher=all&query=&type=

[22] https://pubads.g.doubleclick.net/gampad/jump?co=1&iu=/6978/reg_software/front&sz=300x50%7C300x100%7C300x250%7C300x251%7C300x252%7C300x600%7C300x601&tile=4&c=44YZiBBMTBJoNh9jdeBM2CfgAAAQ4&t=ct%3Dns%26unitnum%3D4%26raptor%3Dfalcon%26pos%3Dmid%26test%3D0

[23] https://matrix.org/

[24] https://element.io/

[25] https://www.beeper.com/

[26] https://twitter.com/ericmigi/status/1351934418961661959

[27] https://element.io/element-one

[28] https://texts.com/

[29] https://texts.com/faq

[30] https://whitepapers.theregister.com/



Sucks

batfastad

Internet comms since 2008 fscking sucks. A random waffling after a few pints will now follow.

E-mail often wrapped in proprietary gubbins under the assumption that everyone uses a specific vendor's interpretation, grouped by subject header under the assumption of pertaining to a single conversation. Chat mostly stuck in a walled-garden of JS or a handset-based app.

I remember setting up an XMPP/SIP bridge which would display XMPP presence updates from staff on our intrnaet... an early internal twitter I suppose. It worked perfectly in the brief moment of 2005-2010 before UX and functionality became prescribed by the development teams of 5 global corporations.

IRC and NNTP? I still use IRC alot for work comms and open source stuff... though new-fangled open source projects (the type that won't exist in 3 years' time) tend to use slack, gitter or discord instead. NNTP just a simple, open, distributed version of reddit. Gmane.org kept me using NNTP for a long-time for interacting on open source e-mail lists but gmane.org is long gone last I checked.

Comms better in the old days, probably not, but absolutely not worse.

Re: Sucks

elDog

Agree with your post-pints discourse. But how to handle all of the "new" multi-media formats that seem to be so necessary nowadays? And how to monetize the bugger-all?

Rebellion lay in his way, and he found it.
-- William Shakespeare, "Henry IV"