News for hackers. Stuff that matters.
Re:Show HN: Rustpad, a self-hosted online collaborative text... by sreeramb93 on Saturday June 05, 2021 @05:26PM (#27408579)
I really like the architectural decisions made in the project. OperationalTransform library may need some work like testcases and add more powerful constructs. Is there any theory behind it? Maybe add a link to it.

I believe this project can become a popular opensource project. It is really fast.

Re:Show HN: Rustpad, a self-hosted online collaborative text... by ekzhang on Saturday June 05, 2021 @05:47PM (#27408701)
Thanks! Operational transformation is the same technology that powers Google Docs. It's been studied in academia for real-time collaboration since the 1990s and has eventual consistency guarantees. See the Wikipedia article: https://en.wikipedia.org/wiki/Operational_transformation

The Rust operational-transform library was not written by me, but it's listed on crates.io by spebern, and it's worked wonderfully so far. It seems to be a very close port of ot.js (https://github.com/Operational-Transformation/ot.js). The text transformation algorithm isn't very complicated (<700 SLOC including tests), but there's probably room for optimization!

Re:Show HN: Rustpad, a self-hosted online collaborative text... by zingplex on Saturday June 05, 2021 @07:22PM (#27409258)
Congratulations on shipping, what you have is very slick.

Quick question, not trying to start a flame war just genuinely curious. Why did you pick OT over other approaches to realtime collaborative editing such as CRDTs?

Re:Show HN: Rustpad, a self-hosted online collaborative text... by josephg on Saturday June 05, 2021 @10:01PM (#27410075)
I'm not the author but I've written a lot of OT code. OT works great when you have a centralised server. Its fast and simple. I (and others) are working on it but there aren't many production quality, fast CRDT implementations in rust and other languages yet.
Re:Show HN: Rustpad, a self-hosted online collaborative text... by ekzhang on Saturday June 05, 2021 @10:11PM (#27410125)
I'm also curious about CRDTs, but after making this project, I agree that OT seems to "just work" performance-wise and are super simple.