Sunday, November 25, 2012

How I Wrote My eBook

In a "How I Work" interview on, Tim Ferriss recommends the OS X app Scrivener:

Scrivener, the word processor I've used for the last two books. Unlike Word, it doesn't crash every five minutes, and I can look at multiple docs at once in the same window. [It's] minimalist and great.

In my opinion, Scrivener's certainly better than Word, but what isn't? I haven't been naïve enough about computers to go anywhere near Microsoft Office for at least a decade. I can't call Scrivener a word processor, either, and I especially can't agree with "minimalist and great." I recommend buying Scrivener anyway, though.

I'd describe Scrivener as writing software, which includes a word processor, an outliner, and an innovative UI mode which models a whole category of time-honored writing workflows based around index cards and corkboards. I believe it's actually designed for screenwriters, but modified to be useful for all writers generally, although I could be wrong about that.

That's why I can't agree with "minimalist" or "word processor." I believe "great" would be true if "minimalist" was true. As it is, I experience all kinds of minor UI bugs and excessively assertive auto-formatting whenever I use Scrivener, and consequently I can only call it good.

However, I really like the workflow which Scrivener models -- I think that core part of it really is great -- so I created a simple copy of it with Ruby and Markdown. I threw all the notes in one place and threw all the actual finished writing in files which looked like this:

All those files lived in their own directory. I churned out a simple HTML file from that:

I think this kicks Scrivener's ass in the "minimalist" department, but I can't call this method "great" either. Once the writing was done, I copy/pasted the HTML output into Pages and then did a lot of formatting by hand. It took a while.

But minimalist writing tools rock. I want tools that get everything but content out of my way. Style is great, but I believe my products live or die based on how well-written they are. So I believe I'm much more likely to add a few layers of sophistication and CSS to this workflow than I am to return to Scrivener.

If you're really serious about writing, though, I recommend buying Scrivener anyway. I've written many screenplays, and the one I wrote with Scrivener was easily the best. The implementation is flawed, but the ideas are great. I see Scrivener as a very good set of training wheels, and I plan to continue developing this minimalist approach of mine into a fully-fledged mountain bike. I'm hoping that the only adjustment I'll have to make for screenplays is to use Fountain instead of Markdown.

"The implementation is flawed, but the ideas are great" is also one of the key things I say about Rails in my new book. I'm planning to blog about that soon.