all repos — site @ 5261a32bfabc512dbbd4d969a0ecba19dac07213

source for my site, found at icyphox.sh

pages/txt/irc-for-dms.txt (view raw)

 1   03 November, 2019
 2
 3IRC for DMs
 4
 5Honestly, it's pretty great
 6
 7   [1]Nerdy and I decided to try and use IRC for our daily communications,
 8   as opposed to non-free alternatives like WhatsApp or Telegram. This is
 9   an account of how that went.
10
11The status quo of instant messaging apps
12
13   I've tried a ton of messaging applications -- Signal, WhatsApp,
14   Telegram, Wire, Jami (Ring), Matrix, Slack, Discord and more recently,
15   DeltaChat.
16
17   Signal: It straight up sucks on Android. Not to mention the centralized
18   architecture, and OWS's refusal to federate.
19
20   WhatsApp: Facebook's spyware that people use without a second thought.
21   The sole reason I have it installed is for University's class groups; I
22   can't wait to graduate.
23
24   Telegram: Centralized architecture and a closed-source server. It's got
25   a very nice Android client, though.
26
27   Jami: Distributed platform, free software. I am not going to comment on
28   this because I don't recall what my experience was like, but I'm not
29   using it now... so if that's indicative of anything.
30
31   Matrix (Riot): Distributed network. Multiple client implementations.
32   Overall, pretty great, but it's slow. I've had messages not send / not
33   received a lot of times. Matrix + Riot excels in group communication,
34   but really sucks for one-to-one chats.
35
36   Slack / Discord: sigh
37
38   DeltaChat: Pretty interesting idea -- on paper. Using existing email
39   infrastructure for IM sounds great, but it isn't all that cash in
40   practice. Email isn't instant, there's always a delay of give or take 5
41   to 10 seconds, if not more. This affects the flow of conversation. I
42   might write a small blog post later, revewing DeltaChat.^[2]1
43
44Why IRC?
45
46   It's free, in all senses of the word. A lot of others have done a great
47   job of answering this question in further detail, this is by far my
48   favourite:
49
50   [3]https://drewdevault.com/2019/07/01/Absence-of-features-in-IRC.html
51
52Using IRC's private messages
53
54   This was the next obvious choice, but personal message buffers don't
55   persist in ZNC and it's very annoying to have to do a /query
56   nerdypepper (Weechat) or to search and message a user via Revolution
57   IRC. The only unexplored option -- using a channel.
58
59Setting up a channel for DMs
60
61   A fairly easy process:
62     * Set modes (on Rizon)^[4]2:
63#crimson [+ilnpstz 3]
64
65       In essence, this limits the users to 3 (one bot), sets the channel
66       to invite only, hides the channel from /whois and /list, and a few
67       other misc. modes.
68     * Notifications: Also a trivial task; a quick modification to
69       [5]lnotify.py to send a notification for all messages in the
70       specified buffer (#crimson) did the trick for Weechat. Revolution
71       IRC, on the other hand, has an option to setup rules for
72       notifications -- super convenient.
73     * A bot: Lastly, a bot for a few small tasks -- fetching URL titles,
74       responding to .np (now playing) etc. Writing an IRC bot is dead
75       simple, and it took me about an hour or two to get most of the
76       basic functionality in place. The source is [6]here. It is by no
77       means "good code"; it breaks spectacularly from time to time.
78
79In conclusion
80
81   As the subtitle suggests, using IRC has been great. It's probably not
82   for everyone though, but it fits my (and Nerdy's) usecase perfectly.
83
84   P.S.: I'm not sure why the footnotes are reversed.
85     __________________________________________________________________
86
87    1. It's in [7]queue.
88    2. Channel modes on [8]Rizon.
89
90References
91
92   1. https://nerdypepper.me/
93   2. https://icyphox.sh/home/icy/leet/site/build/blog/irc-for-dms/temp.html#fn:deltachat
94   3. https://drewdevault.com/2019/07/01/Absence-of-features-in-IRC.html
95   4. https://icyphox.sh/home/icy/leet/site/build/blog/irc-for-dms/temp.html#fn:modes
96   5. https://weechat.org/scripts/source/lnotify.py.html/
97   6. https://github.com/icyphox/detotated
98   7. https://github.com/icyphox/site/issues/10
99   8. https://wiki.rizon.net/index.php?title=Channel_Modes