I use operational transformation (OT) for undo/redo and collaborate editing in an editor that I wrote (for) myself. Inspired by Scrimba I made it so I can "record" tutorials by adding time stamps to the OT undo/redo history. Then when replaying the tutorial/session (which is also voice annotated) you can write code as well while the record is playing thanks to the OT.