Excerpted from a blockchain developer Atlas’ post, which made some interesting debate from a worth sharing dev perspective, on the limitation of the most popular on-chain publishing application: Mirror.
—
Mirror has had a great run at realizing the vision of redefining publishing, but we want web3 to go further.
By delegating signatures, Mirror is able to offer a smooth user experience with data verification; by storing content users published on Arweave, it allows the articles to be publicly accessible; by introducing the collect mechanism, users are able to capitalize their content on blockchains; by burning the $WRITE tokens, it helps users gain an ENS and also a subdomain on Mirror… These designs are indeed very impressive and gave us lots of inspiration on how a Web3 native app is built. However, after reading this announcement from Mirror recently, I feel like some dreams are shattering.
Today’s Mirror does achieve the goal of “sharing ideas that catalyze communities in Web3”, but it has been gradually diverging from its initial dream of “redefining publishing”. Once we thought Mirror would be redefining the whole publishing industry with crypto technologies, but now, it is merely a writing platform where we discuss Web3. We cannot turn a blind eye to these changes, because we can and should go further.
About Plugins
One of the most beautiful visions about Web3 is that content creators will be establishing direct distribution channels with their fans, profiting not from advertisers but from the endorsement of users. Plugins, naturally suited with flexibility and modularity, like crowdfund, edition, and splits are supposed to be closer to this vision and also the Web3 composability ideal. plugins are And this is one of the few open-source parts of the Mirror community. And now these are all gone.
About Web3 Subscription
Speaking of composability – for a long time, Mirror has left the choice of subscription mechanisms to content creators and third-party services. E.g. in June 2022, I made a screenshot like this
Creators have the power to choose and own their own distribution channels, which is a great practice for a Web3 native app. However, These are all gone after Mirror came up with their Web3 Subscription.
Now establishing one’s own distribution channels while still publishing on Mirror becomes extremely hard because this Web3 Subscription essentially is owned by Mirror. Yes, that is the essence – using a wallet for authentication has nothing to do with Web3. Users seem to be signing with their wallets for authentication, but all information related to subscription is still stored in Mirror’s centralized server. It is still Mirror that has the ultimate power to decide whom to distribute and not. And no one else can supervise it.
Also, content creators are not “owning” their subscribers just because there is “Web3” in the name of the subscription, or because users need to sign with crypto wallets. In another word, in Web3 Subscription, Mirror does not only monopolize the distribution channel, but also the social graph.
And go back to the subscription itself. Subscription is almost the earliest information distribution mechanism on the Internet. And it obviously can be achieved by filling in an email address, which is even simpler and more elegant. But now it is mandating users to bind their emails with wallets. This has a similar logic to many Web2 products that require a lot of unnecessary but mandatory logins to use some features of the app. Of course, in the world of crypto, we can generate a new pair of keys at almost no cost, but this design is in general contrary to the open ideal of Web3.
About Content
Although Mirror “claims” that the content creators publish is stored on a decentralized platform, as the image below shows, we can see that users’ images are still hosted on Mirror’s server. This basically means that a comprehensive reading experience is still very much dependent on the availability of Mirror’s own service.
Other than that, in order to optimize the publishing experience for users, it introduced lots of extensions to the existing Markdown specification. For example, components like link preview and video are directly extended from the nested images of Markdown. Of course, by using Markdown and storing content on Arweave, Mirror has partly achieved possibilities of reading experience without relying on Mirror itself, but customized non-consensus Markdown syntax without corresponding open-source front-end parsing tools still results in rendering depending on the availability of the front-end of Mirror.xyz.
About Ownership
Though I have this section about data ownership here, Mirror has never claimed that it realizes data ownership. Since ideas regarding Web3, decentralization, and ownership are always discussed together, so I am mentioning this just to clarify that what Mirror does has nothing to do with data ownership.
First of all, Arweave is a decentralized storage platform where content cannot be edited, so content on Arweave only has authorship, not ownership. Ownership requires some financial properties. Essentially, Mirror is just keeping a backup regarding the content of the articles on a decentralized storage.
Other than that, it is Mirror that initializes the transactions for users that help backup content to Arweave, not users themselves. Though it doesn’t affect the content being on-chain, it makes users heavily dependent on the availability and stability of Mirror’s service. Especially considering Mirror is not open-sourcing their backend – users have no self-hosting choice or other service providers to choose from.
So in fact, users do not have the power to freely publish, nor do they own the content they publish.
Epilogue
Rereading the initial blog from the Mirror team, we can still feel their vision and ambition for the Web3 ecosystem. However, probably due to user data analyses or pressure from the investors, Mirror chose to do what’s been done today. I, as a startup founder myself, understand it well from a product decision-making point of view. But I still feel very sorry, towards what’s been happening in the ecosystem, including the recent tornado cash sanction. More or less, we join Web3 with ideals, but now it’s as if the Web3 ideals have been disproved – It’s as if the entire ecosystem has been slapped on the face. And what I don’t want to see is that after being slapped, everyone is still trying his/her best to shift the narrative, acting in the emperor’s new clothes. I have to think about why this is happening – I think we should be able to do better.
—
This dev did come up with a blockchain publish alternative named Xlog later on, which seems free and open source. Github link.