Visualizing Story Structure

One thing I love about code is that I can see the struc­ture at a glance; branch­es and func­tions stand out, so I can get a men­tal map of how things are laid out. Obvi­ous­ly it does­n’t make a dif­fer­ence in terms of what the code does, but it makes it much sim­pler to rea­son about things.

Case in point.

int a = 10; int b = 20; int c = a + b; if(c < 50) { printf("Expected result.\n"); } else { printf("Something is broken.\n"); }
int a = 10;
int b = 20;
int c = a + b;
if(c < 50) {
printf("Expected result.\n");
}
else {
printf("Something is broken.\n");
}

The two blocks of code do the exact same thing, but the sec­ond is far sim­pler to read. In lan­guages like Python, the code actu­al­ly has to match a struc­ture clos­er to the sec­ond because it’s eas­i­er to read and rea­son about. What does this have to do with writ­ing though?

Here’s a para­graph from one of my recent short stories.

Well…we keep all strays in iso­la­tion for a few days, just in case they have par­a­sites or some­thing.” I slid my hand to Pinecone’s chest and scratched the tuft of white fur between his front legs. “He came back clean, but one of our vets checked the rest of his lit­ter and found some pret­ty nasty stuff in their bel­lies. Strays can’t be picky eat”—my voice caught—“they can’t be picky eaters, and mom found some­thing awful. They all got sick…then they all passed away. The vet said it was would have been painful.” Salty tears slid down my cheeks.

It’s about a half-dozen sen­tences (most­ly dia­logue), but it visu­al­ly looks like a blob. At a glance, I can’t tell where the dia­logue begins and ends. I can’t get a feel for how long any of the sen­tences are. The struc­ture of this para­graph is lost with­in its content.

Do any of those things mat­ter to a read­er? Prob­a­bly not, since they’re con­sum­ing a sto­ry the way the author pre­sent­ed it. To authors though…yeah. Even ama­teurs like me know to mix up sen­tence length and para­graph style or slip actions in the mid­dle of dia­logue to break up things up. One of my bad habits is falling back on the same pat­terns in dia­logue again and again.

  • If a para­graph starts with dia­logue include a tag to iden­ti­fy the actor.
  • Start a para­graph with action to iden­ti­fy the actor and drop the tag.

Eas­i­ly nine­ty per­cent of my dia­logue fits one of those pat­terns. While these are fine guide­lines, in long sec­tions of dia­logue it starts to feel samey and pre­dictable. If I can see the struc­ture of my writ­ing though, I can (in the­o­ry) iden­ti­fy when I’m falling too heav­i­ly on these pat­terns for long stretches.

The same para­graph as above looks like this in my edi­tor is for­mat­ted like this.

\enquote{%
  Well\ldots{}we keep all strays in isolation for a few days, just in case they have parasites or something.%
}
I slid my hand to Pinecone's chest and scratched the tuft of white fur between his front legs.
\enquote{%
  He came back clean, but one of our vets checked the rest of his litter and found some pretty nasty stuff in their bellies.
  Strays can't be picky eat%
}\textemdash{}my voice caught\textemdash{}\enquote{%
  they can't be picky eaters, and mom found something awful.
  They all got sick\ldots{}then they all passed away.
  The vet said it was would have been painful.%
}
Salty tears slid down my cheeks.

Now the struc­ture is far more clear. I can see each chunk of dia­logue and how it cor­re­sponds to the para­graph as a whole. It’s obvi­ous at a glance that my sen­tence length decreas­es in the last sec­tion of dia­logue. The only part of the struc­ture that isn’t clear is the nar­ra­tor’s voice catch­ing in their throat.

Since I want my nar­ra­tor to be caught up in their emo­tions near the end, the short­er sen­tences make sense. I got lucky while writ­ing the first draft, but on my nor­mal days (when my writ­ing is even worse than usu­al), now the prob­lems stand out more easily.

So will this mag­i­cal­ly make writ­ing bet­ter? Of course not, just like a nice visu­al struc­ture can’t make source code mag­i­cal­ly bet­ter. For mor­tals like me though, I get to rea­son about aspects of my writ­ing that would oth­er­wise be difficult.