jmtd → log → The scourge of Electron, the nostalgia of Pidgin
For reasons I won't go into right now, I've spent some of this year working on a refurbished Lenovo Thinkpad Yoga 260. Despite it being relatively underpowered, I love almost everything about it.
Unfortunately the model I bought has 8G RAM which turned out to be more limiting than I thought it would be. You can do incredible things with 8G of RAM: incredible, wondrous things. And most of my work, whether that's wrangling containers, hacking on OpenJDK, or complex Haskell projects, are manageable.
Where it falls down is driving the modern scourge: Electron, and by proxy, lots of modern IM tools: Slack (urgh), Discord (where one of my main IRC social communities moved to), WhatsApp Web1 and even Signal Desktop.
For that reason, I've (temporarily) looked at alternatives, and I was pleasantly surprised to find serviceable plugins for Pidgin, the stalwart Instant Messenger multiplexer. I originally used Pidgin (then called Gaim) back in the last century, at the time to talk to ICQ, MSN Messenger and AIM (all but ICQ2 long dead). It truly is an elegant weapon from a more civilized age.
The plugins are3:
- purple-discord (Debian package
purple-discord
) - libpurple-signald
- requiring signald
- whatsapp-purple
Pidgin with all of these plugins loaded runs perfectly well and consumes fractions of the RAM that each of those Electron apps did prior.
A side-effect of moving these into Pidgin (in particular Discord) is a refocussing of the content. Fewer distractions around the text. The lack of auto-link embedding, and other such things, make it a cleaner, purer experience.
This made me think of the Discord community I am in (I'm really only active in one). It used to be an IRC channel of people that I met through a mutual friend. Said friend recently departed Discord, due to the signal to noise ratio being too poor, and the incessant nudge to click on links, engage, engage, engage.
I wonder if the experience — mediated by Pidgin — would be more tolerable to them?
I'm still active in one IRC channel (and inactive in many more). I could consider moving IRC into Pidgin as well. At the moment, my IRC client of choice is hexchat, which (like Pidgin) is still using GTK2 for the UI. There's something perversely pleasant about that.
- if you go to the trouble of trying to run it as an application distinct from your web browser.↩
- I'm still somewhat surprised ICQ is still going. I might try and recover my old ID.↩
- There may or may not be similar plugins for Slack, but as I (am forced to) use that for corporate stuff, I'm steering clear of them.↩
Comments
8 GB of RAM is a very reasonable amount of memory, even in 2023.
In my opinion wasting 1G of RAM for a chat is a moral crime. 😅
I've always seen Electron associated with lazy development and memory hog. Perhaps it is a poor choice for applications which should remain always active in the background.
Unfortunately after writing this blog post, Signald broke due to changes in the Signal API.
The maintainer is on the case, although it looks like a daunting amount of work to fix, and he's stated that this project is not his top priority any more. Definitely an opportunity for someone with the right skills to help out.