Vivek Haldar

The One Thing

The first HTTP connection was made in November 1989 (Tim Berners-Lee had first proposed the idea in March of that year).

The idea of hypertext was also an active research area at the time. Look at the proceedings for the ACM Hypertext Conference 1989, and you will find a plethora of papers delving into what the structure of hypertext documents should be, how they should be used, how linking should work etc. Going forward and backward through other years of the same conference will show you more and more variations and details on all aspects of hypermedia.

HTTP and HTML bucked several established ideas that the academic community was convinced were good ones, if only they could find neat implementations of them. His crude implementation must have looked primitive for several reasons. For example, links were not brokered by some central entity, and there was no guarantee of them actually working. They could be incorrect, or simply break if the target moved. Quotations did not automatically preserve links back to the source. And so on. Of course, it was these very characteristics that enabled it to scale and spread without any central points of failure or bottlenecks.

The doomed Project Xanadu tried to bring several of these ideas to life, but failed, arguably under the weight of its own complexity. Consider the idea of canonicalizing the act of copying, and what a strain it was both conceptually and in terms of implementation and resource consumption:

Xanadu was to consist of easy-to-edit documents. Links would be available both to and from any part of any document. Anybody could create a link, even in a document they did not write. And parts of documents could be quoted in other documents without copying. The idea of quoting without copying was called transclusion, and it was the heart of Xanadu’s most innovative commercial feature - a royalty and copyright scheme. Whenever an author wished to quote, he or she would use transclusion to “virtually include” the passage in his or her own document.

Nelson was frequently frustrated by his failure to convince casual questioners of the importance of his transclusion idea. Transclusion functions like the “make alias” command familiar to Macintosh users. An alias works as a fully functioning copy of a file or application, but it is really just a pointer, or virtual copy. Click on the virtual copy, and the original file or application begins to run.

The key to the Xanadu copyright and royalty scheme was that literal copying was forbidden in the Xanadu system. When a user wanted to quote a portion of document, that portion was transcluded. With fee for every reading.

Transclusion was extremely challenging to the programmers, for it meant that there could be no redundancy in the grand Xanadu library. Every text could exist only as an original. Every user in the world would have to have instant access to the same underlying collection of documents.

Of all the design axes of a hypermedia system, only two ended up mattering: simplicity, and scalability.

Of course, hindsight is perfect. But it takes courage and vision to neglect all the bustling activity in a field and pull out a tiny sliver of it–the right sliver.