Google Docs — Notes
Functional
- Concurrent editing with sub-second sync.
- Cursor + selection presence.
- Comments, suggesting, version history.
- Offline mode + reconciliation.
- Sharing, link tokens, ACLs.
Non-functional
- p99 op echo < 200 ms.
- 100+ concurrent editors per doc.
- 99.99% uptime.
Trade-offs
- OT vs CRDT: OT mature with central server; CRDT decentralizable + offline-friendly.
- Per-doc serialization simplifies correctness; failover challenge.
- Storage: op log → periodic snapshots to bound replay cost.
Refs
- Google Wave / Docs OT papers.
- Yjs / Automerge / RGA papers.
- ByteByteGo "Design Google Docs".