Last year I mentioned a tool called DataFrame which I wanted for my worldbuilding on a story, but then my attempts to try to build the tool derailed the making of the story.

What was DataFrame? Why would I want it, and what do I use instead?

The point of DataFrame was to have a frictionless tool for creating linked text fragments: I wanted to be writing something and to be able to create a connection to a related note without having to jump through any hoops – indeed, I really wanted some terms to be linked automatically, or at least to be able to apply a link after the fact using a search tool.

I also imagined having multiple windows to navigate through the network of, as I termed them, frames – open a link in a new window, or have a secondary window which would display the connected text as the cursor passed through a linking term.

All of this sounds very similar to the idea of a hypertext authoring tool. I was familiar with the idea of hypertext from Douglas Adams’ documentary film Hyperland, but the web was barely in existence and I didn’t really know what I had or how to build it.

Unfortunately the hypertext authoring tools I’ve used have been anything but frictionless. The closest thing to DataFrame that I have found is a wiki, but:

  1. the editing and the viewing modes are distinct
  2. switching from one to the other is painful
  3. linking to existing pages requires that you remember the name you want to link to*
  4. changing the name of a linked to page is painful**

So, I promote wikis not because they are perfect, because they are the easiest route to something like DataFrame.

I tried writing DataFrame a couple of times: once as a text-mode editor on my Acorn Archimedes (I got as far as having a basic text editor), and once as a plugin for the Eclipse IDE (I got as far as labelling some things on the screen as links, as well as making up a small presentation to explain the idea to colleagues at the day job at the time***).

What I should probably do is work on an emacs plugin. emacs can basically do anything, and the fact that it can render a web page as either raw HTML text or as clickable text should be an indicator that DataFrame should be something that could be supported. And it’s a Lisp environment, which would be a good thing for me to work on.

But then I would end up spending what little creative time I have on programming, which is not the worst thing in the world but won’t get the book written.

I really can’t let that happen again.

Are there any tools you hanker for to smooth your writing process?

[*] there are a lot of things wrong with the business social tool Jive, but its UI for linking to other pages is pretty good.

[**] this is an example of where maintaining the use-mention distinction would have been a good idea.

[***] the presentation was to be given on the same day I found out I was made redundant, so it was not in fact presented.

Leave a Reply