Blogs from the Ranch

< Back to Our Blog

The Write Stuff


Mark Dalrymple

If anyone would have told me 30 years ago that I’d actually enjoy writing, that I’d look forward to writing something new, that I’d earn part of my living from the act of writing, I would have sent them straight to a psychiatrist. Obviously they’re insane.

But it’s true. I like it. Since February of 2012, I’ve written one and a half NaNoWriMo’s spread across 60 or so different postings, just for this blog. That doesn’t count course materials, the running prose behind presentations, and the like.

I didn’t always like writing, in fact, I hated it for the longest time.

I dreaded the process. I’d stare at a blank screen wondering how to start. Then maybe write a sentence. Then edit it. Then write another one. Then go back and edit the first one because the second one changed the world. Now for the third sentence. It was slow, time consuming, and psychically draining.

Write, then edit

One of the best things I learned when doing this writing thing is to silence my inner editor. That’s the voice that keeps saying “This sucks. This isn’t good enough. This isn’t your best work. You’re only going to embarrass yourself and bring shame upon your family for seven generations if you publish this.” We hateses this voice, precious. We really do.

Now is the time to stick that inner editor into a box somewhere and just write. Write write write. Write junk. Write gibberish. Write that beautiful turn of phrase that your subconscious just threw into your inner monologue. Hack it out. It’ll be pretty bad. The first version of this posting is pretty bad. And that’s OK.

Once you’re done with the writing, you edit. If you try to edit as you go, you prevent yourself from entering that state where words just flow out. Creation and editing are different mental disciplines, and I have a large context-switching cost. I like to stay in one more or the other.

Let that inner editor out of the box and let it be brutal. There’s nothing sacred in the words you just wrote. You just dumped them in the word processor, right? If they don’t work. They’re gone.

A year or two ago I was on a kick reading writing books (er, reading books about writing). My two favorite ones are Elizabeth George’s Write Away and Stephen King’s On Writing. A common thread through those two books, as well as similar meta-writing books is “Write now. Edit later.” Just get the words on the paper or into your computer. It doesn’t matter if it works or not. It doesn’t matter if the sentences actually make a lot of sense. Once you have a first draft done, go back and edit. Then edit again.

Once you’ve published your work, whether it’s been put on blog or sent on to a reviewer in whatever workflow you’re using, it’s time to write the next thing. And the next thing. The more you write, and the more you edit, the faster and better you’ll get.

A typing aside

Learn to type. If you can’t get your thoughts into your word slinger of choice as fast as they’re entering your brain, they’ll pile up and you’ll just be frustrated. I’ve had students in classes before that were hunt-n-peck, and were definitely limited by the speed of their interface to the computer.

How do you learn to type well? There are software packages you can get that’ll drill you. I know I need concrete goals to strive for, and those goals include things like wanting to get information from paper into the computer as fast as possible. Back in the old days we typed in program listings from magazines, and these days you end up typing in exercises from Big Nerd Ranch guides. I also had motivation from the social media of the days (multi-user BBS systems), trying to keep up with and contribute to multiple conversations going on.

There’s also games, like TypeRacer, where you can work on your typing speed by competing against others across the internet. Like everything else, this is something else you’ll need to practice so you get better.

My Tools

The tool you use to write can affect the way you write. I know I write differently whether I’m in Word, Pages, or a plain text editor. If you don’t like the tool you’re currently using, don’t be afraid to experiment with other ones.

These days I do the majority of my writing in Scrivener. I’ve written in the past about Scrivener and Long-Form Technical Writing. It’s easily one of my favorite pieces of Mac software. I love the way it feels when typing. All other word processors feel sluggish when chugging along at a hundred words a minute, but Scrivener is always responsive. I also like how I can organize and outline material with each chunk of text as its own NSOutlineView entity and easily move them around. Here’s a screen shot from a session for some custom materials I created for a customer last year:

Dtrace assoc arrays

Each of the pages in the “Binder” are independent documents. You can edit them individually or have the program show them all together. That way I can focus on a particular topic (Associative Arrays here, all of 665 words), or view the section on variables (2250 words) to see how associative arrays works in that context, or the entire document (which ended up being just shy of 10,000 words). While writing this stuff I ended reorganizing stuff pretty often. Should the profile provider come before the pid provider or not? Should I talk about $1 and -c before or after the objc provider? It’s just a click and drag to move it from place to another and see how the narrative flow works.

In my workflow, Scrivener is where the writing and editing happens. Once it’s as done as I can make it, it moves into other tools. The workflow getting stuff back into Scrivener (or any other word-processory kind of thing) is not great.

I use MarsEdit for blog postings. Copy from Scrivener, paste in MarsEdit, and then mark up and edit the content again. It’s amazing how something simple like looking at the prose in a second program can point out new things that need tweaking.

We use DocBook for the books and course materials around here. Yay, writing in XML! Yummy? Well, not really, but it’s what we use. DocBook is nice because it has a strong separation between content and presentation. It also (along with our tools) has good support for indexing.

Because the content is highly structured, you can use your documents in clever ways. Back in the mists of time we created a website with forums based on the chapter and section structure of the original Core Mac OSX and Unix Programming book. A little bit of scripting gave us the structure of the book, and then some more scripts created a hierarchy of forums. It was beautiful. A reader could go straight to a particular section and ask questions or make comments. Unfortunately this was back before automated spam tools were good, and the spammers quickly took over, so we shut it down.

Much like “don’t edit while writing”, I don’t do markup while writing. I like to get the prose in there, get the prose well organized, the narrative flowing, and the words edited before I do a (tedious) markup pass. Text that gets marked up too soon gains inertia. You don’t want to edit it because you might break and need to fix the markup. Best To Just Let It Be. You also waste <I think this is a function> a lot of time <quote> interrupting yourself <filename> making <did I close the quote earlier?> sure the <whats the tag for instance variables again?> markup is accurate.

The tool I use for this? nxml-mode for emacs. I haven’t seen a dedicated XML editor that didn’t make me want to commit violence.

A Writing Exercise

Writer’s block. You’re staring at the screen and Nothing’s Happening. You surf /r/yurts for awhile, and come back. Still no writing. Before you know it, the day’s gone. I had that when I was wrapping up the third edition. I was tired. I wasn’t motivated. My internal editor was screaming in my head. I just couldn’t get the words to flow.

Around that time I stumbled across a neat writing exercise where you write for 20 minutes and then post it. Once the 20 minutes are up, you push “Post” and you’re done. I’m known for reading comprehension fail, so I interpreted this as “do this every day” rather than just once-a-week.

Every morning I came up with a topic, did a quick outline (1 minute), wrote the text (11 minutes), edited it (4 1/2), marked it up and edited it again (3.5), added a photograph from my collection and posted it to a wordpress blog, all within 20 minutes. I used FlexTime to keep me honest (apologies for the cursing, but it matched my mood at the time). I have it configured so that each “activity” pops up some text telling me what state to move to.


I do admit to keeping a list of possible topics in my Scrivener document, and the daily essays had been things I’d been wanting to write about for a while but didn’t have an appropriate outlet. Even then, all of the outlining, writing, and editing happened in 20 minutes. That made a great warm-up act for the bookwork. In fact, one of my most popular postings ever, Borkware’s First-Timer’s Guide to WWDC came out this 20 minute writing spring.

So, to wrap up

TL;DR? Write first, then edit. Learn to type fast. Use good tools. Then you can come to love the process.

Got writing hints? Got favorite tools? Let us know in the comments!


Mark Dalrymple

Not Happy with Your Current App, or Digital Product?

Submit your event

Let's Discuss Your Project

Let's Discuss Your Project