November 13, 2018

Tips for Writing

I've been writing this blog for about 10 years, and writing code for 30 years. Some people have asked me how did you “find your voice”? Actually no one has asked me that. If they ever did, though, I wouldn't have a good answer. I've heard that everyone has 100,000 words of lame writing in them, and probably some other large made-up number of lame lines of code. The sooner you get through that bad period, the better.  So here are some tips about writing, prose or code:

Physical Space
Find a quiet room in your house with a fan or white noise machine, or a crowded place with lots of people and let them be the background noise. Or play music if you prefer, with headphones, so long as you do not fear that anyone is going to sneak up behind and brain you. Headphones or earbuds are good if you are not in the position to colonize the sonic landscape around you, while good quality speakers are better if you are alone, or with people who do not mind the music. They might even like it, and you can send them messages based on the songs you choose. Like “get away from me” or “I'm dying inside”. At any rate, a sound source is important to mask the sickening crunch of the keys as you bang your head on them long into the night.

Speaking of head banging, make sure the appliances in your house are loud, almost deafening as their compressors and fans turn on and off all night. Devices that beep at odd times are especially helpful. The very best is a phone alarm going off, that you can’t even find, and where you have no idea what the alarm was even for.

As long as you memorize the sounds, you won't be startled unless the refrigerator breaks in a spectacular fashion, spewing shards of metal and leaving a growing pool of Freon on your pool table, fed by the drips from the kitchen above. Your HVAC system is also a great source of sonic entropy, dishing out weird and surprising noises at odd times. Sometimes a sound might startle you into spilling water onto your macbook. That’s okay, it’s good react quickly to sounds in the environment, it’s what kept us alive as a species.

Priming the pump
Read read read. Read books, magazines, newspapers, blogs, highway signs, fortune cookies, recipes, shampoo bottles, obituaries, Facebook posts, tweets, twists and turns. Read code if you are talking about programming. Read as much code as you can stomach, because it is admittedly pretty boring. Read stuff you like, but also try reading stuff you don’t like. Don’t torture yourself, maybe read a few pages and then put it aside. Come back to it in a few years, you might find it easier then.

You need to read for two reasons, to understand what style(s) of prose or code you like, which you want to emulate, but then also just to learn more about the world so you have more facts, ideas, and connections you can make. Also listen to podcasts and audio books. When you read or listen, your eyes and ears play a big roll, but it’s really what’s happening deeper in your brain that matters. Seeing text and hearing spoke language are different, and evolving your mind in these different ways produces a better results than focusing on just one of them. The results might be more than the sum of the parts.

Your goal with writing is generally to communicate something to the mind of another person, using language. The trick is that words don’t always mean the same thing to two different people. They might read your text and conclude the exact opposite of what you intended. You cannot prevent this entirely, but strive to be clear and write truthful things, and that is the best you can do. If people come to the wrong conclusion, that’s their fault, unless your writing was awful and didn’t give them the right message, then shame on you.

First draft
A lot of people say get your first draft down quickly and then edit. I do this to some degree, but I also edit as I go. I will start over at the top and reread everything, and when something pops out as wrong, I’ll try to fix it. When you read or listen the brain is making a prediction what the next word will be. If the brain is always right that bores the reader or listener, but if the brain is always wrong that confuses and annoys the person. You want to hit the sweet spot, where the underlying carrier wave is predictable but pleasing, but there's a nice coating of novelty on top. The number one skill you can have is being able to read your own writing and recognize, intuitively, when something is not quite right And then having the intestinal fortitude and focus to iterate on it until the problem is fixed.

Find a stopping point and put your draft writing away for a while, maybe just one day. Edit at different times of the day, or after you just exercised, or before. Maybe the morning you does not like what midnight you wrote. Maybe refreshed eyes were necessary. Don’t be afraid to tackle the same text over and over, rewrite it many times. Try to avoid a long jumble of semi-finished paragraphs or half-working functions. Don’t be a hoarder, don’t save too much half-finished stuff. Keep your document relatively clean, it is your cognitive landscape and you don’t want be surrounded by garbage.

The wonderful essayist Paul Graham once posted an animation of his writing process, and there were a lot of twists and turns and rewrites. Imagine you are a hundred wikipedia authors and you all are editing one single wiki article. One of you looks for punctuation errors, while another adds rough ideas, another keeps typing in funny remarks, another cuts them out because they were over the top. Change the font and the font size, just temporarily, the text will read differently each time you do.

Speaking of ideas, get ideas from anywhere, your family, your friends, your neighbors. Your friend's neighbors, your family's friends. If you live in a neighborhood start war-driving around breaking into their wifi networks. Run a filter to see if any original text is escaping the house, if so steal it, and post it online and call it your own. Or better yet just periodically talk to them about their day and the characters in their life. Use this material to generate ideas for your writing. If writing code, this is still valuable, you need a broad understanding to use good analogies in your design, plus comments are regular prose.

Use Google every time you cannot find a piece of information, or use it for inspiration. Use image search often. Whenever you get stuck, get unstuck. This. Is. Important. Yet doesn't over rely on Google or your spell checker. If you don't know something, close your eyes and breath in and out and see if something comes to mind. If you get a redline spelling error, don’t right-click to get suggestions, backspace and figure it out yourself. Sure quit at some point, but least try. Typing is a good way to train your mind. Taking the time to do something right will improve your ability to maintain your focus attention. Meditation can also improve it. Pay close attention to your breath, you might find the answer pops into your head, delivered by the mail cart from the basement of your maze-like cognitive infrastructure. Leveraging online resources is fine, it's a must, but every time you do you risk getting trapped in the honeypots that are all over the internet, luring in worker bees and transforming them into cogs in the advertising machine.

Writing will raise your mood and then crash it down, over and over again. Depending on how the writing or programming is going. So sleep is important, get enough sleep, things will look better and clearer the next day. Drink enough water, but avoid caffeine, sugar, artificial sweeteners, milkshakes and Manhattan Ice Teas.

Exercise at least 20 minutes a day. This can include walking upstairs because you forgot your reading glasses up there, or doing a load of laundry, or washing the dishes. Or just kind of dancing around pretending you know Karate, or Tai Chi or Yoga.

Finally always do a quick metta meditation or prayer before or after writing, because living with a writer is no picnic. Follow these tips and maybe they will help you on your writing escapades!