In Doug Engelbart's 1968 demo (also on Google Video) of the computer as a personal tool (rather than a programmable calculator), we see outlines, word processing, copy-and-paste, domain specific languages and hyperlinks. The demo has been so prescient over the decades because the research team used and adapted the NLS as they went along, inventing idioms as they went. We still have a lot to learn from what they made, but in particular it's worth looking at how what forms of navigational links they built in. They thought about this in terms of knowledge retrieval, and the problem is this: From whatever screen (line or leaf of an outside, and view) you're on, how to address some other arbitrary place, and write down that address? They detail two types of addressing, and I've linked to screencaps of those slides.

'Hot' retrieval -- known destination:

  • Direct -- explicit specification: Jump to identity; Jump to name; Jump link
  • Indirect -- implicit specification: Jump ahead/return; Jumps referring to structure; Context analysis

'Cold' retrieval -- unknown destination:

  • Direct -- hierarchy -- categorization: For example, what is the directive to get Roman numerals for page numbers? See (NLS,Direc,1:sgdb)
  • Indirect -- keywords -- associative reordering: See (NLS,Sysgd,DocInd:sgxbn2)

Cold seems to be search methods, either free-text or by using metadata to reorder whatever data is on-screen--or is it referring to structure? I'm not sure. Hot retrieval uses either anchors embedded in the destination (direct), or the explicit or implicit structure of the data.

There are a couple of interesting methods there. "Jump link" means using the destination of another link as the destination of this one. It's like me providing a link, on this page, to "the destination of the top link at". A level of indirection--that's pretty neat. Jump ahead/return is just the browser history. Structural links are something we've implemented pretty badly on the www, as is. Engelbart was talking about linking to other documents, then down through the outline to specific lines. All we have is relative links and anchors have to be predefined. Lots to think about.