在实现 redefine publishing 的愿景的路上,Mirror 有过很好的探索,但是我们还想走的更远。
通过授权签名的方式,Mirror 在可以验证数据可信的同时实现了流畅用户体验;将用户发布的内容存储在 Arweave 上使数据全部可以公开访问,然后配合 collect 的机制让读者可以在区块链上将内容资产化;通过 burn 掉 $WRITE 帮助用户获得一个 ENS 并且在 Mirror 平台上获得一个域名...... 这些设计确实都非常精妙,给过我们很多对构建一个 Web3 native app 的启发。但是最近读到 Mirror 的这篇公告,我感受到一些梦正在破碎。
今天的 Mirror 确实做到了 sharing ideas that catalyze communities in web3,但是和最初的 redefine publishing 的梦已经越走越远了。曾经我们对 Mirror 寄托着用 crypto 技术重新定义整个 publishing industry 的期待,而现在,Mirror 变成了仅仅是我们讨论着 Web3 的一个写作平台。这些变化我们不能视而不见,因为我们应该也可以走的更远。
关于 Plugins#
Web3 最美好的愿景之一就是内容创作者可以直接和用户建立内容分发的渠道,可以不依赖广告商直接从用户的认可中获得收益。而 crowdfund,edition,split 这些插件的出现,原本是更靠近这个理想的一步。此外,插件系统天然就有灵活性和模块性,非常符合 Web3 的可组合性的理想。而且这是 Mirror 社区为数不多开源的部分。但是现在这些都没有了。
关于 Web3 Subscription#
说到可组合性,很长一段时间 Mirror 都是把订阅机制的选择交给内容创作者和第三方服务,比如 2022 年 6 月的时候我曾经有截图如下:
创作者有权利选择和拥有自己的信息分发渠道,这本来是非常好的 Web3 native app 的实践。但是在 Mirror 推出了自己的 web3 subscription 之后这些消失了。
基于 mirror.xyz 创作但是同时建立自己的内容分发渠道变得很困难,因为这个 web3 subscription 本质上是被 Mirror 所拥有的。是的,本质就是这样,使用 wallet 鉴权和 Web3 没有什么关系。用户似乎使用钱包签了名授了权,但是这些所有的 subscription 的信息仍然是存在了 Mirror 的中心化服务器里,仍然是 Mirror 有最终权利决定给谁分发不给谁分发,分发给谁不分发给谁,并且其他人无法对此监督。
同样也并不因为 subscription 的名字里有 Web3,或者是用户需要使用钱包签名,内容创作者 “拥有” 了他 / 她的 subscriber。换句话说,在 Web3 Subscription 中,Mirror 不仅垄断了分发渠道,还垄断了关系链。
再说回 subscription 本身,subscription 几乎是最早期的互联网的信息分发方式了,而它明明可以有只填一个邮箱地址的这种更优雅简单的解决方案,但现在一定要绑定邮箱和钱包才能进行订阅。这反而和很多 Web2 的产品的那些没有必要的” 必须 “登陆才能使用部分功能有着类似的逻辑。当然在密码学的世界里,我们可以几乎没有成本的新生成一对密钥,但是强制绑定邮箱和钱包地址的设计总归是和 Web3 的开放的理想有些背道而驰。
关于 Content#
尽管 Mirror “声称” 创作者发布的内容存储在了去中心化平台上,但是如下图,我们可以看到用户的图片其实还是在 Mirror 自己的服务器上托管的。也就是说完整的阅读体验仍然是非常依赖于 Mirror 自身服务的可用性。
此外,Mirror 为了优化用户的创作体验,对 Markdown 格式做了很多自定义的扩展,如 link preview,video 等,都是直接使用了嵌套图片的 Markdown 语法。当然选择 Markdown 语法并且将内容结构化解析再存到 Arweave 上,已经很大程度上做到了阅读体验可以不依赖 Mirror,但是丰富的非共识的自定义 Markdown 语法且没有对应的开源的前端解析工具,仍然让内容的渲染部分依赖 mirror.xyz 前端的可用性。
关于 Ownership#
虽然我在这里列了数据所有权这一条,但是 Mirror 其实也从来没有声明过自己实现了数据所有权。因为 Web3,去中心化,所有权这些概念常常一起被讨论,所以我提这一点只是想更加清晰的说明 Mirror 的做法和数据所有权没有什么关系。
首先 Arweave 作为一个内容无法被修改的去中心化存储平台,本质上是只有 authorship,没有 ownership 的。ownership 需要一定的金融属性。本质上 Mirror 的做法只是把文章的内容在一个去中心化存储做了备份而已。
此外,是 Mirror 发起的交易帮助用户把内容存到了 Arweave 上,而不是用户自己发起的交易。这虽然不影响验证最终上链的内容的来源,但是使得用户发布内容的体验高度依赖 Mirror 本身服务的稳定性了,尤其是考虑到 Mirror 并没有开源他们的后端服务 —— 用户除了 mirror.xyz 没有自建的选择,也没有其他服务商可以选择。
所以实际上用户既没有拥有自由发布内容的权力,也没有真的拥有最后发布的内容。
后记#
重读 Mirror 团队最初的这篇 blog,我们仍然能感受到那份热烈的对行业的憧憬和壮志,但也许是出于分析用户数据得出的结论,又或者是来自投资人的压力,Mirror 最终选择了今天的这些做法。我自己也是一名创业者,从产品决策的角度来说其实非常理解。但是我仍然非常的遗憾,包括最近对 tornado cash 的制裁事件。我们或多或少带着理想来到这个行业,但现在就好像 Web3 的理想被证伪了,就好像整个行业被扇了一巴掌。而我更不愿意看到的是,大家被扇了一巴掌之后还在拼命的把故事圆过去,演着皇帝的新装。我不得不思考为什么会这样,我想我们应该可以做的更好的。