Web3 Social & Farcaster
Why you should be building decentrazlied social media applications
Originally published on Mirror
I recently got on Farcaster, it’s a decentralized social media protocol with an ecosystem of clients and tools. Despite receiving an invite code earlier, it took me some time to finally get on and I’m very glad that I did. There were a series of events that led me to dive deeper into it. First, I watched Dan Romero on Bankless, which made my top 5 Bankless episodes list. Second, I got into an argument on Twitter, which I don't often do, making me question the social media content I consume and the people I interact with. Finally, adding onto these web3 social networks was already something I had been interested in and written about.
In this post, I want to talk about today's social media applications, what decentralized social protocols can unlock & dive into Farcaster. So let's get into it.
Intro to Decentralized Social Networks
Web3 social (aka decentralized social) has been one of the most exciting areas in crypto for the last year. I've already written about in a past post, but want to give a refresher here for simplicity.
You can check out my previous post: Web3 Social & building with Lens Protocol 🌿
Web2 Social Media Applications
Social media apps impact our lives in many ways. It’s safe to say that they bring many benefits; the apps are user-friendly, allow creators to communicate with their audiences, enable individuals to establish online businesses, and even allow grandparents to post cat pictures, among other things. From the rise of Tiktok stars, viral memes, and "a day in my life" videos (or do I need to say vlogs?), these platforms have made it easy to connect with anyone and reach a large audience. However, now we are seeing a decline in both user satisfaction and innovation.
New tech like web3 can bring some fresh ideas to the table. Let's first talk a bit about the slowdown & limitations of the current platforms.
Web2 Social Media: Limitations & Challenges
It’s true that centralized social media platforms provide a top-notch user experience, but this comes with a trade-off. The companies running the platforms have a lot of power, from control over users and content, how the algorithm works, app features, how the API/tools are controlled etc.
As a content creator, the most important thing to point out is that user’s don’t have a direct relationship with their audiences. The social media platform can ban the user or content. A few months ago, YouTube banned Bankless and Stani's Twitter was suspended after he made a joke. I don’t even want to imagine what I’d do if Twitter banned my account.
The power extends beyond user and content control, the platforms may offer developer tools which they are also in control of. For example, there used to be a time when developers could use Twitter's public API to create new tools and services. However, after 2012, Twitter limited data access, which obsoletes most of these tools and damaged developers' trust. Or for example just this week, Twitter announced that they'll no longer support free access to the API. Now the developers building tools and companies who use API for their business need to pivot.
Feature set is another point worth pointing out. Before Instagram had a tab where you could see every person's activity (a stalker's dream)? For better or worse, Instagram decided to change this; they also changed how posts are displayed on the feed.
The top-notch user experience is becoming to feel not so top-notch anymore.
Alongside the power which the centralized social media companies have, innovation in the social media space is very limited. There's a high barrier to entry for any new app because a social media app is only as powerful as its active users. So for a new social media app to be successful, it must build a huge network effect; otherwise, platforms like TikTok or Instagram can incorporate the same features.
Remember Clubhouse? A couple of months after Clubhouse's, Twitter created Twitter Spaces. Unfortunately, Twitter, which already had a much larger user base, was able to mimic the features, and Clubhouse fell into decline.
Decentralized Social Media
Over the past year, decentralized social media has been one of the most exciting topics in crypto, also known as "web3 social media." Before, most crypto apps were about DeFi (Decentralized Finance) or NFTs. However, given social media's role in our lives and the limitations that social media services present, there has been a large focus on building decentralized social networks.
Decentralized social is a new type of social media that operates on a decentralized network and isn't controlled by a single person or company. The common objective of decentralized social media is to offer more control to its users. Users do not need to trust and rely on a single entity. Developers can create new experiences using the open social graph; this way, users can communicate with each other irrespective of the app they use.
Different teams are building the infrastructure for web3 social media, each with unique advantages. While some objectives overlap, it's better to evaluate each protocol individually. In the next section of this post, we'll look closely at Farcaster.
Farcaster is a sufficiently decentralized social network. It is an open protocol that can support many clients, just like email.
The Farcaster Protocol is a decentralized social network built on Ethereum. Being an open-protocol is enables users to have a direct relationship with their audience and provides developers access to the underlying data & API's.
Btw, you can find me on Farcaster as edatweets.
To clarify, Farcaster is the protocol, and the team is also building a client on top of it. The Farcaster app is a Twitter-like app with some extra features. For example, there's an NFT tab where you can see the NFTs the people you follow buy; another fun feature is when you write "gm", the like button turns into a "GM" reaction button.
Why should I care?
- User & Developer Experience: The identity and relationship data is portable, so users can take it from app to app. This allows developers to build new apps with the same users without starting from scratch. For example, if you don't like the algorithmic feed displayed on Farcaster, you create a new one. Basically, the open social network allows you to create tailored experiences. To be honest, I have no intention of leaving Twitter today, but there are days when Twitter is not as fun, and I see lots of content that makes me angry or doesn't add any value. If I could carry my followings/followers to another app that only shows me content that makes me happy or inspired. In that case, I'd reconsider.
- Built-in Monetization: Crypto introduces financial incentives and opens the door for experimenting with monetization for a decentralized social media. Today, the predominated model for monetization on social media is advertising. With a decentralized social network and built-in token structure, you can leverage the existing social graph to create new tools with a financial layer. For example, I mainly go to Amazon today for online shopping; I don't even check other websites simply because I don’t want to signup and enter all my information again. However, suppose I could just carry my personal information anywhere. In that case, I could easily use other e-commerce websites and even see the reviews from people I know.
- New Use-Cases: An open social graph allows anyone to build apps allowing for permissionless innovation. This opens up opportunities for developing innovative and previously impractical or inefficient applications.
But really, how does it work?
Let's get technical (not too deep, but let's cover some basics). 🛠
We can break the Farcaster network into 3 layers:
- Identity Layer: built on Ethereum and defines who’s on the network.
- Data Layer: stores messages by the people on the network. A Delta Graph on Farcaster is used to represent and synchronizes the state of the network; here delta refers to an action the user takes such as posting a message. There are Hub’s, which are nodes that have a full copy of the network and is used to synchronize the delta graph.
- Application Layer: consumes the messages from the data layer to create different applications.
Here are some of the main challenges with a decentralized social network & how Farcaster approaches them:
- Identit: a decentralized social network must issue decentralized social identities and map them to users. Farcaster has two identity systems working together to provide a system that's decentralized & trustworthy. First, users must claim a unique numeric identifier called the Farcaster ID(fid) to get started. The fid is issued in a smart contract(Farcaster ID Registry) on Ethereum, once a user gets it, it's theirs forever. The fid is not a human-friendly identifier, and that's where a secondary name system comes into play. Users can claim a Farcaster name (fname), like "edatweets" which is unique and connected to the fid. This secondary name system is governed by a namespace to make sure that people can't impersonate one another (for example, I can't get the username: beyoncé). there’ll also be a price associated with the name (just like buying a webdomain) which will generate revenue for the protocol.
- Account Recovery: This has been a hot topic not just in decentralized social media but for the general user experience with Ethereum. Account abstraction, can solve account recovery for Ethereum accounts, but since its not implemented at the moment, Farcaster created its own recovery mechanism. Farcaster approaches recovery by allowing users to set a recovery address. The recovery address can request a transfer to a new address, for example when you loose access to your account. There's a wait period before the transfer is executed to ensure that the recovery address doesn't have total control and is only used when the primary address is absent.
- Applications: Users can interact with the network from different apps. An app needs some kind of power to create messages on behalf of users. You don’t want to give each app your private key, as that would give the app full control of your account. That's where signers come in to give the app access without giving away full control of the account. A signer is a key-pair that can sign messages on behalf of an fid. Users have the flexibility to choose the app they prefer, instead of having a single option.
- When building an internet-scale protocol, scalability is a huge challenge.
- Adoption. As with any new technology, getting people interested and actively using it is crucial. Developers will only want to come and build if there's a large set of active users. The good thing is that users only need to try out one app using the Farcaster protocol, and then they are on the network.
If a large number of developers are interested in the protocol and creating helpful tools, in that case, Farcaster can provide the building blocks for next-gen social media. The ecosystem is growing, and here's some apps and tools being built.
- Purple and Searchcaster are clients to search on Farcaster. If you don't like how your feed is displayed, you can choose a new client with a different algorithm or use these clients to search for specific topics.
- Phrasetown, Yup's Farcaster Feed, Omilos are different clients built on Farcaster. As a user, you can choose whichever UI they like the most.
- Eventcaster: a user-friendly events platform built on Farcaster, you can directly create, discover and join events from the app. This is my second post on decentralized social media, the first one featuring Lens Protocol and now a dive into Farcaster. As you can tell, I'm pretty interested to see how crypto/web3 can offer a new approach to social media.
If you have any questions or comments, please feel free to reach out to me. Catch you on the next one!