Software Designs and Essay Outlines

May 22, 2018

The other day I noticed how software designs and essay outlines are similar. You get to notice these similarities if you implement at least part a design yourself.

If you’re driven to draw boxes and arrows and create a design document for review, then chances are it was hard to fit the whole thing in your head. Maybe you don’t trust whatever’s rattling around in there. You want some feedback on the direction. Besides, thinking through a design corrects flaws before they show up while you’re coding (or in production for that matter 🙂).

Same goes for writing. If you’re creating an outline for an essay, chances are it’s because the whole thing feels big. Maybe you don’t trust yourself and you want to build a scaffold for your ideas. Organizing from a high level helps clarify main points and supporting details. Going through the process may even show you that your line of thought was, well, not that good. That’s a great gift.

If a design document is necessary, that’s where 80% of the effort goes. Implementation is usually a breeze after all the boxes and arrows are drawn.

Same for writing. Creating an outline takes most of the time and energy, way more than writing the damn thing afterwards.

Thinking ahead is a hell of a lever.

But there’s danger in overthinking. No matter how much you think ahead, there’s always something during implementation that reveals a little flaw in the design, something during the process of writing that shows a weak connection between ideas.