Working code for Operational Transformation/CRDT hybrid

Languages and libraries

collaborative editing algorithm

SHOW HN2017

130points
28comments
#321of 2,242 in 2017
Top 15%of 2017 by points

How HN took it

CuriousMostly questions and neutral comments

1 positive, 4 neutral or asking, 1 mixed, 0 critical, out of 6 comments about the project. Thread score +0.08.

Docs: 1 for, 0 against

The thread, comment by comment

Each row is a top-level comment and its replies, in HN's order. Select a cell to open that comment on HN.

positive neutral or mixed critical about another commenter or something else the maker

What HN said

What people liked

  • Interesting, cool work on the hybrid approach

    From 3 comments
    • This is really cool! Have you discussed this work with Joseph Gentle, author of ShareJS/ShareDB? (He's the one who first exposed me to the concepts and seems like a sharp guy.)
      Mizza on HN
    • This is awesome! I think I missed it but is there a link to the JavaScript in the article?
      pspeter3 on HN
    • @raphlinus, fantastic work! I'd love to connect because I am also one of those people who has been working on CRDT/OT algorithms for a couple years now. I wound up building a…
      marknadal on HN
  • Accessible article with working code

    From 1 comment
    • The linked article here is surprisingly accessible! I would add just one small tidbit of advice that might help interested people get up to speed: skim the paper, then look at…
      sounds on HN

Objections

  • Composing-operations approach is slow compared to the tree solution

    From 1 comment
    • Aw I'm HN-famous! I'm sorry I didn't see this post sooner. I'd love to catch up for virtual coffee if you're interested - check your email. I'm not sure if your tree structure is…
      josephg on HN
  • Not technically a CRDT, still OT with extra properties

    From 1 comment
    • Aw I'm HN-famous! I'm sorry I didn't see this post sooner. I'd love to catch up for virtual coffee if you're interested - check your email. I'm not sure if your tree structure is…
      josephg on HN

Requests

  • Tutorial on operational transformation for beginners

    From 1 comment
    • I would love a good in-depth tutorial on operational transformation but so far haven't found one that is satisfactory (for a complete beginner). Maybe I've been spoiled with all…
      mochidusk on HN
  • Hosted OT service with SDKs

    From 1 comment
    • I wish someone should offer a "firebase for OT" SAAS that offers an API, SDKs for JS/iOS/Android and a few working samples. Every time I want a collaborative OT like environment…
      tarr11 on HN

Questions

  • How does OT differ from operation-based CRDT?

    From 1 comment
    • Great stuff! Would you mind elaborating on how does OT differ from operation-based CRDT? They seem very similar, one described as functions , the other as a data type with…
      polskibus on HN
  • How does the approach handle rich text?

    From 1 comment
    • @raphlinus, fantastic work! I'd love to connect because I am also one of those people who has been working on CRDT/OT algorithms for a couple years now. I wound up building a…
      marknadal on HN

Alternatives named

  • Realm

    From 1 comment
    • Realm is pretty close (it is not offered as-a-service, but they have a free version you can run yourself).
      jinjin2 on HN
  • GUN

    From 1 comment
    • gun is also pretty close, http://gun.js.org/ , especially if you watch / read the video series on how the CRDT algorithm and security work in arbitrary P2P environments. The base…
      marknadal on HN
  • ShareJS/ShareDB

    From 1 comment
    • This is really cool! Have you discussed this work with Joseph Gentle, author of ShareJS/ShareDB? (He's the one who first exposed me to the concepts and seems like a sharp guy.)
      Mizza on HN

Category, keywords, summaries and labels on this page were made by AI (Thread Reader v2) and not checked by hand. Each point links to the comments it came from.

Add a badge to your READMEShown on HackerShow
[![Shown on HackerShow](https://hackershow.org/badge.svg)](https://hackershow.org/show/13803843)