blog

Personal blog
git clone git://git.laack.co/blog.git
Log | Files | Refs

easily-hostable-protocols-over-applications.gmi (3900B)


      1 # Easily Hostable Protocols Over Applications
      2 
      3 ## Date: 2026/04/25
      4 
      5 Motivated by Joshua Blais' blog post about using the internet like it's 1999 I wanted to discuss an application and a protocol with characteristics that make them bad from a user freedom perspective. I also want to discuss solutions.
      6 
      7 => https://joshblais.com/blog/using-the-internet-like-its-1999/ Josh's Blog Post
      8 
      9 ## Zulip
     10 
     11 Zulip is an instant messaging program that looks like a bastion of freedom. I thought it was because it is free software which ought to be the epitome of user freedom, but it is not that simple. Free software is necessary but not sufficient for appropriate user freedom.
     12 
     13 => https://zulip.com Zulip
     14 
     15 Try to find a third party Zulip client for GNU/Linux. You will not. This frequently happens when you use applications and not protocols. Let's consider three alternative protocols that facilitate instant messaging:
     16 
     17 1. IRC
     18 2. XMPP
     19 3. Matrix
     20 
     21 Look for third party clients for any of these and they will abound. These protocols were sensibly designed to give users the freedom to decide how they interact with their data and the data others show them.
     22 
     23 Nothing is stopping you from creating a third-party client for Zulip. The problem is applications aren't designed with this in mind, but protocols are. The main reason applications generally have so few clients is they frequently change their interfaces in breaking ways. Quality protocols are designed from the ground up to ensure consistent interfaces, often with backwards compatibility in mind.
     24 
     25 ## AT Protocol
     26 
     27 The AT Protocol is used by the social network Bluesky. This is a common way people introduce the protocol, and it should give you pause that a protocol is frequently associated with a singular company and social network.
     28 
     29 => https://en.wikipedia.org/wiki/AT_Protocol AT Protocol
     30 
     31 Choices in the design of the AT Protocol have led to it being too costly for individuals to run full-fledged servers. 
     32 
     33 => https://dustycloud.org/blog/how-decentralized-is-bluesky/ Architectural Discussion
     34 
     35 
     36 This results in most AT Protocol users being entirely dependent on the Bluesky organization. Having a strong reliance on a VC backed social media company is a good way to become the product when investors demand returns. This also limits freedom by having a centralized authority with the ability to censor speech.
     37 
     38 => https://arewedecentralizedyet.online/ Decentralization Metrics
     39 => https://bsky.social/about/blog/03-19-2026-series-b BlueSky Funding
     40 => https://bsky.social/about/support/community-guidelines BlueSky Community Guidelines
     41 
     42 An alternative to the AT Protocol is ActivityPub. Mastodon uses ActivityPub to facilitate microblogging, and the software can be hosted on cheap hardware without a reliance on a third-party. Proponents of the AT Protocol may claim the two perform different functions, and I agree, but the centralized feed functionality the AT Protocol can provide but ActivityPub can't is something I consider to be deeply problematic from a human psychology perspective. As such, while ActivityPub can't directly replace "your" BlueSky feed, it will give you a healthier microblogging experience. With that said, I think the case for microblogging is lacking, and individuals should consider if microblogs, both their own and those of others, are worthwhile (my answer is emphatically no).
     43 
     44 => https://joinmastodon.org/ Mastodon
     45 
     46 ## Proposition
     47 
     48 Host your own services for the dissemination of information, ensuring the services you host implement protocols designed for the type of information you are disseminating.
     49 
     50 I use Git (not GitHub) for software distribution, RSS, Gemini, and HTTP for broadcasted textual information, email for bidirectional individual or small group communication, and XMPP or IRC for larger group communication. These are the protocols built for these use cases, and they should be used as such.