Luke Kanies:ATProto 的失望与期待
Building on ATProto
上周在柏林的 Local First Conference 上,ATProto 的普及程度让我惊讶。我渴望它能成为下一代应用的基石,实现数据互操作,但现状令人失望。我理想中的应用应支持本地优先数据,让用户完全掌控自己的评论数据,而非像 Yelp 那样被平台锁定。同时,系统需兼顾隐私,让像我妻子这样不愿公开分享的人也能记录生活。然而,ATProto 目前设计为纯公开协议,其正在设计的私有数据方案却显得割裂,迫使开发者构建两套系统。这违背了数据本质统一的初衷,让互操作性愿景蒙上阴影。
我根本不同意公开广播数据与受权数据存在本质区别这一观点。
HN 评论区
92- pfraze
Luke 对权限数据提案的反馈很有意思。目前的提案在权限上带有一种位置属性,即记录的 URI 反映了访问控制,我能理解为什么这会让人感到突兀。我正在和团队讨论我们是否认为这一点可以改变,以及做出这种改变的成本是多少。我们仍处于收集反馈阶段,所以听到大家的真实感受是好事。
关于他的另一个顾虑,我本希望将 atproto 打造成一个 localfirst 协议——毕竟 atproto 团队正是来自这个领域——但我们必须有所取舍,决定在哪里消耗我们的复杂度预算。我不会说这对生态系统来说是死路一条;你可以结合使用像 iroh 这样的工具和 atproto 来共享身份——通过 did 或域名拨号连接用户——然后在状态准备好离开你的本地同步网格时,将其提交到 atproto 仓库。也许这类功能会出现在协议的后续版本中。但工程往往涉及权衡,对于 v1 来说,这就是我们必须做出的权衡之一。
- rglullis
> 无论是我唯一能看到的人,还是被广播到屋顶上,餐厅评论就是餐厅评论。我和读书俱乐部分享的书评,和我与妻子分享或发布在我网站上的书评是完全一样的。
这只有在完全忽略社会背景以及主体(评论者)、客体(被评论对象)和受众之间关系的情况下才成立。作者确实提到了自己是自闭症患者,所以他可能不这么看,但对我来说,拥有一个系统至关重要:在这个系统中,我为狭窄受众记录的任何内容都不会向公众开放。
- MarceColl
我一直在 ATProto 上构建一个桌游社区。这个想法的核心是试图在线营造本地俱乐部的氛围,而不是在落地页上直接放“立即开始”(虽然如果你想玩也可以立即开始),而是围绕俱乐部来组织。我还想摆脱单一游戏导向的社区。我玩围棋和国际象棋,我很希望俱乐部能容纳混合游戏。你可以创建联赛、锦标赛等等。
作为这一点的延伸,我一直在构建一种小型语言来制作游戏(带有好用的时间旅行调试器和自动回放功能),灵感来自 Elm。围棋和国际象棋都是基于此构建的,你可以 fork 它们并修改规则。想编写一个新的国际象棋变体?尽管去写!想编写一个你想尝试的全新游戏?尽管去写!
我对 ATProto 非常兴奋的一点是,因为所有游戏都在其上广播,并且每个游戏都共享一套基于回合制的回放核心系统(以及带有分支的复盘系统),所以可以在其上构建软件来进行 AI 分析或回放查看。我的应用程序可以在我不添加 API 的情况下被扩展,这个想法非常令人兴奋,也非常符合我想要将系统发展的方向(社区是核心原则)。
- ekosz
读到这类文章,我确实觉得人们正试图把方钉(他们的应用)硬塞进圆孔(ATProto)里。ATProto 的设计初衷是所有数据都是公开的。你将公开数据写入用户的 PDS,然后任何应用程序都可以读取这些公开数据并加以利用。如果所有数据默认都是私有的(加密的?),那就违背了 ATProto 一半的目标。
想象一下,有人在 ATProto 之上启动了创业公司 A。他们筹集了一些资金,获得了一些用户,有些人很喜欢,但最终他们倒闭了。如果数据是专属于该服务的私有数据,那么这些数据就会随着创业公司的倒闭而消失。但如果所有数据都是公开的,未来的创业公司 B 就可以读取这些旧数据并加以利用。作为用户,这为我尝试新服务带来了巨大的实用性和安全感。
如果你试图构建一个以本地优先、主要私有的服务,我认为 ATProto 并不是合适的工具。
- sbt
免责声明:我没有仔细看过权限数据提案,但我对 atproto 还算比较了解。
退一步看,很明显权限数据是由现实世界的使用案例驱动的(Bluesky 需要私信,Tangled 需要私有仓库等)。然而,我认为与现有 atproto 的协同效应必须相当显著,才值得开发另一个加密空间规范。我们已经有各种双棘轮协议,Matrix 正在经历巨大的爆发。从应用开发者的角度来看,是否一切都需要由 atproto 来处理,或者我们可以接受 atproto 仅用于公开内容?