Microsoft’s Fluid Framework for Collaborative Realtime Editing

I wrote “Collaborative Text Editing” a few weeks ago. Microsoft’s take on this matter is Fluid Framework (demos; Github). Actually, it is “a collection of client libraries for distributing and synchronizing shared state,” but it seems MS uses it primarily for implementing collaborative realtime editing. In fact, I found out about it in “Collaborative real-time editor – Wikipedia.”

According to its FAQs, Fluid relies on a Total Order Broadcast (“TOB” hereafter), not on either Operational Transforms (OT) or on Conflict-Free Replicated Data Types (CRDT). Supposedly TOB is closer to the latter than to the former; the difference with CRDTs is the existence of its assumption that update-based operations are ordered. Fluid clients always require a Fluid server for syncing amongst them, not just at the initial setup time, so it is not a P2P solution. However, it is not that you have to use one preexisting server; you can host a Fluid server by yourself.

A quick idea (without fully understanding all the intricacies): isn’t it possible to combine TOB and OT or CRDT? In this modern computing world, total ordering can probably be achieved most of the time if all parties are online. It is when there are parties that are not online that’s problematic.

It appears Microsoft 365 allows only real-time “co-authoring,” which seems in line with what Fluid is capable of:

Postscript: I received a comment on Twitter from Mr. Sam Broner, who is actually working on Fluid. This came as a complete surprise to me!

A very nice comment from Mr. Sam Broner

A very nice comment from Mr. Sam Broner

Microsoft’s Fluid Framework for Collaborative Realtime Editing」への3件のフィードバック

  1. ピンバック: Collaborative Text Editing | あくまで暫定措置としてのブログ
  2. ピンバック: Operational Transformation or OT | あくまで暫定措置としてのブログ
  3. ピンバック: Quill Delta | あくまで暫定措置としてのブログ


以下に詳細を記入するか、アイコンをクリックしてログインしてください。 ロゴ アカウントを使ってコメントしています。 ログアウト /  変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト /  変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト /  変更 )

%s と連携中

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください