Gopher / Gemini

Text-Based Internet:
Gopher and Gemini

(This page is a work in progress and will eventually expanded into multiple pages for each protocol!)

A lot of personal websites, especially on Neocities, tend to be intentionally "retro" and nostalgic. While some of it is either blind nostalgia or younger people fixating on an aesthetic ("webcore?"), I think a lot of the retro spirit on Neocities comes from the simple desire to escape the bad parts of the modern web and focus on a simpler and often better time. We create retraux personal websites to defy the modern, polished, algorithmic, corporate web.

Of course, the internet didn't start with Geocities. So if we really wanted to go back to the past, we could go back even further and make our sites even simpler. Neocities sites are basic and static, but with all of the silly things we like to put on our sites like giant images, media players, scripts, and hundreds of GIFs per page, page load times can still be a problem.

Because of this perceived heaviness of the web, there's been a small, but passionate revival of simple text-based internet technology. No images, videos, music, or even formatting. I was skeptical about all this when I heard about it at first, but eventually I kind of grew fascinated by these technologies.

While there are serious limitations compared to hypertext on the Web, there's a lot to like about simple text-based internet as well. It's super fast and lightweight. Text-based internet is smaller, so it should in theory use less energy to serve and browse. And... it just kind of has a cool hacker vibe to it!

I'm pretty new to all this stuff, but I'm excited to explore it more! So this document is all about my exploration in the realms of two text-based protocols: Gopher and Gemini.

The Gopher Protocol

Gopher is an old technology. It's about as old as the very beginnings of the World Wide Web and it shows. Gopher is kind of like a version of the web that's more oriented around browsing directories and their files.

While you can program a Gopher server to do some wild stuff, the protocol itself is still built around displaying directory listings and files. When you visit someone's Gopher site (a "gopherhole"?), most of the time the directory listings and files thing is pretty apparent.

Because Gopher sites are often lists of files, you'll find a lot of content can be literally in the form of TXT files that are uploaded to the server. Since Gopher does not contain any formatting abilities, if you are uploading an article that doesn't contain any links or dynamic content, it's easier to just write it out as a TXT file and upload it.

Because of the lowtech vibes as well as the way that most Gopher servers tend to have directories of random files you can just browse, I feel like Gopher really has this "hacker" vibe to it that's pretty cool. Because Gopher is so old, you can access modern Gopher servers on very old computer systems, which is also really neat.

You can access my Gopher site at gopher://text.mew151.net. You will need a compatible Gopher client to visit it.

Project Gemini

While Gopher is really old, Gemini is really new. You could call it a modern version of Gopher, but I think there are enough differences to make it its own thing as well.

Gemini is focused more on making actual "sites" instead of just directory listings. This makes it feel a lot more like the Web, since you're visiting pages with links on them instead of directories with files and subdirectories in them. It's a simple difference but it makes everything feel a bit more simple and modern as a result.

Gemini also has something that Gopher does not: Markup. Well, kind of. Gemini uses a very, very simplified version of markdown called "gemtext". You only have a few structural tools to use: headings, unordered lists, blockquotes, and... well, that's about it. You're not given access to colors, bold, italic, or other formatted text. I think it's fine since this is supposed to be a plain text medium, but having semantic markers like headings is quite useful. Gemini clients don't have to render out headings in any special way, and can choose to leave the gemtext syntax visible.

I feel like Gemini definitely is more user friendly than Gopher. I think it accomplishes what it sets out to do very well: when you visit a Gemini Capsule, it really feels like you're on someone's small, obscure, and cozy website. Gemini Capsules feel very human whereas Gopher feels like you're navigating one of those automated call systems. Don't get me wrong: Gopher is still very neat but if I had to recommend a protocol to my less nerdy friends I'd definitely pick Gemini.

You can access my Gemini Capsule at gemini://text.mew151.net. You will need a compatible Gemini client to view it.