Gopher Predates the Internet as We Know it But still useful.

By André Faust

For those who have been around since the beginning of the internet Early 90’s will remember “Veronica, Archie.  Veronica was the search engine for the Gopher Protocol, and Archie was the search engine for FTP (File Transfer Protocol).  In its early days Archie, Veronica and gopher were available on university campus to allow access to research.

Most of the information that you would retrieve would text based documents using a modem anywhere between 300 baud to 2400 baud.

While gophers has taken a back seat to the modern day internet it still can have its place, for activists, or groups who only wish to disseminate in formation with in the group.  The only catch here is that you have to set you computer as a gopher server as well a gopher client.

The advantage of using gopher is that it is very light weight and because most of the information is text based it does not consume as much band width as the HTML (Hyper Text Markup Language) protocol which great if you using a mobile where the providers nickel and dime you once you go over the allocated bandwidth.

Cameron Kaiser from the Overbite project explains why Gopher is relevant even in today’s world.

Why is Gopher Still Relevant?

Cameron Kaiser, from the Overbite Project

Most people who “get” Gopher are already using it and instinctively understand why Gopher is still useful and handy. On the other hand, people who inhabit the Web generation after Gopher’s decline only see Gopherspace as a prototype Web or a historical curiosity, not a world in its own right — and more to the point, being only such a “prototype,” there is the wide belief that Gopher plays no relevant role in today’s Internet and is therefore unnecessary. This has led to many regrettable consequences, such as the neglect of servers and clients, or even active removal of support.

However, there is much to be gained from a heterogeneous network environment where there are multiple methods of information access, and while the Web will confidently remain the primary means of Internet information dissemination, there continues to be a role for Gopher-based resources even in this modern age. Gopher and the Web can, and should, continue to coexist.

The misconception that the modern renaissance of Gopherspace is simply a reaction to “Web overload” is unfortunately often repeated and, while superficially true, demonstrates a distinct lack of insight. From a purely interface perspective, there is no question that Gopher could be entirely “subsumed” under the Web (technical differences to be discussed presently). Very simple HTML menus and careful attention to hierarchy would yield an experience very much like a Gopher menu, and some have done exactly that as a deliberate protest against the sensory overload of modern Web 2.0.

Gopher, however, is more than a confederated affiliation of networks with goals of minimalism; rather, Gopher is a mind-set on making structure out of chaos. On the Web, even if such a group of confederated webmasters existed, it requires their active and willful participation to maintain such a hierarchical style and the seamlessness of that joint interface breaks down abruptly as soon as one leaves for another page. Within Gopherspace, all Gophers work the same way and all Gophers organize themselves around similar menus and interface conceits. It is not only easy and fast to create gopher content in this structured and organized way, it is mandatory by its nature. Resulting from this mandate is the ability for users to navigate every Gopher installation in the same way they navigated the one they came from, and the next one they will go to. Just like it had been envisioned by its creators, Gopher takes the strict hierarchical nature of a file tree or FTP and turns it into a friendlier format that still gives the fast and predictable responses that they would get by simply browsing their hard drive. As an important consequence, by divorcing interface from information, Gopher sites stand and shine on the strength of their content and not the glitz of their bling.

Furthermore, Gopher represents the ability to bring an interconnected browsing experience to low-computing-power environments. Rather than the expense of large hosting power and bandwidth, Gopher uses an inexpensive protocol to serve and a trivial menuing format to parse, making it cost-effective for both client and server. Gopher sites can be hosted and downloaded effectively on bandwidth-constrained networks such as dialup and even low-speed wireless, and clients require little more than a TCP stack and minimal client software to navigate them. In an environment where there are cries for “green computing” and “green data centres,” along with large-scale media attention on emerging technology markets in developing nations and the proliferation of wireless technology with limited CPU and memory, it is hypocritical to this author why an established protocol such as Gopher would be bypassed for continued reliance on inefficient programming paradigms and expensive protocols. Indeed, this sort of network doublethink has wrought large, unwieldy solutions such as WAP, a dramatic irony, since in the case of many low-power devices such as consumer mobile phones, the menu format used on them is nearly completely analogous to what Gopher already offered over a decade earlier. More to the point, few in that market segment support the breadth of WAP, and those that can simply use a regular Web browser instead.

Finally, if Web and gopher can coexist in the client’s purview, they can also exist in the server’s. HTML can be served by both gopher servers and web servers, or a Gopher menu can be clothed in CSS, translated to HTML, and given to a web browser (and in its native form to a Gopher client). This approach yields a natural and highly elegant consequence: if you don’t want to choose strictly one way or the other to communicate to your users, choose neither and offer them both a structured low-bandwidth approach or a higher-bandwidth Web view, built from the same content. The precedent of a single serving solution offering both to both clients has been in existence since the early days of the Web with tools such as GN, and today with more modern implementations such as pygopherd. Gopher menus are so trivial to parse that they can easily be HTML-ified with simple scripts and act as the basis for both morphs; what’s more, their data-oriented approach means they require little work to construct and maintain, and content creation in general becomes simple and quick with the interface step already taken care of. Plus, many servers easily generate dynamic gopher menus with built-in executable support, providing the interactive nature demanded by many modern applications while still fitting into Gopher’s hierarchical format, and virtually all modern Gopher servers can aggregate links to Web content to forge bidirectional connections.

Modern Gopherspace represents the next and greatest way for alternative information access, and the new generation of Gopher maintainers demonstrate a marked grassroots desire for a purer way to get to high-quality resources. Not simply nostalgia for the “way it used to be,” modern Gopherspace is a distinctly different population than in the mid 1990s when it flourished, yet one on which modern services can still be found, from news and weather to search engines, personal pages, “phlogs” and file archives. It would be remiss to dismissively say Gopher was killed by the Web, when in fact the Web and Gopher can live in their distinct spheres and each contribute to the other. With the modern computing emphasis on interoperability, heterogeneity and economy, Gopher continues to offer much to the modern user, as well as in terms of content, accessibility and inexpensiveness. Even now clearly as second fiddle to the World Wide Web, Gopher still remains relevant. — Cameron Kaiser