HNHacker News
TopNewBestAskShowJobs

phedkvist

74 karma · joined April 1, 2019

submissionscomments
phedkvist··on Show HN: Kalla.app – Put some fun back in Strava
Interesting idea. I rarely add any description to my activities, rather I just use to keep up to date with friends and their progress. I would like to see an app where you can plan a route together before a run let's say.
phedkvist··on [dead]
Hi, I would like to share this collaborative editor I have created using the CRDT WOOT algorithm as described in the paper Data Consistency for P2P Collaborative Editing. You can try it here. (I added some visualisation of what happens in the algorithm, which is the array of value above.

https://crdt-woot.herokuapp.com/

It's more of a proof of concept, which would need some more improvements in order to be production ready.

phedkvist··on OT and CRDT trade-offs for Real-Time collaboration
Thanks for linking to my blog post :)

"This is the exact "split node" scenario I described earlier; applying bold near the start of a text node necessarily has to split the text node into three parts (before, bold, and after)."

Not sure why you split it up into sections. In my CRDT implementation, I would add meta-data to each character, with the boolean property which is either bold or not. It's certainly cumbersome to keep the cursor at the right place when inserts are being made, but it's doable. https://pierrehedkvist.com/posts/1-creating-a-collaborative-...

I personally never understood how OT actually works, clearly, Google Docs and others find it useful. But to me, CRDT has more solid proof and reasoning behind it, and it is easier to comprehend. https://medium.com/@pierrehedkvist/creating-a-collaborative-...

phedkvist··on Use Simple Words and Phrases
I have been reading "On Writing Well" recently, and the same mantra is echoed throughout that book. Simple and easy words above more complex and seldom used words.
phedkvist··on Creating a Collaborative Editor
Maybe I should have phrased it better. OT was first introduced a long time ago, a quick search on Google Scholar and you will find papers from the 90s. Since then the algorithm has evolved and improved. I did not say it was better. I think CRDTs are easier to understand, but that's my opinion :)
phedkvist··on Creating a Collaborative Editor
Maybe I should clarify. From my understanding OT is correct when used with a client-server model. But if you have read the research a lot has happened since the first OT paper was published. The OT algortihm works well even for Google Docs and other open source solutions.
phedkvist··on Open source collaborative text editors
I made a collaborative graph editing app using CRDTs in my master thesis. You can read about it here http://liu.diva-portal.org/smash/get/diva2:1292743/FULLTEXT0...
phedkvist··on Creating a collaborative app using CRDTs
I think CRDTs can be applied to more than just documents, and they can for sure be applied to client-server communication, and peer-to-peer for that matter.

I used CRDT to create a collaborative graph tool using the 2P2P-Graph. There is a pretty good Wikipedia page about CRDTs, which I recommend you read. It can definitely be applied to many use cases were the datatypes such as counters, sets, maps, sequences, etc are used.

phedkvist··on Creating a collaborative app using CRDTs
I agree it is quite difficult to explain these concepts in simple terms. I spent a lot of time reading academic papers, as well as reading blog posts in order to grasp these concepts.

Good luck with your articles, where can I read them once you have published them?

phedkvist··on Creating a collaborative app using CRDTs
Thanks for the feedback.

Great that you learned something. The CRDT papers don't explain the join-semilattice that much, it's only mentioned briefly, even though it's important in order to understand the theory behind CRDTs.