Open Aryaman1706 opened 3 years ago
Hi @Aryaman1706, First of all, thank you so much for taking out the time to create this issue. π
We will try to analyze these algorithms and will get back to you shortly, that what we can do in this scenario. Also, @nehaparmar99, can you please look into this issue and share your reviews π
So I have read more on both these algorithms to figure out which one would be better. Links in my previous comment depicts why do we need any of them.
Here is a very nice article comparing OT with CRDT. It covers up most of the things without going into technical details of algorithms.
It basically boils down to this:
But we can cut out the operation logs in OT by just restricting it to a limited number and deleting all of them if there is only one active user editing the document.
I would love to discuss it further. Thank You.
@Aryaman1706 I went through both of these algorithms and they are pretty amazing. So, talking about OT, we currently don't have a central server to transfer data from 1 peer to another. We have implemented socket programming, keeping web-RTC in mind. So if we use OT in our express(backend), do you think it will increase latency, and socket communication speed will decrease eventually? Also here is my discord username - kothariji#7469, we can connect there for further discussions.
Happy Contributing :raised_hands:
please assign me this
@kothariji ??
Hey @subhangi2731, before assigning this issue to you, can you please tell me, which algorithm are you going to use for conflict resolution, also what workflow are you going to follow, and implementation details about frontend / backend.
@kothariji The algorithm which I will use is Operational Transformation which will allow systems to collaboratively perform a common task and then the technique will allow users to keep track of operations performed on shared data as a means of keeping track of changes in the data.
I need to read the code more of the project then I will share u implementation details of frontend/backend
Is your feature request related to a problem? Please describe.
Describe the solution you'd like
Motivation
Are you willing to contribute to this issue?
Describe alternatives you've considered
Additional context