On Friday, March 3, 2017 at 10:55:30 AM UTC, Noah Hall wrote: > > Like oh-so-many things, I implemented this about 1.5 years ago now. I even > gave 2 talks on it. With Elm 0.17, you can implement it in under 30 lines > of code, using firebase as a host. Sadly, the recordings of both the talks > I gave on it are lost. But you can read it here -> > https://github.com/eeue56/talks/tree/master/experiments_in_elm#the-future-of-debugging-with-elm >
You are oh-so-ahead-of-the-curve! Don't suppose you still have the code for it lurking in some github repo by any chance? I thinking that a straightforward replay of messages across the whole application will probably not be a magic solution to writing a multi-user collaborative application. For example, in code I am working with currently, I render some stuff in a fixed position overlay, and its position will depend on how the client window is sized and scrolled - so a straightforward replay will likely see things end up in the wrong position. I think for collaborative work I would need to look into Operational Transformation (https://en.wikipedia.org/wiki/Operational_transformation) which is the technique that made Google Wave work. The idea would be to replicate a carefully chosen subset of events across all clients, and to ensure that they communicate the users intentions rather than details which are wholly specific to one client rendering or another. OT also deals with interleaving events without applying a global sequential ordering. I thinks Elms update-model-view structure would be very convenient for OT. It still might be fun to try out a straightforward event replay across clients with 30 lines of code though. -- You received this message because you are subscribed to the Google Groups "Elm Discuss" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
