本地优先软件:为什么开发者开始反对云端
过去十五年所有软件都在「上云」,但一股逆流正在形成。
云端软件的代价
数据主权:你的数据真的属于你吗?隐私:所有数据经过服务提供商的服务器。网络依赖:没有网络就无法使用。性能:每次操作都需要网络往返。
什么是本地优先?
数据存在本地,离线完全可用,在线时实时协作,用户拥有数据。关键区别:传统云端是「数据在服务器,客户端是展示层」;本地优先是「数据在本地,云端是同步层」。
CRDT:使能技术
CRDT 允许多用户同时修改同一份数据,合并时无需人工干预就能得到一致结果。Automerge 和 Yjs 是最流行的 CRDT 库。
谁在做本地优先?
Obsidian:笔记以 Markdown 文件存储在本地。Linear:客户端维护本地缓存,操作立即反映。Excalidraw:开源白板工具,支持端到端加密协作。
挑战
商业模式:用户可随时带着数据离开。多设备同步复杂性。搜索引擎索引难题。
未来
未来的软件是智能混合体:数据加密存本地,云端提供同步和增强,用户拥有完整控制权。这是螺旋式上升——从本地到云端,再到「本地优先 + 云端增强」。