Gopher, A Simple Alternative To The Bloatware Of The Web
Español en este sitio.
Français sur linuxfr.org
Nowadays more and more people are tired of suffering the bloatware and threats of the World Wide Web. When the web was released to the public in 1993 it was just a system for sharing files and documents with hyperlinks. Thirty years later it has become a minefield of bots, spyware, tracking systems, invasive advertising, unwanted notifications, and other bad stuff.
Actually we have normalized that for reading a post, a recipe, or seeing a timetable on the web, we have to download a huge amount of data distributed among an invasive pop-up with a privacy / cookie policy notice requesting us to authorize them to share our data and browsing habits with them and their 7126 partners, a lot of ads we don't want to see, a suscription pop-up for something we don't want to subscribe to, images and videos we don't care about, and finally, in the middle of all this crazyness and with a bit of luck, we can see the content we wanted to see in the first place, mixed with more ads.
It has also been normalized the fact that to see something as simple as a cooking recipe we have to have javascript enabled in our browser. For those who don't know, javascript is an environment that lives in your browser and run on your machine whatever javascript program the web page you're visiting is sending to you. This delivers a lot of security problems, privacy issues, misappropriation of data, and so on.
To give us an idea, if we want to see a cooking recipe on a website it's not at all uncommon that we have to download from 2 to 10 megabytes of data with an average of 50 requests to (down)load everything1. If we make the numbers we will see that a plain text recipe is about 2 kilobytes. Adding to it html formatting and css styles to make it look neat will increase the size to about 3 kilobytes, let's be generous and put 4 kilobytes. So, how is it possible that to see something that is 4kB we have to download 500 to 2500 times more data? Because of all the bloatware: ads, videos, images, trackers, javascript, and the rest of things that you're forced to download want it or not.
Even though we are told to believe that this is inevitbale or even that it is fair by "put here the reasons that are good for the lobby, company or government of the moment", reality is that this is not so. The web was not this way and other options are available. One of those options is Gopher.
What is Gopher?
Gopher, like the WWW, is a protocol to share and access documents and files on the Internet that was published in 1991, two years before the World Wide Web. It was developed at the University of Minessota, hence its name because the mascot of the university and of the sports teams is Goldy Gopher2.
Gopher has a navigation system, more structured than the web, based on menus commonly known as gophermaps. This menus contain links to files and other menus and it is a plain text interface so it is very fast and requires very few resources. It's also a single request protocol, one request delivers only one resource and closes the connection.
It's a protocol from a time in which bandwith was tight, slow and expensive, and computers were not as powerful as today, so the aim was to share as much relevant information as possible with the least possible resources.
Gopher Is Bloatware Free
The simplicity of Gopher makes impossible or very difficult the abuses and bloat so common on the web for several reasons, including:
- Gopher has no sessions or cookies so it is impossible to track people3 and unnecessary to show a privacy and/or cookie's policy.
- The simplicity of the single request plus tha fact that you only get a file avoids the scenario where in turn other requests are automatically made to simultaneously get images, videos, or other files whether from the same server or from different ones.
- Because it is a protocol that only shares files it doesn't support javascript or any other similar things so it can not load and run directly a program on the user's computer.
- By having only a textual interface and lacking a content design system, the information is lighter because it is commonly presented as plain text. If you want something that looks pretty you can always share files in formats like ODF, PDF, PS, etc., and the user can always decide whether he wants, and can, download them or not.
Taken together, this means that Gopher is a very light system that doesn't require too much bandwith to work. Here content is king because it lacks all the bells and whistles so common on the web, and it also provides peace of mind because there is no tracking, ads, and all the nowadays web abusive behaviours4.
Gopher Is Not For Everyone (And That's Ok)
Although many people don't like ads, being tracked, cookies, pop-up windows, etc., it's also true that they think they can't live without much of that same blotware that makes possible all the things they dislike.
The web is like a bustling market while Gopher is more like a library. They're are two different things for different people and/or for different moments. If on the WWW everyone yells at us selling their goods, on Gopher we are in the coffee shop talking with friends and like minded people. Sometimes we like one thing and other times we like (or need) the other, and it's okay.
The use of Gopher declined in favour of the WWW in the late 90s but this protocol has survived to this day mainly thanks to small communities known as Pubnixes (Public Unix Access Systems) and tildes. Although in these communities there are many people with a technical profile and/or interests, there is a variety of people with different profiles, interests and hobbies.
Pubnixes are usually machines with few resources funded by a single person and some donations, so each pubnix has a limited number of users and this fosters the creation of more small communities as the number of people increases. Small communities favour people to interact more with each other and to get to know each other better promoting more genuine and relevant interactions.
People in some communities interact with people in others, which helps building and sustaining a social fabric connecting all the communities. Usually someone who is part of a community, at a given time, decides to create his own pubnix to accommodate new people so there are always intercommunal exchanges and people who belong to more than one community.
This whole ecosystem is an important part of the beauty of Gopherspace. Here people write and share because they have something to say or because they feel the need or the desire to do so. No one publishes twenty daily banalities to improve their SEO and those who read do so because they care and/or are interested, not because of the "Fear Of Missing Out"5.
On the other hand, people who need or want to interact almost in real time with a lot of multimedia content that is updated every single second, and people who want to create a personal brand to sell things, get thousands of followers and get tens of thousands of likes, are likely to feel out of place on the Gopherspace.
What I Should Do To Browse The Gopherspace?
Now that we already have an idea of what Gopher is and what it's not, chances are we'll want to take a look. As with for browsing the WWW we need a web browser, to explore the Gopherspace we need a Gopher client.
Years ago many web browsers supported both the WWW and Gopher but as times went on they decided to drop Gopher. One of the browsers that continues to support it is Lynx. Below there is a list6 of Gopher clients and extensions to activate Gopher support on Firefox-based browsers and Chromium-based browsers:
- Lagrange: is a graphical client available for GNU/Linux, BSDs, Macos, Windows and it also has beta versions for iOS and Android. In its web you'll see that is a client for Gemini but it also supports Gopher and other similar protocols.
- Bombadillo: is a TUI client for GNU/Linux, BSDs and Macos.
- Elpher: is a client for GNU Emacs.
- OverbiteWX: is an add-on for Firefox-based browsers.
- Burrow Gopherspace Explorer: is an add-on for Chromium-based browsers
Once you have the client installed, Gopher works with URIs of type gopher:// You can start visiting some gopher holes7 like the following:
-
FloodGap Gopher Docs: gopher://gopher.floodgap.com/
Here you'll find lots of information and resources about Gopher. -
SDF Public Access UNIX System: gopher://sdf.org/
One of the oldest and largest pubnixes. -
Bongusta!: gopher://i-logout.cz/1/bongusta
A phlog aggregator.
If you feel like it you can visit my gopher hole at gopher://lucio.albenga.es/. I have a links section with these and other links to phlog aggregators, pubnix communities, and more Gopher resources like search engines.
Final Thoughts
Probably most people will discard Gopher claiming that it's an "obsolete technology" or other similar arguments, others will be curious to see what goes on and will be visiting it sporadically, a smaller number will continue to visit their favourite gopher holes and a few will end up creating their own gopher holes or even a pubnix server. All that is fine, Gopher does not intend to sell anything to anyone or to solve the problems of the world.
As I said before, Gopher is one of the alternatives to the bloat and abuses of the web. There are others like Spartan or Gemini, but the important thing is to know that at a time when many people are complaining about the bloatware on the WWW, are talkink about the indie web, the small web and the smolweb, permacomputing, small online communities, and other similar things, Gopher has been providing a lot of it since 1991 and here it is, waiting for us to decide to meet it and give it a chance like a veteran craftsman who may not look as good as when he was young, but whose ability and precision are able to create a tool that lasts us a lifetime.
See you on the Gopherspace (or not).
Footnotes:
I tried different websites from among the first search results. Take into account that I have some blockers so the real numbers could be higher.
Some people has developed primitive session systems by autogenerating unique links "per session". These systems only work on single gopherholes and in no case something gets stored on the user's computer that allows to track him in the entire network or over time.
Keep in mind that Gopher is not an encrypted communication so if someone monitors you, he can see the contents you access, but that monitoring would have to be a man in the middle or your own Internet service provider. Although there are ways to have the Gopher equivalent of the WWW https, this is not part of the protocol specification.
The proposed list contains only a few options, there are a lot more. Unlike the WWW that only has 2-3 main browsers, making a Gopher client is simple so there are many, which is another advantage because it avoids factual monopolies.
A gopher hole on Gopher is the same as a web page on the WWW, and a phlog (Gopher Log) is the the same as a blog on the WWW.