Posts in category 'selfhosting'

  • Taking Control of Chat

    Documenting my absurd journey to bridging an IRC client to a bunch of messaging services. Totally nuts and totally worth it. #selfhosting #hacking #technology

    IRC, or Internet Relay Chat, is unquestionably the progenitor of modern online chat systems. IRC preceded instant messaging platforms like ICQ or AOL Instant Messenger, and in doing so connected people in real-time in a way that would lay the groundwork, not for just those instant messaging platforms that would follow, but for modern social media platforms as we know them today. And today, while certainly diminished, IRC still plays an important role in connected communities of people, particularly in the IT space.

    But IRC isn’t without its flaws, and those flaws created openings for many competitors:

    1. Chatting is ephemeral. If you’re not connected there’s no way to receive messages that were sent while you were away.
    2. Text-based. No images or giphy animations here, and file sharing is direct, client-to-client only.
    3. The mobile story in general, and notifications in particular, are weak.

    Now, the IRC community has worked hard to address the first problem with bouncers and changes to the IRC protocol (I’ll dig into this later).

    Issue two… well, bluntly, I actually view that as a benefit rather than a drawback, but obviously that’s a matter of personal taste.

    As for issue three, it’s still true that the mobile story isn’t great, though there is slow steady progress (Android now boasts a few pretty decent mobile IRC clients).

    But IRC also has some enormous benefits:

    1. It’s open and federated. Running a server yourself is trivial.
    2. Clients are heavily customizable for power users.
    3. It’s fast and lightweight.

    And these various other products (like Slack, Signal, etc) have some mirror image drawbacks:

    1. Closed walled gardens.
    2. Zero ability to customize.
    3. Heavy, memory- and CPU-intensive clients.

    And then there is the fragmentation. My god the fragmentation. Every app is its own beast, with its own UX quirks, performance issues, bugs, and so on. Even the way they issue notifications varies from product to product. And some (I’m looking at you, Whatsapp) don’t offer a desktop client product at all.

    I spend every day working with these messaging products, and I wanted to find out: Is there some way I could use an IRC client of my choice to interact with these various walled gardens (recognizing that, yes, that would come with some loss of functionality)?

    Well, with a lot of hacking and elbow grease, I can definitely say the answer is yes! Though… this is, as is the case with many of my projects these days, probably not for the faint of heart…

    Continue reading...
  • Locked in Internet Silos

    An intro post about my attempts to slowly pull myself out of internet silos so I can better control my data. #indieweb #selfhosting

    The Centralized Web

    I don’t think I’d be making news by pointing out that the internet, today, is dominated by large, centralized services. While this centralization of the internet is a far cry from the original vision of peer-to-peer interactions and democratization, those services have, in many ways, enriched our lives by connecting friends and family, individuals and businesses, citizens and government.

    But I also wouldn’t be making news by pointing out that those same services have a darker side, particularly those that would bill themselves as “free”. While ostensibly costing us nothing, these free services make billions collecting and monetizing our personal data while optimizing our use of those systems to enhance engagement. Worse, the data they collect, with or without our consent, is locked away outside of our control.

    I know this. And yet I still find myself making use of many of these services, including:

    • Google
      • Email (Gmail)
      • Storage (Photos, Drive)
      • Calendar (uh… Calendar)
      • Notes (Keep)
    • Github
    • Feedly
    • Ravelry

    And I’m sure many others besides.

    Each of these services provides immense value! Instead of having to host email, or create my own offsite storage system, or manage my own git server, I can save time and effort by having someone else do the work for me.

    However, in exchange, each of these services holds a piece of who I am. And I don’t control any of it.

    Continue reading...