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.
(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).
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.
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!
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)
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
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.
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.
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.
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.
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:
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.
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"?
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.
Branding this service as a webapp seems like it's going to make those use cases impossible.