Messaging Mess

I moved from California to Washington at the end of July. Personal details and reasons aside, this post is a rant about something a little frustrating that comes as a consequence of the thousand mile distance from friends and family – communication.

<rant>

Because, what else belongs inside of a rant?

The problem has really existed since AIM & ICQ were the new and popular things. I would say IRC, but that actually doesn't suffer too badly from what I am about to address.

So, if you haven't guessed from my focus on privacy and the removal of a link to a dominant social network from the footer, I really don't like Facebook. I had an account and I had most of the same complaints as everyone else, but what they did with Messenger dropped the value below the threshold of what I was willing to put up with. I had uninstalled the apps from my phone and only visited Facebook in browser, but somebody decided it was a good idea to restrict Messenger to the app. Shortly before this, they also disabled third-party usage, which was a real bummer since I'm an Empathy user, and I really don't want to / won't login to a browser to chat. So, I deleted my account.

Fast-forward to the beginning of July when I'm preparing for the move and wanting to keep in touch with people, and I finally start a new profile. I'm still not going to use Messenger, and even turn it off in browser. But, for some reason, some broken AI at Facebook decides that I'm not a human and disables my account.

I go through the hoops, and prove my identity by uploading a photo of my ID. Along with that, I provide links to various PGP signed "proofs", mostly through Keybase. I don't think there has been anyone in the history of Facebook that has gone to such lengths to prove their identity.

That worked… For a day. I think I've had my account disabled six times now, and I just give up! I'd rather be transferred in an infinite loop on the phone with the IRS while waiting in line at the DMV.
</rant>

Anyways, where was I? Oh yeah. Communication.

So, if you keep up with such things at all, you may have come across an article or two (or half the Internet) about the failing and lack of interest in Google's Allo. I, like a great many others, would rather if Google would put the development into Hangouts (the thing people liked), but we'll get to that in a moment. I mean, aside from currently being locked to a single device by phone number, there's really nothing horrible about Allo. I'm just not a fan of the bots and the stickers.

What I had been using was Hangouts. The reason for that is that Hangouts was based on Jabber, which uses the XMPP protocol. What that means is that Hangouts worked fairly well in Empathy. That means I don't have to have a tab open all the time or always have my phone within hearing range. Notice that I'm speaking in the past tense here? That's because, presumably as part of trimming down Hangouts for the new focus on enterprise, all of my contacts are showing as offline most of the time. I guess that it still works, but it's not exactly usable anymore.

SMS does exactly what it is meant to do, with the built-in restrictions. Still no access from my computer, so I'll miss a message if I don't have my phone on me. There are apps and browser extensions that I can use, but I just don't like the idea of that option.

There are loads of other messaging apps, and almost all of them suffer from the same problem as Allo or Facebook Messenger – They're apps that have to be installed, and usually only available on phones. Some might offer a web version, which requires a tab to constantly be open. I guess that Keybase would work, but that's still in beta and I really don't want someone to have to install yet another app to talk to me and nobody else.

And so, I'm left with something from the 1970s as the only solution. Yep, good ol' email seems to be the champ when it comes to communicating. It alone meets everything that I want:
  • Can be used on mobile or desktop
  • Works with third-party software (does not require installing anything new)
  • People I wish to communicate with almost certainly use it, at least to some extent
  • Is not limited to text, and, unlike everything else, can attach files of any kind
  • Though questionably secure, I have PGP whenever I need to send something sensitive
What really adds to all this frustration is that it really didn't have to be so complicated. In fact, the only reason it is like this is because nobody knows that the end to all this madness arrived in 2004 (developed in 1998, standardized in 2004)! I mentioned it briefly only a few paragraphs ago (here). That's right, XMPP. Seriously, this is what everyone wants to be using if they had the choice. This is what Google butchered when they created Hangouts.

I'm not going to go though all of the details, in part because I really haven't had the ability to use it myself, but here are some highlights:
  • It is an open protocol, so it can be implemented by anyone, just like HTTP
  • It is standardized, which is important in the same way that having a standard for USB cables is important
  • It is decentralized, meaning there is no organization that can change it, remove features, or shut it down
  • Supports group chats
  • If I am understanding this correctly, it allows users from one domain to message users from another domain, much like how email works (user1@example1.com -> user2@example2.com)
  • It has a ton of features, and it can be extended further:
    • Beyond images, it can send files of any type
    • Video chat, using WebRTC
    • Screen sharing
    • Remote Desktop (like TeamViewer)
    • Custom status messages
    • VoIP
    • Being a protocol rather than an app, you can use whatever client you want
    • Can be used with PGP or OTR encryption, making it more secure than any E2EE chat app like WhatsApp / Telegram / whatever else.
There are more features, but you should get the picture. Just imagine the possibilities (assuming that it is implemented as the standard): Your mom is having computer issues and messages you on Hangouts or Slack, but the message is sent through her Facebook account. You have a quick video chat to catch up, then access her computer through remote desktop. Meanwhile, you're having a group chat with your coworkers who are logged into your work server. One of them sends you some document as an attachment and you review it during an audio call later. For all of the calls, your status is updated to busy to let others know that now is not a good time to try to talk to you.


How can something so simple be so darn complicated and difficult?
It's just really sad that instant messaging is filled with all these proprietary services, you have to register for and download each and every one that you want to use, and you cannot message someone unless they use the same service. Could you imagine how successful email would be if Gmail could not communicate with Outlook? If you had to install an app to make a call from a Verizon phone to someone on Sprint? How did we get here, especially considering that a better alternative has been around since before Facebook was a thing that even existed?

But can it send stickers and emoji? 💩 Just shut up. This is why we can't have nice things!