Getting Ready For NaNoWriMo 2016 - Step 1: Plain Text and Markdown

I skipped the idea part. That's usually born from a combination of insomnia, listening to far too many podcasts, and just paying attention to the people I pass on the street while going to and from work. So, we'll skip that and go straight to the writing process.

After years of fiddling with a variety of word processors, trying to find the perfect one that suits my needs, I eventually made the switch to writing in plain text using Markdown-style formatting. There are a couple of reasons for this:

  • Plain Text Files Require Very Little Computing Power: Chances are that almost any computer you own can write and edit plain text without any fuss at all. This is not an exaggeration. Even the old Compaq Aero 4/25 I had in the back of my closet before we moved still worked great with plain text and felt pretty zippy despite its processor being infinitely slower than my current computer. This makes the "level of entry" very low. You don't need a screaming, shiny new Macbook Air or Surface 4 tablet. Those are nice, astonishingly beautiful machines, but if you're working with plain text you can write on almost anything. I'm tempted to write my next book on a $35 Raspberry Pi just to prove that point.
  • Plain Text Files Are Extremely Portable: As above, almost any machine in the world can open and write a text file, from a PC, Mac, Linux box, or even various other devices that have more specific and limited uses. Do you have one of those old word processors from the early 90s that were a weird combination of a computer and a typewriter? They can probably write and open a text file. That means you can take your book anywhere, to almost any machine, and still work on it.
  • Plain Text Files Are Extremely Small: Let's be honest, almost all book files, regardless of what you use to create them, will be relatively small in terms of their file size. However, if you struggle with space in your Dropbox account or on your favorite USB drive, plain text tends to be more petite than whatever you create in MS Word. For example, Leech weighs in at 484 KBs without the cover, which means I can (and do) litter a number of cloud services and keychain drives with copies so I always have a backup available somewhere. My first USB drive, back in the day, held an astonishing 32 MBs and I felt like James Bond when I carried that thing around. For the purposes of writing a book with plain text files, that old, 32 MB drive is roomy!
  • Plain Text Files Are Free To Create: This is kind of a silly point to make, but maybe it's not. A license for MS Office 365 costs about $50 per year, maybe a little less if you can get an education or non-profit discount. Apple's Pages costs $20 for the computer version and $10 for the iOS edition. Writing a plain text file can be done with the built-in tools available on almost any computer. And, if you don't like Notepad (Windows), TextEdit (Mac), or Text Edit (Linux), there are literally hundreds of other text editors available to you for free online. I'll talk about some of these in a future section.

So, I've established that I prefer text files. The next question is, why Markdown? If you haven't come across Markdown before it's essentially a lightweight formatting language that you can use to quickly create HTML files. It was created by the author of the website Daring Fireball and it was created as a tool for writing blog posts. It helps to think of it as "training wheels" for web pages. You can italicize text with a couple of asterisks, make things bold, and a few other, slightly more fancy formatting without ever needing to lift your hand from your keyboard to click on an icon or highlight text. You are free to just write and so writing tends to happen very quickly. I'm actually writing this article in Markdown. I use it all the time, both at work, and for my "work" at home.

A couple of reasons why I like Markdown:

  • Markdown Is Fast: As I said, you can write using Markdown formatting without ever needing to take your hands off your keyboard. It's extremely simple and becomes second-nature after just a few hours of working with it, mostly because there is very little to it.
  • Markdown Is Legible: It's formatting language is very simple, so you don't need to be a coder to understand it while you're reading it. This means I can take a Markdown document, give it to an alpha reader, and they can read it without getting confused by the kind of esoteric formatting that shows up in an HTML document. It is, at its heart, just plain text and it reads that way. Speaking of...
  • Markdown Is Plain Text: Remember how just a few paragraphs back I went on and on about how much I love plain text files? Markdown is written in plain text, so I get all of the benefits of plain text files, plus some basic formatting options. This makes me really happy.
  • Markdown Provides Just The Formatting I Need: Your books might be more complicated than mine, but when I'm writing I'm mostly concerned with the order of my words, not their font, their color, or the justification settings I need around each paragraph. Occasionally I'll make something italicized or even bold. Sometimes I'll increase the size of a chapter title, but that's it. Markdown does all of that very easily and without much effort.
  • Markdown Becomes HTML Very Easily: This is the "secret ingredient" to this whole thing. HTML is the language at work behind all of our web pages and emails, so it might not seem like an obvious pick for formatting a book. However, most eBook formats such as Mobi (used on the Amazon Kindle) and ePub (used on the Barnes and Noble's Nook, iBooks, various Sony readers, and Kobo), are actually variations on HTML. eBook creation tools are getting really good, so the average person shouldn't have much trouble turning their MS Word files into an eBook, but I like that what I'm starting with is already as close as possible to what it will eventually end up as once it's downloaded to people's eReaders. It makes the conversion process relatively painless and I haven't run into any strange glitches or formatting that I've needed to fix, beyond some issues with setting up chapter tags in ePub files (more on this later).

Here is an example of a paragraph from Leech, presented in Markdown:

I lower my hand, tentatively, and turn my head. She leans
closer to me, her fingers touching my back, her breath on
me as she draws her face closer. The light from the TV is
dim and uneven. I don't think she can see anything, but she
lets out a brief *hum,* something like a word, and then
returns to her spot on my couch, nodding a little.

Simple, right? See those asterisks around the word "hum?" That just means that the word is being italicized. You can't see it being rendered that way, but you can see that there is some special emphasis placed on the word thanks to those additional characters, without me having to explain it to you.

In HTML, that same paragraph wouldn't look much different, but it is slightly more complicated and jumbled with code. For example, the same example paragraph I provided above would look like the following in HTML code:

<p>I lower my hand, tentatively, and turn my head. She
leans closer to me, her fingers touching my back, her breath
on me as she draws her face closer. The light from the TV is
dim and uneven. I don't think she can see anything, but she
lets out a brief <i>hum,</i> something like a word, and
then returns to her spot on my couch, nodding a little.</p>

It's not terrible, but I can imagine some of my friends/early readers tripping over the additional code. Also, it's a hassle to write. Putting <p> around a paragraph isn't too bad, but putting it around the 3,964 paragraphs I wrote for Leech sounds excruciating. If I'm in the process of creating something new, the last thing I want to have to do is fiddle with code while I'm writing. I just want to write.

Next Up: Tools (Hardware) For Writing!