Second Brain: Crafted, Curated, Connected, Compounded on 10月02日
CRDTs:实现本地优先协作的强大工具
index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_guoji1.html

 

该文章探讨了如何利用名为CRDT(Conflict-free Replicated Data Types)的分布式系统算法,结合Markdown和纯文本文件,来实现“本地优先”的软件理念。文章指出,许多现有技术如Google Docs和Notion在满足本地优先的七个关键点(快速、多设备、离线、协作、长久性、隐私、用户控制)上存在不足,而CRDTs似乎能全面解决这些问题。Ink & Switch开发的JavaScript CRDT实现Automerge,并结合Dat网络栈构建了Hypermerge,这被认为是下一代协作软件的潜在基础,有望让用户真正掌控自己的数据。

✨ **CRDTs的本地优先优势**:文章强调,CRDTs(Conflict-free Replicated Data Types)作为一种分布式系统算法,能够有效解决现有技术如Google Docs、Notion等在实现“本地优先”理念时遇到的挑战。CRDTs在速度、多设备同步、离线访问、协作、数据长久性、隐私保护以及用户数据控制这七个关键维度上表现出色,为构建真正属于用户的数据所有权软件提供了可能。

📝 **Markdown与纯文本的结合**:CRDTs与Markdown和纯文本文件的结合被视为实现本地优先协作的特别有前景的方案。这种组合利用了纯文本格式的简洁性和Markdown的易用性,并通过CRDTs的强大同步能力,使得在本地文件上进行多人协作成为可能,克服了传统文件共享和云端服务的一些限制。

🚀 **Automerge与Hypermerge的实践**:Ink & Switch开发的开源JavaScript CRDT实现Automerge,以及基于它与Dat网络栈结合而成的Hypermerge,是文章中提到的关键技术实践。尽管作者承认仍需进一步完善,但CRDTs(如Automerge和Hypermerge)已被证明有潜力成为下一代协作软件的基石,其作用堪比互联网的包交换技术或智能手机的电容触摸屏。

💡 **数据所有权的未来**:文章的核心观点在于,CRDTs有望为协作软件带来一场革命,让用户能够真正拥有并控制自己的数据。这种“本地优先”的软件范式,通过CRDTs的强大能力,能够实现比现有云服务更安全、更私密、更持久的数据管理,从而构建一个更符合用户利益的数字未来。

An outstanding essay is on local first and how to resolve the best of Markdown with a local plain text file with a method called CRDT. As the article mentions, Towards a better future. As other technologies like Google Docs, Notion, etc. always lack something, CRDTs seem to solve all 7 points and satisfy the local-first ideas.

1. Fast 2. Multi-device 3. Offline 4. Collaboration 5. Longevity 6. Privacy 7. User control
Files + email attachments
Google Docs
Trello
Pinterest
Dropbox
Git+GitHub
Web apps
Thick client
Firebase, CloudKit, Realm
CouchDB
CRDTs

^22f5c1

Source of above table from above essay

We have found some technologies that appear to be promising foundations for local-first ideals. Most notable are the family of distributed systems algorithms called Conflict-free Replicated Data Types (CRDTs).

It seems that CRDTs are a solution to collaborative local first. Especially interesting with Markdown and Plaintext Files.

Ink & Switch has developed an open-source, JavaScript CRDT implementation called Automerge. It is based on our earlier research on JSON CRDTs. We have then combined Auto merge with the Dat networking stack to form Hypermerge. We do not claim that these libraries fully realize local-first ideals — more work is still required.

However, based on our experience with them, we believe that CRDTs have the potential to be a foundation for a new generation of software. Just as packet switching was an enabling technology for the Internet and the web, or as capacitive touchscreens were an enabling technology for smartphones, so we think CRDTs may be the foundation for collaborative software that gives users full ownership of their data.

In these experiments we tried network communication via WebRTC; a “sneakernet” implementation of copying files around with Dropbox and USB keys; possible use of the IPFS protocols; and eventually settled on the Hypercore peer-to-peer libraries from Dat

# Further Reading


Origin: Plaintext Files, Local-first software: You own your data, in spite of the cloud
References:
Created 2025-01-17

Fish AI Reader

Fish AI Reader

AI辅助创作,多种专业模板,深度分析,高质量内容生成。从观点提取到深度思考,FishAI为您提供全方位的创作支持。新版本引入自定义参数,让您的创作更加个性化和精准。

FishAI

FishAI

鱼阅,AI 时代的下一个智能信息助手,助你摆脱信息焦虑

联系邮箱 441953276@qq.com

相关标签

CRDT 本地优先 协作 纯文本 Markdown 数据所有权 Automerge Hypermerge Local-first Collaboration Plaintext Data Ownership
相关文章