a navigator applet for large documents and sites

March 26, 2007

I am not happy with the way how we write and browse electronic documents. I think that the design of the word processors are responsible for this. (I will not elaborate about this here, but will write about this issue later.) Though , I like structured documentation, like LaTeX, I do not like the way such documents are presented, particularly while reading them on the screen. Most applications kept in mind the printed page as an outcome, and hence may not have payed much attention to alternatives the new technology offers.

With this view in mind, I keep on hacking (exploring new possibilities), to see if I can come up with an alternative. The other day I came up with the following idea.

document navigator

The diagram above is a navigator of a document that has four chapters. Except the fourth chapter the other three are further divided into sections and sub-sections. Since the navigator is laid horizontally, the document’s subdivisions are first divided with a vertical separator, and then the next sub-division is made by a horizontal separator. This way the structure of the given docuement will be represented.Second, by displaying each component in a different color, we can provide visual differentiation of the document parts.

Then comes the problem of navigation. In order to navigate the complex document, we need to use only the four arrow keys: up, down, left and right. The keys, up and down will be used to change the level, say from sub-section to section or sub-section to sub-subsection, respectively. The keys, right and left will be used for moving from one section to other and will circle among the siblings only. Thus, the entire complex document can be accessed with very little effort.

This navigator also serves the purpose of a table of contents of the document. Depending on the current position, an application developer can display the current cell in a different color, with the title of the current section displayed just below the navigator, followed by the content of the section.

This way, a very small device like a mobile phone or PDA can display a very large and complex document in a convenient way.

On a normal desktop, since horizontal spread of the screen is more than the vertical, it is good to have the same navigator oriented vertically as shown below.

vertical document navigator

The motivation for this navigator came in while developing the gnowledge.org portal. For example, if you look at Cell (Biology) link at the portal, the links spread vertically displaying the hierarchy. Since each link has very little to show, the page is overwhelmed by several links, with very little text to read. Normally, most application developers use collapse and expand the tree to solve this problem. Even this will take away the space and will make the page divided into several narrow columns. In order to solve this problem, I came up with this idea. No one knows if this will be liked by people. Only usage and feedback will tell if this is a good navigation model.

If this model of a document is available to the author, at the time of creating the document, then it will force the author to use the ‘healthy’ practice of writing structured documents. This model is also useful for collaborative authoring environments. And as mentioned above, it is certainly good for handhelds, which need not download the entire document into the PDA.

As mentioned in the beginning, this model provides a non-traditional authoring and presentation model for structured documents, but based on the legacy ideas on structured documentation.


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: