Sometimes I think about all of the societal issues I cared about 10 years ago: privacy, government overreach, and platform accountability. More and more as I look at the technological landscape it feels like none of that care seems to have mattered.
When I worked on the Societal Health team at Twitter I had a voice and direct impact on these matters. If the feedback I received and still hear from my peers and higher ups holds true, that voice was not only well-received but considered thoughtful and led to meaningful change. With hindsight I can't say that every choice we made was right, there are few easy answers and no correct answers, but we made the best decisions we could with the information we knew at the time. These days I build indie apps like Short Circuit and Plinky for many reasons, it's what I think will make me truly happiest right now, but one of my reasons is to carry less emotional weight on my shoulders. I still have my morals, but without having the position I once had it’s harder than ever to translate my values into change.
The self-induced immolation of Twitter has caused a schism with the community I formed, cultivated, and connected with on the platform. People I follow, people I learn from, and many people I’d call my friends have all scattered to the four winds across a myriad of text-based social networks. I’ve spent the last week thinking about whether to join the latest Twitter-esque social network Threads, where many people close to me have made their way.
Twitter was an online home for me, and by working there I laid many of the bricks that stood up that home before new ownership decided they wanted to go Nero on it. Now as I contemplate a home on Threads I know I won't have the opportunity to speak up and create impact that aligns with my morals. Meta's long and sordid history of causing societal problems is well known. It's a helpless feeling to trust such important relationships to the whims of a historically opaque and soulless platform, but sadly it's now an option I'm considering.
Meta has often been a destructive force to the values I care about. When I look at the state of technology it's depressing to see how blatantly corrupt the technologies we use have become. Maybe they always were, perhaps it was youth and innocence that led me to believe that such large, powerful, and impactful institutions could be guided and reformed, but from what I saw firsthand there was a glimmer of hope that it could be fixed by people from the bottom up. I'm torn between my values and wanting to stay connected with the people I care about online. Twitter changed my life by connecting me to people that still show me kindness, give me joy, and make me a happier person.
But Joe, Why Don't You Just Use Mastodon Or Calckey Or Some Other Weird Thing That Federates Across The Fediverse?
Facebook aside I've had moral qualms with using Google products, so I've long used alternative services. Instead of heading to google.com I open kagi.com, and instead of Gmail I use Fastmail. These are actually quite good substitutes, in many ways I prefer these two options over Google's billion-user products. Similarly I haven't missed Facebook at all since I stopped using it 10 years ago. I have no problem switching away from free problematic products to pay for a less troublesome alternative.
Since a Musk-sized dagger ripped apart my community on Twitter I've wandered around looking for my people. I've joined Mastodon, Bluesky, and countless other alternatives, all with their own benefits and sets of tradeoffs. I strongly believe in an open and federated social layer for the internet, letting people use any social network they want and staying in touch with their friends and family the same way I was able to switch email providers. I don't ever again want to be caught in this situation where I've lost my community again, and the promise of federated platforms is that you can move around from platform to platform with your followers and people you follow.
Mastodon has been a haven for more technical nerds leaving Twitter. (Nerds who I love, especially since much of the iOS community has moved over there.) I have a core group of people that I enjoy spending time with there, but the second anything I say escapes that circle of people the environment gets much worse. I receive so many low-value context-free replies, often completely misunderstanding what I was actually trying to say. People who don't know you can be pushy and aggressive with their views, some basically ignore what you post instead opting to spend 500 characters telling you what they think regardless of whether you asked. I constantly feel like I'm being talked at, not talked to, and it doesn't feel like a place that can be my home.
Beyond the community it's discouraging to see how slow Mastodon's pace of development has been. I know first hand how hard it is to build a global-scale platform, and it's especially hard to build a large platform with only a few people and community funding. I have nothing but respect for Mastodon's approach, especially as they build the service in a standards-abiding way that can work with other ActivityPub-based services. And yet the platform still lacks features that Twitter has had for over a decade (ahem, global search), and has not become the Twitter substitute I'd hoped it would become.
I don't want to spend all my time ragging on Mastodon, I applaud their efforts and appreciate how thoughtful their team is. On the other hand Bluesky’s decision making is not what I would call thoughtful, but what they have managed to do was capture lightning in a bottle. Many of Twitter's most entertaining posters migrated to the Bluesky, leading to hilarious antics such as people threatening to beat Matt Yglesias with a bunch of hammers. (I wish I was kidding, but I do have to admit this was the first time a Twitter alternative actually felt like Twitter.) Unsurprisingly a community that leads with hammers hasn’t been very good at making Black users feel safe. I don’t think it requires having worked at Twitter trying to minimize harassment to feel empathy, and you don’t need a big empathic nerve to feel for people being told that the death threats they’re receiving are "hypothetical death threats" and won’t be removed from the platform. To Bluesky’s credit they’ve intentionally kept the network small, passing up opportunities to scale and seize an opportunity knowing they can’t make everyone feel safe right now.
I feel conflicted about Bluesky, but where my hope for Bluesky lies is in what the platform is built upon, the AT protocol. AT solves important problems related to account portability and data ownership by relying on the concept of a Personal Data Server (commonly called a PDS). We live in a world where people say that platforms should both moderate more and less content, that you should have free speech guarantees unless it’s harmful, there is never going to be a right answer about what content should be allowed on a platform. This is why Facebook gets backlash, it’s arguably why Elon Musk bought Twitter, and it’s why every big tech company gets called in front of Congress.
Currently your Facebook data is locked on Meta’s servers, which means if you don’t like Meta’s speech or harassment or governance policies, you can’t leave without losing your community. If a person owned their data then they would be free to move from platform to platform, looking for a home that suits them without losing connection to the greater community. The Bluesky team aren’t looking to build a platform, they’re trying to build the protocols that underly any social platform. By building a common protocol across the web people will be able to build and find platforms that suit them, and then can choose to (or choose not to) interact with people on other platforms through this shared language.
The Bluesky team are protocol developers through and through, and I think their approach of building these fundamental primitives is the wise choice. The countless moderation failures of Twitter, Facebook, and others, show that ultimately someone has to make an often impossible decision about what content should be visible to users. These companies cannot make all the right decisions at a global scale, there is often no right decision, and despite my past work trying to help make Twitter safer, I don't believe it’s possible to create a set of rules that can make everyone happy.
A better approach is to bring these decisions closer to the user. Mastodon does this at a community level, rather than some random contractor being paid an unfair wage halfway around the world make decisions about what content should be moderated on Twitter. On Mastodon the person who runs your community’s server (often with the help of admins) will decide what’s right for their community. You can join a community that seems great at protecting trans people, but over time you learn that they don’t do a great job of removing pro-Nazi content. Now we’re right back where we started, and you have to decide whether to find yourself a new home.
This is why building primitives into the protocol and doing it right is important. Bluesky recently shipped a feature that lets users build custom timelines, letting you add or remove any content you want from your feed, for example, nazis.1 If done correctly platforms, developers, and individuals will be able to build and use tools that can be used for creating your own personalized experience rather than one homogenous "right" experience.
Will this work? Well that's a big question and what I don't trust the Bluesky team to do though is to build a healthy social network where people feel safe to share their thoughts. And why should I? They assembled a small team to build a protocol, that was and is their stated mission, but have ended up falling ass-backwards into owning a social platform that people want to join.
There are many things Mark Zuckerberg doesn’t understand, for example why anyone would want to have legs in the metaverse, but if there‘s one thing Mark Zuckerberg understands it’s social. You can read that as a compliment about his operational skills or you can imagine him as the digital version of Phillip Morris, but he has an almost gut-level understanding of what people want and how to give it to them.
Threads has managed to sign up 100 million users in 5 days, in large part by bootstrapping their growth off of the Instagram network. There's also been a large collective of unhappy Twitter fiends (such as my friends) who are looking for any alternative to a Twitter run by Elon Musk. They're willing to forgive Mark Zuckerberg for his sins if he can lead them to salvation, which says a lot about how Twitter has fallen in their eyes. According to celebrities like Dane Cook the first week on Threads has felt like some drugged up parallel universe of Twitter.
I don't expect this high to continue. Meta still has to retain and grow the Threads user base for it to be meaningful, but it does seem that unlike other niche Twitter alternatives Threads will at least give Twitter a run for it's money. What gives many people in the fediverse hope is that is Meta building Threads atop the open ActivityPub protocol. (The interconnected ActivityPub servers powering Mastodon and other services is called the fediverse, and yes, no matter how many times I hear it I still cringe.) By doing so Threads content will be available to anyone in the fediverse, and fediverse users will be able to interact with their friends on Threads. This works exactly the same way email does, if you have a Gmail account you can still email your grandma with her ancient AOL account.
Some cynical people in the fediverse assume that Meta won't actually stay true to their promise of federating, but I think it's actually in their best interest. This is what Ben Thompson has coined a Strategy Credit, where you get credit for doing something widely considered to be good but is also beneficial to you. By federating with ActivityPub servers Meta will have access to content across the entire social web. Federating with ActivityPub servers is less about Mastodon and more about a service like WordPress which host nearly half of the internet's content. Imagine having a pipeline to all of that great content and applying Meta’s machine learning models to those posts so their users can see the best of the best across the web. This would make Threads a premier destination for content across the web, and Meta wouldn’t have to deal with angry publishers or content moderation since it’s not their content. This sounds like a dream for Meta, and at the same time may end up being beneficial to the open web.
Let's say Threads really does federate, and they even act in good faith doing so. There are still many open questions about how life outside of the Meta ecosystem will look. I won't go into all of them, but to provide a choice few:
What if Meta's search deprioritizes people on other servers for safety or quality reasons? It makes sense when you have a platform that serves over 100 million people that there will be many spammers, state actors, and bad people. The best way to tackle these issues is to gather insights from data, and third parties may not provide that data. If running your own server means being deprioritized, even with good reason, it may mean being cut off from my community at any point in time.
What if Meta’s algorithm adds more weight to posts from Threads users higher because they have more insight into their users? It's much easier to operate on first-party data than it is on third-party data, especially since it seems like Meta is taking the privacy expectations Mastodon users have somewhat seriously with Threads. If my friends aren't actually seeing what I post then will they really feel connected to me?
What if Meta builds good features that don’t translate to ActivityPub? For example on Threads you can control who replies to you (a feature I desperately need given my experience dealing with random Mastodon users), but since it's not a part of the ActivityPub spec that feature isn't available to Mastodon users. This isn't nefarious, it's perfectly reasonable. Meta's goal is to provide their users the best experience they can so they feel safe to come back and engage with the platform (and ads). If I trusted Mastodon with my online experience I would miss out on a lot of features like this, features that in all likelihood would make my online life better.
Being on a different server may end up feeling like being worlds apart from my community, which is exactly the problem that brought me here. I hate to say it because of my moral questions, but the world is an impure place and I think I trust Meta more than Mastodon or Bluesky or whoever to listen and build a product that better connects me to my community.
I've been spinning my wheels for a week and I'm not any closer to answering the big question: do I choose my values or connection to my community? I love philosophy and many philosophers would tell me to live my values, those are by definition the choices I have to live with. But maybe the lesson is that there’s no purity here, I'm living in a world with many variables I can't control, and as much as I want to have it all it doesn't seem like I can.
I believe the same things I once did, but it all seems harder, messier, and more difficult to rectify. Perhaps it always was, perhaps this is wisdom and that was naïveté, or perhaps it will get better. Only time will tell, and until then I still don’t have my online dream home.
There is still a very good chance I don’t end up using Threads. Owning my data is still a very high priority, and I want to have my own space on the internet without Meta sticking their tentacles into it.
When you use an ActivityPub-based service like Mastodon the choices your server owner makes are the rules you abide by. If my server owner doesn't want to enable local search (as mine doesn't), then I'm out of luck and can't even search my own Mastodon posts (as I currently can't). Because of that I don’t plan on continuing to use macaw.social as my Mastodon instance long-term, I would prefer to have control over my experience.
The most straightforward option is to run my own Mastodon server. As noted earlier I can't say the Mastodon experience is very good, and I don't particularly want to tie my online identity to the Mastodon community. As explored in the amazing essay Paradigm Shifts For The Decentralized Web, Bluesky's concept of a PDS solves the ownership problem much like running my own Mastodon server would. A PDS would allow me to host my own data and you can let anyone I want access to it. A service like Meta can have a peek into my data for the purposes of showing it to users on Threads, but they wouldn't be able to follow me all across the web based on my data and usage habits since I wouldn't be using the Threads app.
Since I find Bluesky's technical solution to be the best match for my personal desires I'm leaning towards setting up a PDS once it becomes easier, and using the AT protocol with a bridge that lets me interoperate with ActivityPub servers. There are still many questions with a setup like that though. It would be a piece of infrastructure I have to maintain, the most far along project Bridgy-Fed still has many open questions and, and I don't know how it would work in practice. It's like I'm both living through the early internet, waiting to see what emerges, and spending the rest of my day the internet circa 2023.
- I think custom feeds are brilliant and truly necessary, though I may be a little biased because giving users the ability to construct custom timelines was the last project I was working on at Twitter before I left the company.↩
Joe Fabisevich is an indie developer creating software at Red Panda Club Inc. while writing about design, development, and building a company. Formerly an iOS developer working on societal issues @Twitter. These days I don't tweet, but I do post on Threads.
Like my writing? You can keep up with it in your favorite RSS reader, or get posts emailed in newsletter form. I promise to never spam you or send you anything other than my posts, it's just a way for you to read my writing wherever's most comfortable for you.
If you'd like to know more, wanna talk, or need some advice, feel free to sign up for office hours, I'm very friendly. 🙂