Writing Tools and Workflow

Read on as long as you promise to write something when you’re done.

I’ve been posting a lot about tips, style, and the creative pursuits of writing so I figured I’d share my writing tools and workflows as well.

Writing Buckets and Apps

There have been five main types of things I write along with one new one I’m trying to do. They are: notes, code, blog posts, journaling, field notes, and the new one, writing for the sake of writing.

Notes: I use nvALT on Mac and Notesy on iPhone and iPad synced in a single folder at ~/Dropbox/Documents/Notes. I used to really like the idea of keeping notes in Evernote and did for a couple years, but like nvALT for it’s ease of capture. The tradeoff I’ve chosen to make with my notes system is that I’ll sacrifice the long-term organization that Evernote could give me with tags and notebooks for the simplicity of getting stuff inputed. Because that’s the point, right? If there’s enough friction that I don’t just easily create a note what’s the concern about long term search-ability? There won’t be any notes to look for. Launch Center Pro makes it easy to quickly add new notes to Notesy.

My naming convention is something like Headphones I Like — listx shopx which uses a tweak to Merlin Mann’s xtag convention, or A Balanced Man — mex — 2012-11-03 14:25:51 where I add a date/timestamp when it’s relevant. That note is some thoughts as to what I think a balanced man should act like and be like and uses the mex tag like all of my “personal improvement” notes do. The title goes first because I’ll always have that, the tags go next because they’re usually but not always there, and the date stamp is last since I only add it if I think it’s relevant. That all makes for a clean notes list in nvALT.

Here are some random examples of notes I have in nvALT so you get a general idea of how you could use a system like this: a note tracking payed days I’ve taken off of work, a cornbread recipe I looked up for my cast iron pan, a list of words I’ve come across while reading that I really like, notes I took while reading an article about typefaces, the number, amount, and reason for cheques—checks, for the Americans—that I write, the phonic alphabet just because, the body of select emails I might want to look up for reference, a list of decently priced cigars I found online for whenever I feel like buying a box of cigars, the numbers for my health insurance so they’re easy to pull up, and the list of variables for TextExpander that I can use as reference for when I’m making snippets on iOS. For all of that random stuff that I want to store, it makes it really important to quickly add it and quickly find it when I need.

Scratchpads kind of live in this notes area. I use a handy script that I love and use all the time to manage my scratchpads. They live in the same Notes folder but open in BBEdit where I have a little more control over the editing of a note since I can use things like clippings, text filters, and language scripting.

Code: When I started getting into code I had to make the epic decision of choosing my text editor. Threads on forums, endless blog posts, and hours of podcasts have argued over what the best text editor is. For me, BBEdit was the clear choice. At the time, Textmate 2 was still a dream and SublimeText 2 didn’t feel right. BBEdit fit in the middle of being solid for code and great for plain-text writing. Writers like John Gruber and hardcore geeks like Dr. Drang use BBEdit, which shows you how flexible it is at supporting any type of text related use case. It’s well supported for scripting, with an extensive Applescript dictionary and the ability to use languages like perl, python, and ruby for text filters. Clippings make it really easy to extend BBEdit for custom Markdown wrapping without any knowledge of code. Longevity matters to me. BBEdit has been around for 20 years and will probably continue in development for as long as text editors exist. I use a slightly modified version of solarized light for my color scheme and have removed a lot of the default window chrome to make a document look simple.

Blogging: This happens almost exclusively in Byword on iPad. I collect ideas in a running note or sometimes a draft outline in nvALT but usually it starts and ends in Byword. Since I’m using Second Crack I don’t need to move any text around, all I need to do is add a specific header to a post in my Drafts folder and it’ll publish.

For link posts, I have a script that I’m continuously running on my server to make creating drafts from links really easy. I use Reeder and Twitter basically as an article inbox and nearly everything I want to read gets sent to Instapaper. From Instapaper, when I find something I want to link to I select the pull quote, tap share, and Post to Pinboard. I fill out the fields with the post title I want, the post body, and the specific tag my script checks for to create a draft. It usually ends up looking like this. The script will parse the info from Pinboard and within a second, create a properly formatted Markdown file in my Drafts folder. Right away, I can switch out of Instapaper to Byword and my new draft syncs down from Dropbox and looks something like this. I really love this flow and it feels like magic every time I do it. The added benefit is that everything I link to is permanently archived in Pinboard.

Journaling: I really like Day One. I think my favorite part is that it takes any organization hassle out of the process. I just have to hit the + on any device any time I have something to say and it takes care of the rest. Adding support for photos has been a really nice thing since a lot of important memories happen without the chance for me to type out how I’m feeling at the time. Sometimes I’ll add a photo to Day One in the moment, then go back later and add a caption with some more about what was going on in my head at the time.

Field Notes: I love these things. There’s just something that they represent for me that means a lot. The passion that Draplin Designs and Coudal Partners put into making them beautiful and useful shows. I used to be a little concerned about just filling it with crap but then I realized that’s what they’re for. They’re cheap at three bucks a piece and are supposed to be something that takes what you have to throw at it whether it be dirty hands jotting notes about this season’s crops or me filling it with useless, messy drivel that couldn’t be less poetic. Carry one along with a Fisher space pen wherever you go and fill it up with your life. You’ll feel better when you do.

Tip: Stick a few index cards in the back just in case you need to write something down and give it to somebody, like directions or your contact information if you don’t carry business cards.

Writing for Writing’s Sake: Natalie Goldberg’s Writing Down the Bones has taught me that I should just write for the sake of writing—to get all the junk out so I can dig down to the good stuff. I don’t really want to be doing this in any of the other buckets. It could make finding notes harder, doesn’t make sense along side my drafts, and shouldn’t really be in my journal since I’ll want to go back there and read about important moments not a shitty poem that hurt to write. Field Notes aren’t great for long form stuff because it’s a bit cramped. While reading about Natalie’s writing situation, it made me feel a little nostalgic—I’m not sure if that’s the right word since I don’t know what it’s like in the first place—to use a typewriter to just write. I liked the idea of putting in a fresh piece of paper and punching out words without having to think about naming the text file or where it’s going to live on my hard drive. The typewriter puts out a piece of paper and you can throw it in a stack or throw it in the trash.

I wanted to make a separate part in my flow for this kind of writing. I wanted something that was easy to start, meant no ongoing management, and didn’t clutter up my other writing buckets. Since I do all of my writing on iPad, I installed WriteRoom. I chose it for a few reasons: it allows fullscreen mode without the status bar, syncs to specified Dropbox folder that’s different than my notes, and allows me to pick a font that I don’t hate. I’ve set it up to be as simple as possible and to get out of my way. Things like spelling and autocorrect that are helpful when writing an article to be published aren’t necessary when just making words. No one’s going to be reading this stuff unless I chose to publish it later so spelling and grammar mistakes don’t matter. This kind of “distraction-free writing environment” can be a gimmick unless you don’t let it be. For me, it means that in WriteRoom, it’s just me and words. When I need to write just for the sake of writing, I open up the app, create a new date/timestamped file with TextExpander and go.

Input and Setup

I’ve been writing on my iPad for a while so I’m used to the onscreen keyboard but I also wanted to set up a place where I was comfortable and that was effective for writing. I wanted a good hardware keyboard to be a part of that. I’ve set up a standing desk at my apartment with just enough space for a keyboard, iPad, and a cup of coffee.

After debating the cost for a while, I ended up buying two of those loud mechanical keyboards that are annoying in the background of podcasts. I went with the Filco Majestouch Tenkeyless with MX Cherry Blues. I love it and couldn’t recommend it enough. It really is just that much better than whatever cheap keyboard you were using before. For me it was a great investment since what I do is create things on computers and the keyboard is the input of the things you create. Using great things and things you love can improve your work and life and having great boards at work and at home has done that for me.

Connecting a mechanical keyboard to your iPad is a little hacky but works. What you need is Apple’s camera connection kit which is basically a 30-pin to USB dongle. Don’t worry that the dock connector is being phased out because Apple makes a Lightning to 30-pin cable. Since messy cables drive me crazy, I connected the board’s USB to the Camera Connection Kit, connected that to this CableJive dockStubz dongle which allows me to pass through power into the iPad, and then connected that into a 30-pin extension cable so I can hide that cable/connector rats nest behind my desk and just run the extension to my iPad. It’s working decently for me so far. Even though it’s plugged into power, the draw from the keyboard takes enough out of the line that the iPad doesn’t charge. That kind of sucks but it seems to at least provide enough power to the setup to supplement the power from the keyboard so the iPad doesn’t drain nearly as fast. I get a warning when plugging it in that the keyboard isn’t compatible but it works fine.


With all of these writing buckets, I struggle a little with where some things should go. Sometimes when I’m in a coffee shop, I’ll just start writing a quick thought in my Field Notes and it’ll turn into a thing I want in my journal. I’m a little concerned that things I write in WriteRoom should maybe end up in Day One, but at least I can copy and paste over there easily.

The problem with systems like this is that they’re never going to be perfect. There will always be gotchas that process geeks like us quiver and try and fix. If you can find a fix for it that’s great but remember that the point of these systems is to improve your output. I have different buckets because it makes my writing in each one easier and more meaningful. If you’re playing the long game, it doesn’t really matter that much where exactly your ideas are put but that you’re writing and that they’re captured. If it’s a big idea and it’s down somewhere you trust, you’ll find it no matter how hard you have to search in whatever wrong bucket you put it in. Don’t be too worried about that happening.

Get a system set up that covers most of what you think you need and then focus on turning the things that are in your head into bits in a text file or scribbles on a piece of paper. You’ll tweak your system along the way but remember that to make great things you need more of the clackity noise not a better workflow.