Two cheers for the World Wide Web
— Ted Nelson
Ted Nelson invented hypertext but not the web. He thinks it hasn’t fulfilled its real potential, and I agree.
One of his good ideas that the web doesn’t really support is stretchtext – text that expands or contracts in response to the reader’s (dis)interest.

In my opinion it’s sorely needed. I spend a lot of time reading on the web and most of it is skimming/speedreading. For example, I often scan down text reading only the first sentences of each paragraph, unless I hit something interesting.
I won’t try to present Nelson’s exact ideas, I won’t try to speak for him. Instead I’ll take the basic idea of stretch text as a starting point and propose various of my own ideas. If some of them are poor, it’s my fault not Nelson’s.
Drop text
Probably the simplest and most obvious form of stretch text is what I call drop text. You sometimes see it on the Web. You have a text divided into sections, each with a section heading. But you don’t see the sections, just the headings. However at the beginning of each heading there is (say) an arrow pointing to the right. If you click the arrow, the arrow points down and the section appears (drops).
Drop text saves you having to read/skim the hidden sections — the visible title should be enough to determine whether you’re interested. It could also save you from having to look at material that is clearly not relevant e.g. “Obtaining a work visa” if you already have one.
You occasionally see variants of drop text, most commonly instead of an arrow a plus in a box (when the section is hidden) or a minus in a box when the section has dropped.
There are variations of drop text (currently very rare) that would be useful. For example, clicking on the arrow could rotate it down to only 45 degrees, causing only the first line or two of the section to appear. This would give you a better idea of whether you want to see the whole section. If you do, you click (say) below the arrow to turn it down to 90 degrees. Otherwise you click above it to send it back and hide the section.
Kill text
Sometimes even just the headlines are distracting and you ‘d like to make them go away. That’s the idea of kill text.
To the left of the drop text arrow we could have (say) a big X. Clicking on the X would cause the whole headline to disappear, along with the arrow and the X itself. Nothing left.
When you come across a list of headings you can quickly zap the ones you’re not interested in then try out the remains ones. Clearing out the irrelevant (to you) material saves you time and attention and allows you to focus on what’s important. Furthermore, once you’re finished reading a section you could kill it too. Eventually you could kill off everything for one reason or the other leaving nothing left – you’d know you’re done with that (say) page.
Images could also be killable (or shrinkable, while we’re at it). Ads too, though there would be strong resistance to such a feature. It would be useful to to be able to kill off individual paragraphs in an article, or delete everything up to the end.
Using kill text on an article is the literary equivalent of cropping a photo. As experienced photographers know, cropping often makes a major improvement in the quality of a picture, by removing uninteresting parts. The same could be true of kill text.
Killing and growing
If stretch text means making unwanted text disappear, kill text is its logical conclusion. Another way to use it is while reading. Once you’ve read a paragraph, zap it and let the remaining part of the article scroll up.
Of course you don’t have to read the whole paragraph before killing it. They could all be preset at 45 degrees giving you the choice of expanding it or killing it. This is basically what happens when you skim an article, you decide paragraph by paragraph whether to read or skip.
There is another notion complementary to kill text, namely what I call grow text. At the bottom of the page you have a logo, say the image of a seed. If you click it it ‘grows’ into a paragraph or so, with another seed below it. You could click away at the seeds till you’ve lined up some reading material, then kill it off gradually as you read it. This could be an interesting way to present a lecture (on big screen with stretch text enabled).
Of course you don’t have to kill off everything. You could leave important parts behind, perhaps temporarily collapsed. By so doing you create your own summary of the document that you could save for future reference.
Shallow text
One idea Nelson had in mind was text that could be expanded or contracted by changing a ‘depth’ lever. At one end of its range you would get the full document, at the other a brief summary.
We could perhaps enlist AI to do the summarizing but it’s more realistic to expect the author to prepare the summarization. One idea is to use special parentheses (e.g. curly braces) to delimit text to be omitted in the shorter versions. So if they write
Kill text {and grow text} can make reading easier
that specifies that the phrase and grow text be omitted from the shorter version. One refinement is to allow replacement text in the shorter version, e.g.
Kill text {etc | and grow text} can make reading easier
specifies that the shorter version is
Kill text etc can make reading easier.
Another idea is to allow nested curly brackets to specify more than one level of shortening (note that the parenthesized phrases must be collapsed from the inside out).
Length is just one measure of shallowness/depth. We could have other dimensions, like reading level or technical content. This you could order the full length article but with lower technical content (e.g., omitting math formulas). Authoring such multidimensional texts could be a problem.
Persistence
Can you save transformed texts? I think that’s very important.
Suppose a Physics student has a stretch text enabled version of the book for the course. As she reads it she kills and shrinks. The first to go is the forward (one reading is enough) and then the introduction. Then she zaps background material (like Newton’s laws) that she already knows, together with the pictures of Newton and his famous tree.
She has a list of topics for the course so she kills off whole chapters that aren’t required. As she works through the remaining chapters she reads then eliminates the informal explanations and some of the diagrams. But keeps all the formulas.
In this way she ends up wanting to retain a much more concise document. It’s vital that she be able to save it, because it’s her own personal summary text without all the dross between the important stuff.
She’d also keep a selection of the harder exercises, each terminated with a seed that grows into the answer.
Once I built a railroad … [… buddy, can you spare a dime?]
The obvious question is, why don’t I eat my own dog food? This article is rigid, unstretchable, unzapple when it could clearly benefit from some of the features described.
The problem is that currently none of this is implemented. It used to be – I had an authoring system using the MMP macro processor. Some of the macros were pretty intricate to write but easy to use and you could quickly mark up drop text, kill text, grow text and shallow text. However the machine it all ran on was eventually put out to pasture, and now I got nuthin’.
One of the important features of MMP was versioning. As the reader kills, grows, drops etc these decisions are recorded in a version expression, essentially an (eventually) large collection of parameter settings. As long as you have the original document and the version, you can recreate the final result of the reading process. Thus only the version need be saved.
Well, I plan to resurrect MMP somehow and then we can try out these Ted Nelson inspired schemes.
Pingback: Stretchtext or Bust – Ted Nelson’s unrealized vision - The web development company Lzo Media - Senior Backend Developer
TiddlyWiki has several Stretch Text plugins that support Nelson’s vision. Additionally, links in TiddlyWiki are bi-directional by default.