Live data from Hacker News

How I reverse-engineered Google Docs to play back any document's keystrokes

features.jsomers.net

1–10 of 121 posts

Re: How I reverse-engineered Google Docs to play back any document's keystrokes

#3
Funny and interesting. Did you know that firepad.io is a rich-text OT text editor with timestamps? I think it's just what you need. You get a real-time collaborative text editor with a fully featured toolbar, and the exact history you need to replay.

Actually, Firepad does replay the history to display the current version on load (though it also has some snapshotting system to restart faster, but snapshots do not erase the history, they are kept in another location).

Re: How I reverse-engineered Google Docs to play back any document's keystrokes

#4
I find it fascinating to see how much deleting and rewriting the author did on the first two sentences of his Atlantic article. You can see the idea getting rewritten in many ways.

Is this a typical way to write a magazine article? I wouldn't have expected so much time revising the opening sentences before getting the rest of the article in place. (But there's probably a lot of variation between writers.)

Re: How I reverse-engineered Google Docs to play back any document's keystrokes

#6
The creation story for this is really neat. This could be an amazing tool in the school setting, especially for people that teach in university writing centers. This isn't just asking an author for a peek behind the curtain, asking a few questions about what they were thinking at the time of writing, this is Breaking the Magician's Code level stuff!

I am curious to see who is (brave enough?) to show their writing process in all its glory.

Re: How I reverse-engineered Google Docs to play back any document's keystrokes

#7
post #4

I find it fascinating to see how much deleting and rewriting the author did on the first two sentences of his Atlantic article. You can see the idea getting rewritten in many ways. Is this a typical way to write a magazine article? I wouldn't have expected so much time revising the opening sentences before getting the rest of the article in place. (But there's probably a lot of variation between writers.)

[deleted]

Re: How I reverse-engineered Google Docs to play back any document's keystrokes

#8
I remember reading an article about how it's a shame that authors don't use pen/paper anymore, since we can't see their crossouts and things for rough drafts. I'd argue that this would be infinitely superior if authors would give us access to some revision history.

Re: How I reverse-engineered Google Docs to play back any document's keystrokes

#9
post #2

Interesting. Is this a side-effect of the old Google Wave design, which had collaborative documents where you could watch your collaborator type in realtime?

Operational transformations are used by both Google Wave (now Apache Wave) and Google Docs [1]. The basic idea is to avoid latency by making sure all edit operations commute, so patches can be applied out of order to get the same result.

This is not so different from source control except that merge conflicts are handled differently.

Differential synchronization [2] might be easier to implement, though.

[1] http://en.wikipedia.org/wiki/Operational_transformation

[2] https://neil.fraser.name/writing/sync/

Re: How I reverse-engineered Google Docs to play back any document's keystrokes

#10
post #4

I find it fascinating to see how much deleting and rewriting the author did on the first two sentences of his Atlantic article. You can see the idea getting rewritten in many ways. Is this a typical way to write a magazine article? I wouldn't have expected so much time revising the opening sentences before getting the rest of the article in place. (But there's probably a lot of variation between writers.)

I agree, it's really cool to see. I always write like this for the opening paragraph when I'm trying to get the hook right. It sets the tone for the rest of the article, which tends to flow a lot more freely.

Ahh I'm now hyper aware of it and realise I've chopped and changed that ^^ first paragraph a ton of times.

Post reply on HN