KDEConnect pulls the whole KDE dependencies with it which I do not want while using Unity. That is the only thing that is stopping me from using it. Pushbullet works well for now.
The reason all of those incompatible chat protocols pop up is that all of the popular federated protocols lack features like inline image transfer, a usable backlog, persistence, live previews or gimmicks like code formatting and editing and third party integrations.
People want those, and value them enough to give up federation.
Its threaded conversation model really helps with ignoring discussion about topics you're not interested in. When I get back to an IRC/Slack/whatever channel, I spend quite a while catching up. 99% of the conversation does not concern me, yet I have to read it. Zulip's threading is a great solution to this.
> The reason all of those incompatible chat protocols pop up it that all of the popular federated protocols lack features like inline image transfer, live previews, gimmicks like code formatting and editing, Slack's massive ecosystem and more.
Live previews and code formatting don't really have anything to do with the protocol. In Slack, if I send a link to an image or some `code in backticks`, those are sent through the protocol as-is and then the actual formatting is applied on each client receiving the message. There's nothing to prevent these messages being read on a terminal—that client will simply not have all of those features available.
I'd almost call it progressive enhancement—a lot of features can be provided by a client in a way that would be compatible with several underlying protocols.
I want these features too, but on their own they're no excuse to have a unique protocol for every chat project.
A protocol is a contract for interpretations of messages. "Backticks should be formatted as code in clients when they receive them in text messages" is part of the 'protocol' of Slack, even if it's implicit.
(More specifically, you can think of each message body as having a content-type, probably something like "text/x-vnd.com.slack-slackrichtext".)
This is true. Even the old school of IRC could be wrapped in a nice client, and some formatting tricks could be used to denote rich features. Content that needs to be uploaded to be shared could be uploaded and the URL could be included in the message, so regular IRC clients could click over to see them.
A chat like Miaou wouldn't really make sense with a lesser protocol. People come to Miaou to be sure no ping is ever lost, that the guy in front of them can directly see the game in progress, that the external proven identities are displayed before entry in private rooms (Miaou is mostly used today to coordinate game teams), that other users correctly see the tabular data being shared (or that they can edit in place the whiteboard), etc. The common set of enhancement is what makes Miaou, not something that can be progressive.
> What if your cronjob doesn't fire? What if LEs script has a bug and you're not up to date?
That's why I renew them a week in advance. I set up Nagios checks which alert me when a certificate is not renewed. Those were already in place before LetEncrypt since human error is just as likely as a script breaking.
I renew every month and have not hit their rate limits. That way, even if the cron job doesn’t fire and I don’t notice, there is another chance a month later.