Nonlinear Writing on Linux with Storybook


Works of fiction come in all shapes and sizes, and I don’t mean simply the format (book, short story, graphic novel). Some are action- or plot-driven, others are primarily internal, some are epic in scope, others stream-of-consciousness and barely involve a chronology at all. So when I heard about the release of a new version of Storybook, ostensibly a tool to help writers write fiction, I was curious as to precisely what sort of help it would offer. The answer is “keeping track of plot points when you have too many to juggle” — whether that is the kind of help you need depends largely on what you write, but even if your novel is ready for the page, this application puts some hurdles in your way.

Broad Strokes

At its core, Storybook is a tool that allows you to disassemble a story into its constituent parts: characters, locations, individual scenes, plot threads, etc. That way you can build the larger tale by working on whichever individual element you need to at the moment, without losing track of the overall structure or forgetting to follow up on a pivotal detail. You don’t have to start at chapter one, in fact you can rearrange the pieces as often as you like.

Storybook is a Java application, with pre-built packages available for Linux and Windows. The latest release is version 3.1.0, which weighs in at just over 33 MB. The installer unpacks to an /opt/ folder in the user’s home directory, which means you do not need root privileges to install it, and adds a Storybook.desktop launcher to the desktop. You can download two demo book projects from the main site, both of which are in German, but it is just as easy to skim through the tutorials and start up a new project of your own.Storybook

A relatively new wrinkle to the Storybook situation is the increasing divide between the free version of the application and Storybook Pro, the paid version that offers additional features. Some of these additional features are tools, such as the Memoria mind-mapping utility. But recent versions have started removing key features from the free edition of Storybook, including the ability to work while offline, and (most importantly) the ability to export your work to a standard document format.

The Plot Thickens

Weaving a tale in Storybook can be as simple as clicking the New Scene button on the toolbar and typing away. In this mode, Storybook automatically creates and numbers chapters and sub-chapter scenes for you. You can even split your book into larger divisions called “parts.” But the application’s main emphasis is on wrangling multiple plotlines at once. To do that, you will need to add plot elements to the database.

Storybook can keep track of characters, locations, plotlines (which it calls strands), and items. On its own, simply entering the name, occupation, and background info of characters is probably only of ancillary value to a writer — unless you are crafting a Tom Clancy-like tome of minor characters. The real benefit of entering this information comes in your ability to take views on the work as a whole, examining scenes in date-chronological order, or viewing which characters are where.

The more convoluted your tale, the easier it is to accidentally introduce an anachronism by having a character mention something in dialog that they “shouldn’t” know yet. The ability to sort scenes by strand (color-coded) and interweave them over the course of the book is surely something that a budding LOST writer would benefit from.

That said, you cannot easily track themes or ideas, just concrete objects. Likewise, the properties expected of you for each element you track are similarly tangible: scenes must have dates, and characters have birthdays and occupations — not motivations or desires. In other words, you can write a definite, plot-driven book like Lord of The Rings using Storybook, but you certainly cannot write Ulysses.

However, even if your needs are a match to the feature set, there are two difficulties in making major use of Storybook’s plotting tools. The first is the rapidly-shrinking feature set available in the free version of Storybook — this release removes the ability to view a character- or strand-centric timeline, character appearances by date or strand, and even basic reference lists of characters and locations. It doesn’t help matters that the application is nag-ware, with a permanent “Upgrade Now!” banner in the lower-right corner of the screen, either.Another Shot of Storybook

The other problem is that Storybook still restricts you to a needlessly formal set of parameters for every story element that you want to track. Characters must have first names and must be either male or female; locations can only be grouped into cities and countries, etc. These categories are useful if you are writing an action-driven, real-world novel, certainly. But take the gender issue, for example; you cannot have aliens, characters whose gender is unknown to the other characters, or HAL from 2001 — and in reality, the only purpose that I can see to the gender assignment field is that it selects which of the two “person” icons to stick next to the character name in the list. Or consider the locations; the country and city categories are used to sort the locations into a collapsible tree-view widget. That comes in handy if your story is evenly-distributed around the globe. But if your entire book takes places in Springfield, Missouri or a tiny town in rural Minnesota, you get no sorting whatsoever.

The irritating thing is that both of these arbitrary restrictions are unnecessary; why can we not just add the locations we want, and group them into folders at will? If I need to keep track of “floor one” of my hotel and “floor two,” rather than separate cities, it genuinely will not matter to the database underneath. Bruce Byfield reported on these and several other story element restrictions back in 2008. It is good to see that several of them are gone now (for instance, you can now assign relative dates to scenes, rather than strict calendar dates only), but all in all, too many sharp corners still remain.

A Missed Opportunity

There are minor bugs in Storybook 3.1.0 that do not affect your ability to write, but stick out. For example, the documentation warns you not to use “reserved” characters in your project name — a list that includes the forward-slash character and the question mark. On the one hand, if this restriction prevents anyone from penning a sequel to Face/Off, it would probably be worth it, but we would also lose Who’s Afraid of Virginia Woolf? Ultimately, trapping reserved characters is something that any professional application needs to do for you, not a problem that it needs to place on your lap.

Still, my biggest disappointment with Storybook remains the removal of key functionality from the free version of the application. I do not begrudge anyone the right to try to make money off of their own software, but this is not a sustainable way to do it. Removing the ability to create the charts and reports that help you manage character and plot lines takes away sixty percent of what makes Storybook worth installing. Removing the ability to print, however, makes this an application not worth keeping around.

If the authors of Storybook wanted to grow a business out of their code, a better plan would have been to mimic what the creators of the storyboarding tool Celtx have done. Celtx offers paid support plans and cloud hosting for projects, both of which may actually be of value to professional users. But more importantly, it fosters a user community, with active discussion forums and even contributed add-ons. That is the real way to build a community of users willing to support your product.

In contrast, Storybook does not offer users a place to go to ask questions or discuss the application with each other, and support tickets are not even available for purchase by users of the free app. At best, that makes it difficult to explain why users would invest up front. At worst, it leaves the project open to a fork based on earlier versions of the source code before the feature removal got out of control. Either way, it is hard to picture a happy ending to the tale.