Books are software, too

There’s a good chance that, when you think about some of the printed books in your collection, you think about more than just the story or the information they contain.

Print books have covers — sometimes hardback, sometimes soft. Print books have a weight and a feel to them, they have pages. They even have a smell.

When you look inside a book, you can easily flick from chapter to chapter or section to section because of their visual cues. Chapter titles and headings, for example, are often larger and more pronounced than the body text, and they sometimes appear in a different typeface altogether. Section headings may be embedded in more white space, separating them from the surrounding paragraphs.

So, we intuitively know that the structure of the content of a book or document can be presented in different ways. Over the centuries, book designers and typographers have refined the art of visually expressing that structure to oftentimes beautiful perfection.

A coffee table next to a bright window, on top of which sits a stack of books, a cup of tea, an open book, and a vase.

But what if I told you that one of the most important principles of contemporary book design is that content and its presentation should be separated from each other?

In fact, considering content and presentation as separate components gives us powerful ways of designing and producing beautiful books with great efficiency.

Content, structure, and presentation

When I design a book, I need proper tools. I use Bookalope because its AI-assisted manuscript import uses the visual cues of the content’s design to derive the semantic structure for that content within a few minutes.

And once visually styled content becomes semantically structured content, it becomes what I call manageable data. And manageable data is much easier to work with — think simple editing, indexing to allow for search and deep text analysis, accessibility information, consistent semantic styling and restyling, transformations using XML, and more… so much more!

This is data that is orderly and malleable.

Given a book in a manageable data format, I can now use Bookalope again to export consistently styled books by adding visual styling to the structured content depending on the presentation format and medium I’m after.

A print-ready PDF is one example of structured data with added styling to present the book for paged print media. The content of an ebook, on the other hand, needs to be styled very differently for screens of unknown size and resolution, and it should work for reader applications with different styling capabilities, too. And when I’d like to get my hands dirty, I export the structured content into Adobe InDesign and have a ball designing, resting assured that the content is proper.

So, whatever the final medium for a book, it is all the same structured data — just presented differently.

Structured data from a software point of view

Once we understand a book as structured and manageable data that we can transform, style, and present for various media, we can look at books as software. And now, working with books becomes different.

Different, but powerful.

Software (and therefore books) can be versioned. Software versioning refers to a controlled way of allowing several people to modify the same files at the same time. It’s a common practice used for managing software projects that’s been around for a long time. It has an obvious and welcome application in book design and production, too: it provides smart backups over time that document the editing history, including who contributed what (e.g. copyright contributions that are trackable).

Close-up view of a desk with an open laptop and a can of pens.

Software (and therefore books) can be fixed. Bugs, such as typos, metadata problems, or stylistic inconsistencies, can be managed and easily fixed, and an update of an ebook can then roll out at any time. Consider a ‘submit a typo’ button on your ebook reader app. Wouldn’t that be useful? The same works for print-on-demand services where a bug-fixed book can be printed instantaneously.

Software (and therefore books) can be indexed, deep-referenced, and their data mined. Searching and indexing within and across books is much easier to achieve if the book is in a semantically structured format, at which point smart indices can be built, search can be better constrained, content can be referenced and targeted from other content at any desired granularity, and text can be analyzed with great precision.

What does this mean for the future of publishing?

As an illustrating example, consider the implications for a university’s academic library: theses and publications could be stored as an indexed, searchable, interconnected web of information à la Wikipedia.

A researcher or interested reader could then preview and download a thesis or research paper (or even parts thereof) on demand — in any format at any time. They could submit a bug report, which would be reviewed and merged into the next version of a paper while tracking authorship of that change. These versioned software updates (or changes to a book) can then be pushed out to all registered readers immediately.

It would work the same for trade publishing and public libraries.

Treating books as software not only opens up new areas of understanding and connecting content meaningfully, or selling and distributing content more flexibly to customers. With the right tools it also allows us to streamline workflows while tracking, sharing, and maintaining content through complex production regardless of the book’s presentation media.

And this all works because books are just software, too.