Ramble on the Processes of Writing

I can think of two ways to approach writing a blog post, or anything for that matter. The first is to approach it rationally. Make a list of potential topics, choose one or two, make an outline, do some research, then sit down and write according to the plan. This is probably the safest way to ensure that you write something that is at least of some minimal quality.

The other way is to approach it entirely from a place of intuition. You sit until a topic occurs to you or until you get impatient and just start without one. You write whatever comes to mind. You look something up if it matters to you. You stand ready to pull the plug on a piece that is going nowhere and start again. I usually save the stillborn attempt in case it catches my fancy some other time.

This second approach is often labelled “seat-of-the-pants” in the circles where writers discuss their processes. I get the analogy to piloting but I think the term is unnecessarily dismissive. In the case of piloting you are navigating your way through a landscape that has an objective existence. You probably have some idea where you want to go. In any case, you can look at where you are going and decide based on objective observation whether it is where you want to be.

Writing is qualitatively different to that. There is no objective pre-existing landscape to navigate. Whether you take the rational first approach or the intuitive second approach, you are making it all up as you go.

If you are trying to write about something that is predominantly factual, you would probably be best served to do at least some minimal amount of research and planning. If you are making everything up as you go, its not as important to plan.

The one point where this is not the case is when it comes to plot. It may happen that you will wander around and tell an interesting tale but if you don’t have any idea what the ultimate point of the journey is you are going to end up, as I have on multiple occasions, with a disappointed and perhaps even pissed off audience.

So the point here is that you have to court your muse at least to the extent that she gives you an end to your story. I’ve talked to other authors and they have told me that they often set way points that they use to steer their story toward a given outcome without dictating the entire journey beforehand.

Creativity is a strange phenomenon. It balks at excessive planning but thrives when given constraints within which to operate. A pre-imagined ending is probably a good constraint within which to work. Goodnight all.

Sweet dreams, don’t forget to tell the ones you love that you love them, and most important of all, be kind.

Butt in Chair Time

Years ago I attended a Science Fiction convention in Huntsville Alabama. It  was called ConStellation and it had only been around for a couple of years. One of the speakers was the editor of one of the monthly science fiction magazines, I forget which one. I forget his name. I forget a lot lately but that’s a topic for a different blog.

This editor’s talk was about what it was like to be an editor and what it took to be a writer. He used a particular phrase so often it almost became a mantra. He said to be a writer you’ve got to spend time with your butt in the chair writing. Not thinking about writing. Not reading something. Writing. Doing other things is perhaps necessary to inspire what you write but in order to be a writer you have to write and that takes “butt in chair” time.

I have taken that advise to heart. I have scheduled my butt in chair time and I defend it vigorously. My wife sometimes resents the fact that I have time to write but I don’t have time for some of the items on the honey-do list. To be fair, that is a fault not of my writing time but of my neglectful attitude toward the honey-do list. But that too is a topic for a different blog.

I have discovered the importance of having a distraction free place to write. I can’t write with the television on. I’m liable to watch whatever drivel is on instead of writing. I often put headphones on and listen to music to drown out the TV. That is only marginally better. I find I write best when I’m sitting in near silence.

Some times I sit in the silence, waiting for the idea that is going to come forth. I am close to despair. I have got to write my blog so that I can go to bed. And then it happens. The ideas flow out of my head and onto the page. Are they any good? I guess that’s for you to decide. All I can say is that they are coherent. They start at the beginning and proceed to tell a story. That’s really all I ask for.

So, if you want to master something, whether it is writing, or playing a musical instrument, or painting a picture, you’ve got to spend the time doing it. Do it until that spark of creativity flows out of you and becomes the art that you are driven to produce. It will happen when you least expect it. It is liable to startle you when it happens. That is the miracle of creativity. If you court it long enough, it will come.

Sweet dreams, don’t forget to tell the ones you love that you love them, and most important of all, be kind.

The Freedom to Fail

Paul Graham is an inspiring essayist. I agree with most of what he says. In August, he wrote an essay entitled Holding a Program in One’s Head. This essay gave me a lot to think about. He captured the essence of much of what upsets me about the corporate environment in which I try to practice my profession. He overlooks one important aspect of an environment that will encourage creativity and innovation. That is the freedom to fail without repercussions.

I sometimes listen to Terry Gross’ radio program Fresh Air on NPR . Recently she interviewed Steve Carell and Terence Blanchard on two separate programs. The thing that struck me is that they both had similar stories to tell about the environment that nurtured their respective careers.

In Steve Carell’s case, he spoke of his experience as a cast member of Second City, the famous sketch comedy troupe where many of Saturday Night Lives cast received their training. He said that the great thing about that environment was the opportunity to fail. He went on to explain that they were expected to go out and try new characters and ideas. If they worked, great. If they failed, there was no penalty. They were just expected to go out the next performance and try something different.

In a surprisingly similar fashion, Terence Blanchard described what it was like when he joined Art Blakey’s legendary Jazz Messengers band. Terry Gross asked him if Blakey was a disciplinarian. Terence responded that on the contrary, all the members of the band held Blakey in such high regard that he had to spend a lot of effort putting them at ease. When they asked him to let the band play the classics that made the Jazz Messengers famous, he told them that they should compose their own music and make the band their own. Terence went on to say that it was great to have the freedom to fail. To try new things without worrying about whether they would work or not.

I think that programming is the same kind of creative activity that acting and creating music is. By the very same reasoning, I think that the freedom to try things and fail without repercussions is essential to writing innovative software. Furthermore, I think that most software falls into the category of innovative software. We make the mistake of treating software development like the other engineering disciplines and ignoring the central difference between it and them.

If we are building a building or a circuit board or any other physical product, we have a clear idea of the functionality we are after. We might build a model or a prototype to clarify our thinking but we wouldn’t dream of trying to sell a model or a prototype as the final project. Typically, a lot of effort is expended to rigidly define the product so that we can effectively produce it exactly to plan. The reason we do this is that the process of production is costly to change. We get cost breaks from producing many items exactly the same.

Software is different. In the first place, the per unit cost of producing software is negligible.  Secondly, you rarely know exactly what you want the product to look like until you are well along the road to producing it. Unlike physical production lines, changes to software are easy and inexpensive to make. In all but the most extreme circumstances, software requirements are discovered as you implement the program.

You can define requirements in very broad terms, e.g. “this is a point of sale terminal for a video rental store”, but the details of how that should be implemented should be derived from interactively creating software that automates the repetitive tasks of running a video rental store with someone that understands those tasks intimately. And, who knows what those tasks are better than someone that runs a video rental store.

An analogy that was created to explain the rationale behind eXtreme Programming (XP) captures the essence of this principle. You don’t drive a car on a long trip by carefully aiming it in the direction of the destination and tying the steering wheel in place. You would be in the ditch before you went a mile. Instead, you constantly adjust the course, you drive the car. In much the same way, you must drive toward the creation of an innovative piece of software.

That’s why I love being a programmer. That’s why I hate programming in a corporate environment where management doesn’t understand these basic facts about software development and wants to maintain rigid control over the process. But then again, the money is good.