A Brief History of This Site’s Browser Requirements

This website has existed only since January 2007. Only then did I finally get round to realising that I ought to have a “proper” presence on the World Wide Web. There was an old site from ten years earlier, but it was all in “my” directory at an Internet Service Provider, without even its own domain name. It was never intended as more than a loose collection of occasional writing to help promote my consultation services. Even then, it lay dormant for nearly five years until revived in 2004 for a research project that I tried to write-up-as-you-go-along. After another such project a couple of years later, the old site had grown to a thousand pages. (For the record, the old site was accessible as www.ozemail.com.au/~geoffch until its discontinuation in April 2011.)

Formal help for my readers to find their way around all that material at the old site had always seemed well beyond my means. After all, I am not an “HTML author” or “web designer” and haven’t any more interest in becoming one than I have in becoming an expert at the macro language of any word processor. The best it seemed I could do was to place at the top and bottom of every page a chain of up-links through the site’s directory tree.

That truly was unreasonable of me. I myself dislike intensely those many websites that exist to present reference material yet constrain their readers to follow links from page to page with no overview easily to hand. The whole point to reference material, at least in a subject that is rich in interesting content, is that readers may connect information in ways that the author thought unlikely, or even in ways that simply never would have occurred to the author. It just does not make sense to me that the links on each page of a large collection can be the sole guide to that page’s relationship with other pages.

Unsurprisingly then, I have gone to the other extreme and removed all navigational support from all document pages. Of course, where the text of a document touches on something that is described in greater detail on another page, there is a link in place. Such links are surely the essence of the web. But those clumsy chains of up-links are gone, as are any other links that looked like inventions of necessity. Instead, I provide you with what I think are easy means to see what’s here—indeed, to take in just how much is here. A dynamic table of contents (TOC) lets you take in my arrangement of the site while concentrating on whatever bits of it interest you.

Much to my surprise in 2007, it turned out that a satisfactory table of contents is far from trivial for a web site. The difficulties are perhaps why navigational support for large websites of complex technical material tends to be extraordiinarily poor. Even the giant corporations of the industry show nothing to be proud of on this point, and most of them get this poor outcome at the price of expecting us to let them keep cookies—or, worse, execute their code—on our computers. I have sought from the start to refrain from all such imposition, but there are limits to what can be achieved with just the basics of HTML, CSS and JavaScript. Though the old site was very near to being completely dumb, this new site does have technical expectations for browsing the site.

In designing for a TOC I had three essential requirements. First, for a TOC to count as usable, it must allow that multiple branches can be open simultaneously, it must always show where you are in the possibly very large tree that you have opened, and it must preserve your selection of branches as you browse from page to page. Second, this must all be done without saving anything, e.g., cookies, on your computer or running anything more demanding than JavaScript and only then to script the Document Object Model (DOM). Finally, both for you if you choose not to run my scripts and for me when I write the content, the document pages must be independent of the TOC.

That each document page and each TOC (and a banner, too) can be viewed independently and be written independently fitted naturally into an original implementation with FRAMESET and FRAME. As much as documentation of HTML 5 may say that frames are obsolete, they might better be described as discontinued. Not all the functionality of frames can be reproduced straightforwardly with DIV and fixed positioning. Really, there should be a rule for standards committees: if you say some functionality is obsolete, then it’s your duty to show how the functionality is superseded. When I designed this website’s user interface in 2007, it certainly was not reasonable to disregard users of Internet Explorer 6 (which had no support for fixed positioning) and so I wrote the user interface with frames. For a reworking in 2011, I persisted with the frames.

As of February 2021, the frames are gone in favour of DIV and IFRAME. To get anywhere near to reproducing the behaviour of a FRAME, the DIV must have fixed positioning. This is the website’s first requirement that goes beyond what browsers have supported as quirks mode, which I have long taken as some lowest common denominator to conform to. My thinking, rightly or wrongly, is that quirks mode ended up as the distillation of many years of experience by countless people before standards were settled on and is arguably known more definitely than are all the sometimes very different interpretations that various browsers have of the supposedly definite standards.

Use of IFRAME is natural for the desired independence, but the independence perhaps does not need to be absolute and it’s only inevitable that use of IFRAME will go away too. But I do not look forward to that! I have actual work to do!