Hacker News new | past | comments | ask | show | jobs | submit login
Draft. Version control for writing (ninjasandrobots.com)
136 points by revorad on Jan 31, 2013 | hide | past | favorite | 58 comments



This looks cool, but my immediate thought was that the documents most in need of version control (and Word offers version control, but its hardly as elegant as what this purports) are the most complex ones: annual reports, long-form works, things that require the complex document elements that make Word feel so bloated sometimes. (Not to mention that these are documents that need to be worked on offline.)

Branding this service as a webapp seems like it's going to make those use cases impossible.


Thanks! Well so the inspiration for this came from just trying to get my wife to proof read my blog posts. Even a 600 word post ends up becoming a pain. I'd end up sending her a google doc, or email or whatever. She would end up copying and pasting it into a word doc and then resending to me so I could review her changes and only manually try to merge in the things I wanted.

I've found that even a couple friends can get a whole lot of use from Draft to edit something simple. I hear you though, and am definitely paying attention to the use cases. We'll see how it shakes out.


I've been running into this problem while working through marketing docs/accelerator apps/etc. with a new startup. There's still a huge hole in collaborative document editing. Tools are either too simple to do this well (thinking of hackpad) or too complicated for quick uses (editing mode in word/comments in google docs).

An elegant solution for this kind of back-and-forth editing dialog on short-form copy would be huge. Surprised it doesn't exist already. And the concept of one-click "commits" is a powerful one for versioning -- makes it much easier to find things than google's atomic "save everything" version control.

Nice work. Look forward to giving this a try.


Why didn't she highlight the change she wanted to make in google docs and make a comment on it? That would have been easier for both of you, I think.


(Not the OP) Because that takes too much effort. For big pieces of general criticism maybe, but for rearranging a sentence or fixing a typo adding comments in the margins has too much overhead.


as a potential user, I was wondering if you have anything planned for offline use. Many times writers / blog drafters will take themselves offline to jam out some drafts.

If there's a local store that can keep version control distributed it would be great.


I think this would benefit from following a git/github model. Draft could be the local tool that creates and manages the document, and there could be an associated web service that helps with the collaboration. At the very least, this could be represented as an offline web application (similar to Google Docs).


Perforce has an Office plugin (P4OFC) to manage documents, might be a little more appropriate for enterprise work.


Exactly. I really want something like this, but that allows me to use whatever word processor or text editor I want (offline!) to do the actual writing.


Looks good. Similar in principle to how a lot of newspaper production systems (Quark Publishing System/Quark CopyDesk, Atex etc) work - store major revisions alongside autosaves.

One comment: the diff screen is a bit too programmery. "har" vs "av" is impossible to accept/reject just from looking at it - you have to parse the context and work out what the words are. "Sharing" vs "Saving" or "Insanley" vs "Insanely" is much easier to immediately yes/no.


Very true. Thanks for the feedback. I'll see how I can correct that.


This is a great idea. Microsoft Word-style version control (track changes) is not nearly as simple and powerful as Git (assuming you have already wrapped your head around Git, which isn't a reasonable expectation for many non-programmers).

I would love to have something like this for collaborating with non-technical authors on academic papers. Having a granular view of changes in an academic paper (or really any technical document) is really important, especially if you have grad students or research assistants making changes that need to be approved by the principle investigator.

Google Docs sort of does this, but it doesn't support any kind of citation management. (All citation management possibly excepting Papers2 sucks; BibTex seems too technical; but this is a whole other thing.)

But this looks way better than version control in Google Docs. If it really is easy to use and it works with some system for citation/bibliography management, I think academics would love it.

(Academia is the place where I personally see the greatest need for this. I don't mean to ignore or detract from other use cases that may be more prevalent.)


Totally agree with you on academia needing this. I know a bunch of people (including myself) who are interested in trying new ways of authoring papers, theses etc - whether it's MarkDown, latex etc. But once you need to collaborate with someone else, or even receive feedback etc (which as a grad student is pretty much always), we just end up back in Word.

I think building something on the backend of Git would be awesome. My prof is pretty computer savvy and open-minded, but I am not going to be able to get him to do a pull request for every change... and neither would I want to. You need to view the changes in-document, easily do comments etc. I'm looking forward to seeing people try to crack this nut!


Have you tryed LyX?

from http://www.lyx.org/Features:

    Document management
        Change tracking
        Support for external version control systems (RCS, CVS, SVN)
        Comparison of different versions of the document
        Branches for having different versions of the same document
        Yellow sticky notes


I've tried LyX. It's not bad, but the killer is, as houshuang says, collaborating with other people. It's not simple or slick enough that I can ask my supervisor to set it up to add his comments on a paper. I sent him PDFs for a while, but when I couldn't get the Bibtex references formatted quite right, I gave up and used a word processor. I'd love to see something better in this space.

(I'm not the poster you replied to, I just have a similar view)


FWIW I use Zotero for citation management and have found it nothing but awesome.


Zotero looks awesome, definitely going to check it out.


Have you considered an industry vertical? Version control is a huge-beyond-huge annoyance in the legal profession, or frankly, in any profession involving group work on contracts. I imagine you could make a decent chunk of change going the enterprise route and selling this to big firms, or licensing it to schools, or what have you.


Working in an industry where Manuals and Policy/Procedure documents dictate, I would also love this.

Eg. in the heavily regulated airline industry, Framemaker still persists as standard. Changes are typically made against a PDF as comments (handwritten or PDF annotations), attached to a paper "Manual Change Request" form and signed by manual owner and passed to a Tech Writer to replicate the change in Framemaker. Turnarounds in order of months are incurred, and where the regulator is involved, I have seen years.

A Git-style version control workflow would work well: - allowing collaboration - change documentation and approval is built in (even better if regulator can use it) - publishing smaller amendments while larger ones develop - reuse modules across manuals (eg. org charts)

However, uptake will occur when the learning curve is reduced...such as a well designed web UI


Pull requests seem especially apt.


If they aren't interested in using some sort of existing wiki or collaboration software or saas, what would make them interested in something like this?


I know nothing about the legal profession, but my reaction would be because wiki software sucks. I'm a designer and a developer and I can barely figure out how to edit a Wikipedia page.

Another question (which I don't know the answer to) is how many developers had never used version control until they were introduced to Github?

I bet there are some seriously big interaction improvements you can make to the average enterprise "collaboration" software.


It wouldn't take that much work to change markup languages, or fix the UI of something like mediawiki or dokuwiki to something that's more amenable to those industries, if they don't like the defaults. Mediawiki might be pretty locked into a database for page storage, but dokuwiki has a git backend plugin, and some other wiki software even supports git backends natively.


Hopefully developers that had never used version control until Github had never written software outside of the classroom.


May your hopes never be shattered, my sheltered friend.


Why not just build an editor that works off git? Then you could abstract it from the user and leverage all the existing ways of sharing text like github and bitbucket.

"But even as a developer it’s full of headaches." is also just plain not true.


Exactly. I'm an academic who uses and promotes git (for research, analysis, and writing). My colleague and I are building a markdown editor with git support. We're going for exactly what you describe. git is abstracted from the user and they just provide GitHub credentials to have everything stored in a repo.

Non programming types use the gui and programming types can directly interact with the repo.

See (super early version) here: https://github.com/yoavram/markx


That sounds great, I would love such a tool.


See: http://prose.io/

Text editors is new hip. Saw ten launch the past few weeks. Before everyone made todo lists apps.

Having that Bijan quote for social proof also rubs me the wrong way. Startuping is more insidery politics these days.


Oh man, really? Sorry about that. It's just been very exciting to work on this. And that Bijan quote came from the very first user test I did on this with a complete stranger. I've had a lot of stumbles on new projects recently, and so that quote and other feedback I've gotten on Draft have been some very much needed motivation. And I definitely hope my stuff doesn't feel very insidery. I'm pretty open about stuff going on my blog.


> "But even as a developer it’s full of headaches." is also just plain not true.

OP's statement is a subjective assessment. It's neither true nor false.


lflux[0] is a new (open-source) journalism effort/plattform, using similar version-control for their articles in order to provide a different view on how online-journalism could work.

The core idea (as far as i understand it) is to have topic-based journalism and a single, evolving main-article per topic. This article always represents the status quo and received updates/changes/additions when news happen, instead of publishing multiple event-based articles over time and relate them by means of categories, tags or else. A "timeline" will give an overview on how the article evolved (using a diffing algorithm similar to the one mentioned in TFA).

So if you want to read about the current state of affairs of - say - Fukushima, you wouldn't have to search through the latest x articles to find out what's going on. You'd rather check the (singleton) "Fukushima" article and could see the chronological changes in its timeline.

They have a showcase-install online [1], which covers a few topics ([2], german) and is in fact maintained and authored by participating journalists.

[0] https://github.com/luminousflux/lflux

[1] http://onon.at/

[2] http://onon.at/wehrpflicht/


Another related one is http://interior.substance.io/, an "open platform for collaborative composition and sharing of digital documents."


This is why I use Scrivener - it's modular.

Scrivener with Track Changes and Etherpad-style collaborative editing would be perfect to the point where nobody would use anything else.


While this looks kind of interesting, I've seen a large number of things that fall into this vein, and a few concepts seem to be missing (conflict resolution being a big one). Independent of that, though, when I first started working on my book, there were two tools I quickly needed but could not find. The first being a way to save references that linked outside of the document without being part of the document (think fact checking, reference materials, etc.). The second was a way to edit the document(s) and be able to compose sections/components together at a high level. I ended up using muse mode for emacs and fossil as an VCS (the wiki is particularly helpful for collecting resources). What I ended up doing is several files on different topics, then one for each chapter and then one for the book as a whole. Then it's versioned text copy and pasted between files. If anyone has a better system for linking to references and managing the structure of the book, I'd love to hear it.


Did you consider Scrivener? I'm not sure about version control, but it's supposed to handle references and definitely handles the composition-from-smaller-parts thing. It's designed for long works. I used the windows beta for a fairly long school paper, and it helped a lot.


I had looked at it, but none of the writer friends I have had any experience with it. I'll give it a shot now that it has had a recommendation from someone who has actually used it.


I spend a lot of time writing technical documentation, in Org-Mode, LaTeX, and so on. In order to collaborate efficiently with others, we need to have a strict line wrap policy (one line = one sentence), so that diffs are easier to understand (e.g. under emacs, auto-fill breaks paragraphs formatting). Since Draft is designed for writing, how does it handle diffs?


I keep notes in Vim+Dropbox on my laptop and Byword+Dropbox on my phone for easy syncing and simple, distraction-free editing. A webapp would be a great alternative if it's also usable from a phone. A single interface for everything, always kept up to date, with no distractions. If it could export to a local file for backups (or running notes through Markdown, if they become coherent enough), even better.

Congrats so far: it looks beautiful. And I have a few writer friends who would probably find something like this useful, especially the collaborative editing parts.


For collaborative editing, getting change tracking right is important - I literally could not do my job without it. I listed three parts of what I called my change-tracking minimum in defence of a qn I asked at the tex.sx:

http://tex.stackexchange.com/questions/8704/can-lyx-syntax-f...

If you can get change tracking to work nicely with modern distributed version control, you are a star. I have lots of ideas...


This sounds similar to http://revisionator.com. It's also a web based editor with built in revision control. And, it has moderated documents so you can selectively accept / reject changes.

Someone mentioned conflict resolution. When someone does an unclean merge, it steps you though conflict resolution with the GUI.

It even has branches with merging. (Try copying a document and it creates a branch.)


Normally when I ask people to review a draft, I put it into an etherpad. Etherpad also features version control to the letter, concurrent editing, tagging of versions, editor colors.

Sure, for anything that requires formatting, it would fail but "draft" has yet to proof it is a full-bloated … uhm … featured word processor.


This is probably not a brilliant question, but why this instead of git for version control and um editing directly on github? With Github zen mode, you can edit a document directly on the site and every save is in stored in git.


This is true, but think about how opaque github is for a non programmer/blogger (one of the use cases the OP mentions) vs. what he's put together which is truly about as simple as you can get in terms of getting started with a version controlled collaborative doc.


It would be insanely cool if this would be LaTeX compatible. I'm using git currently to manage drafts of articles I'm writing, but the diff tool is not always up to par, and it's hard for non-coders to adapt to this system.


It would be good if a program let you view each sentences history on its own, so you could see different alternatives without needing to change the whole document.


Check out https://www.youtube.com/watch?v=bbpbMeDgTF8 for historical document search :)


It's an interesting concept, but how does it differ (not technically, but practically) from, say, OS X's built-in document version control, "Versions"?


I think this might be exactly what I need for working with the freelance writers that I hire. I'm looking forward to giving it a try!


Looks great Nathan! Can't wait to try it out.


I haven't looked at this in depth, but I'm glad to see someone is doing this. We need it.


We use Mediawiki. Tracks revisions, lets you rollback, let's you make comments, let's you provide reasons for changes, gives you easy diffs...you can do a private wiki for specific project, or projects. It's free, open source and extensible, the data is portable, easy to move from one SQL to another.

Book it, done.


http://revisionator.com does too.

What we need is open source, so all that writing, and all that revision history, is downloadable, liberated data.


http://revisionator.com does allow you to download the document and all its revision history. (download button in the document's page.)


OFFTOP: can someone enlighten me about SVBTLE thing on the left column. I have seen this logo on several blogs. Cannot figure out what is that.

thanks.



Think of it like Huffingtonpost or something, but each contributor also has their own blog URL/hostname.


"Blog Network"




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: