Jaakko Keränen develops Lagrange, a graphical client for the Gemini and Gopher protocols, and writes about its releases.
Commenters recommend the Lagrange browser for Gemini, noting it supports feed subscriptions, Gopher and the Spartan protocol.
> HTTP stands for Hypertext transfer protocol. The whole thing was predicated on sending HTML documents and couldn't originally send anything else.
OK, HTTP/0.9 was apparently like that. By HTTP/1.0 (1996) they'd learned better, and that was the growth phase:
https://www.w3.org/Protocols/HTTP/1.0/spec.html
> MIME is a hack to add attachments to email that was later also hacked into HTTP so you could send add "attachments" to a protocol designed only to transfer hypertext, it's a kludge added in version 1.1.
Like how Gopher got kludged to add other item types? All useful protocols evolve, and Gopher is no exception.
https://github.com/gopher-protocol/gopher-plus/blob/main/gopherplus.md
> Gopher's main difference with the web was that its linking was directory-based with directory tree documents rather than embedded hyperlinks. This was inferior, strictly speaking since you can easily make a directory HTML document on the web, but you could also cross-link.
Yes, that's true.
> I'm sure that would have been changed though, along with additional file-types or whatever had Gopher succeeded. The web's success over Gopher was never down to technical details.
Also true, and that New Gopher is now called Gemini.
https://geminiprotocol.net/
It also defines a hypertext document format (Gemtext) but it allows HTML-style free linking and (depending on client) inline images, although that's not really what the Gemini users want. Again, this is more social than technical, and…
Centralization is key to imparting knowledge, establishing law and order, and securing our existence through terraforming the planet on an immense scale — which is what separates humans from animals.
Scott Alexander uses the example of the US interstate highway system to defend the type of “centralization” which has been so crucial in humanity’s increasing standard of living [1]:
> I like Seeing Like A State as much as anyone else (though see the caveats in Part VII of my review for some criticisms). But it worries me that everyone analyzes the exact same three examples of the failures of top-down planning: Soviet collective farms, Brasilia, and Robert Moses. I’d like to propose some other case studies:
> 3. The interstate highway system: 1950s army bureaucrats with a Prussia fetish decided America needed its own equivalent of the Reichsautobahn. The federal government came up with a Robert-Moses-like plan to spend $114 billion over several decades to build a rectangular grid of numbered giant roads all up and down the country, literally paving over whatever was there before, all according to pre-agreed federal standards. The public had so little say in the process that they started hundreds of freeway revolts trying to organize to prevent freeways from being built through their cities; the government crushed these when it could, and relocated the freeways to less politically influential areas when it couldn't.
Put simply, centralization is in our DNA. It is…
U+0007 represents the character for ‘make the bell on the teletypewriter ring.’ This isn’t practically used by hardly anyone today, but it remains a part of the Unicode standard and probably will forever. I don’t want to disparage Unicode, because it does provide a good solution to the problem. But it has its own issues and its own degree of complexity.
This issue is something I’ve been thinking about lately since since beginning to use Gemini. Gemini is a minimalistic file transfer protocol, like HTTP but for transferring plaintext. But it builds on top of Unicode, of course, and so it inherits all of Unicode’s complexity. Suddenly, the most difficult part for Gemini client authors is not implementing the protocol itself, but correctly handling the complexity of Unicode text rendering. (E.g. https://gmi.skyjake.fi/gemlog/2021-07_lagrange-1.6.gmi)
Obviously, I’m not proposing replacing Unicode. But Unicode is complex, and that complexity ends up being inherited by all projects built on top of it. That’s an example of complexity that’s super easy to miss unless you’re looking for it. Which I think is the original author’s point. Unless you actively try to decrease complexity, complexity only increases.
As someone rooting for [NetSurf](https://www.netsurf-browser.org/) (and any other remaining independent browser engines) to survive, I wonder if they'd be better off not supporting Javascript at all and simply focusing on good support for modern HTML and CSS, so it can at least be used to read documents. If Javascript is what finished TenFourFox, maybe attempting to support the full weight of modern Javascript and web apps is a trap. Let the big browsers try to be an entire operating system.
Ultimately I'm coming to think that Gemini may be the best hope for a simpler internet that individuals can contribute and manage.
- https://thedorkweb.substack.com/p/gopher-gemini-and-the-smol-internet
- https://drewdevault.com/2020/11/01/What-is-Gemini-anyway.html
Personally I love the Lagrange client on desktop, and the Ariane Android client.
- https://gmi.skyjake.fi/lagrange/
- https://oppen.digital/software/ariane/
> [...] you can build UIs that are snappy and keyboard driven.
That's not an advantage that is exclusive to TUIs; after all, you're running your TUI inside a graphical application that emulates a terminal. (Unless you're rocking an actual VT102, in which case I bow down to you.)
In fact there's an entire class of applications that are extremely snappy and keyboard driven, by their very nature: games.
Some people have taken to writing GUI apps like you'd write a game, and the effects range from OK to fantastic. Check out Lagrange (https://gmi.skyjake.fi/lagrange/), AppManager (https://tildegit.org/solene/AppManager), Dear ImGUI (https://github.com/ocornut/imgui), egui (https://github.com/emilk/egui), and many others.
Not just the web. Gemini and Gopher did an astounding reduction on proxied sites.
Such as gemini://gemi.dev/cg-bin/waffle.cgi
Open any linked site, or enter your own. Just try with Ars Technica.
Head to the bottom, and compare the size of the converted Gemini page vs the original HTML one.
As for the client, you can try Lagrange.
https://gmi.skyjake.fi/lagrange/
For news over Gopher (they will work on Lagrange too) you can try gopher://magical.fish, the NEWS link has tons of links to major news sites' RSS converted into Gopher.
EDIT: magical.fish is now down, but you can reach these:
gopher://codevoid.de/1/cnn