About Gopher, the old school pre-Internet

2021-07-13 @Technology

Though a patron of minimalist web, somewhere among the remnants of the early Internet, the IRC Chat and the older Bulletin Board Systems, I completely overlooked the Gopher protocol/ecosystem.

Having existed before the HTTP/web, Gopher effectively renders a much simpler and stripped version of what an HTTP web page would encompass.

A Gopher page effectively comprises of nothing but plain text with links to further content: among other categories, a menu or directory (effectively another Gopher page with links), text - a plain-text file, image, audio, video, binary, along with other downloadable content. Links also tend to come prefixed with one of these classifiers, making content identification fairly intuitive.

A page can also contain a text field you can submit, though I’ve only seen this used for search and haven’t yet discovered other form elements.

That’s it; no special formatting, tables, frames, or inline images: these along with any media you must explicitly download. Everything appears as plain as I would desire of most of the web; plainer even than how I render the web through a text-based terminal browser, for even that does not entirely eradicate the extraneous menus and some bloat.

Consider Gopher slightly glorified plain text with links you can follow. Voilà.

And how does one access this content? Firstly, Gopher pages acquire the form ‘gopher://domain’ or simply ‘gopher://domain’, running implicitly on port 70 in contrast to the (unsecure) HTTP port 80. There isn’t an HTTPS equivalent to Gopher, which isn’t intended to facilitate encrypted transactions.

Though specialized clients exist, many modern browsers can leverage the Gopher protocol as is, so simply try some of the below links if they work for you. Or see the floodgap page for client support. In Unix CLI land, both lynx and W3M (if respectfully compiled) render Gopher pages.

But even if a browser lacks native Gopher support, HTTP gateways exist. The floodgap http gateway is one. For instance, compare the native link to Gopher Lawn (one of the more comprehensive resources), or the http gateway redirect.

Note, the HTTP gateway redirects open severely slower compared to a native Gopher link, thus effectively eliminating the advantage of the otherwise faster Gopher due to the slimmer protocol and content. In addition, the gateway/proxy wraps the underlying pages with additional HTML you wouldn’t see in native mode.

To my amazement, I’ve discovered plenty of Gopher pages still actively maintained. Beyond the downloadable, much of the content consists of news and phlogs. Phlogs are essentially the Gopher equivalent of Blogs, of which each entry constitutes nearly a plain text page I’d earlier alluded to: nothing but the essential. I strive for something similarly basic on this site, but the presence of whatever minimal HTTP formatting still cannot compare.

See an example of one phlog roll (http gateway link) indexing tons of different phlogs. Whenever I squeeze some spare ‘browsing’ cycles, I’m inclined to take a stroll down the phlog avenue. These somehow feel more personalized and content-worthy than most blogs I stumble across in recent years.

To stand corrected: limitless amounts of blogs exist out there of all degree of worthiness, but finding the old-school type of content on the modern web feels a far greater chore. Gopher, on the other hand, caters precisely to the ‘old-school’/the underground sort of crowd.

See additional Gopher links, some of the above repeated. Again, if lacking native Gopher support in your browser, open the corresponding link through the Gopher proxy.

As an enthusiast of things old-school and minimal, I’m quiet excited, for what I imagine another day or two. Maybe I’ll even host a Gopher site to cross-post my content. (I estimate the odds of this at about 5%).

Questions, comments? Connect.