  OT (Operational Transformation) was invented for supporting real-time
co-editors in the late 1980s and has evolved to become a core technique used in
today's working co-editors and adopted in major industrial products. CRDT
(Commutative Replicated Data Type) for co-editors was first proposed around
2006, under the name of WOOT (WithOut Operational Transformation). Follow-up
CRDT variations are commonly labeled as "post-OT" techniques capable of making
concurrent operations natively commutative in co-editors. On top of that, CRDT
solutions have made broad claims of superiority over OT solutions, and
routinely portrayed OT as an incorrect, complex and inefficient technique. Over
one decade later, however, OT remains the choice for building the vast majority
of co-editors, whereas CRDT is rarely found in working co-editors.
Contradictions between the reality and CRDT's purported advantages have been
the source of much confusion and debate in co-editing communities. Have the
vast majority of co-editors been unfortunate in choosing the faulty and
inferior OT, or those CRDT claims are false? What are the real differences
between OT and CRDT for co-editors? What are the key factors and underlying
reasons behind the choices between OT and CRDT in the real world? To seek truth
from facts, we set out to conduct a comprehensive and critical review on
representative OT and CRDT solutions and working co-editors based on them. From
this work, we have made important discoveries about OT and CRDT, and revealed
facts and evidences that refute CRDT claims over OT on all accounts. We report
our discoveries in a series of three articles and the current article is the
first one in this series. We hope the discoveries from this work help clear up
common misconceptions and confusions surrounding OT and CRDT, and accelerate
progress in co-editing technology for real world applications.
