Recently, an article was published and shared on Station about the Gemini protocol. I feel that this article warrants a response. You can read the original article by following the link below.
Gemini is Solutionism at its Worst
Because the author's katakana name transliterates as 'Marius', and I don't have a Japanese keyboard layout, I'm going to call the author Marius.
It all started with a simple post by someone on Superhighway84 who shared a link to their Gemini site. While I was interested to see what that person was writing about and working on, I couldn’t, because that person did not share a HTTP link, with the Gemini URL as an alternative to it. Instead, it was only a Gemini URL.
Marius seems to have a problem with the fact that Gemini is not built on HTTP or 'compatible' with HTTP, e.g.:
What Gemini is doing, is saying “we don’t need no videos, images, stylesheets, nor JavaScripts, because we want to have a lightweight web experience, so we throw all that crap out!”. Fine, sounds great. But why does it require a new protocol for that?
Why couldn’t one simply build on top of existing HTTP infrastructure, throw away all the baggage and instead implement a new Content-Type, which existing browsers then could parse?
Why not have a new protocol? HTTP is a mess, and it's more fun to do something different. Yes, you could build on top of HTTP for a more 'minimal web' experience — Marius did it on his website — but Gemini is not HTTP. Gemini is (by design) not extensible while HTTP is. There would be nothing stopping a hypothetical ♊/HTTP capsule from becoming out-of-spec precisely because HTTP is so extensible. Additionally, a hypothetical ♊/HTTP client would have to verify that a capsule is within the ♊/HTTP subset. That's dumb.
The question here shouldn’t be why not to use a subset of HTTP and HTML, but rather, why not build on top of HTTP with a different markup layer other than HTML.
Because HTTP is extensible and Gemini isn't! That's it, take it or leave it!
Existing infrastructure could have been extended to offer a more lightweight experience of the web that doesn’t come with JS, CSS or anything else.
So just HTML? You can already do that. If you're really adamant, use Dillo.
People then could decide whether they want to go the extra mile of installing Lagrange or any other dedicated Gemini browser, or simply have a browser extension that would take care of rendering the Content-Type properly.
Here's a HTTP-Gemini proxy; no programs needed.
It probably wouldn't be too hard to write a browser extension in the same vein as the Overbite Project, but for Gemini.
If you read the the Gemini project page, you'll note that Gemini does not try to replace the web. Marius seems to assume that this is not the case, as evidenced by the following:
Hence, Gemini’s argument of being “lighter than the web” doesn’t make that much of a difference at all from a protocol perspective, and it certainly does not justify completely replacing existing infrastructure and standards that humans have mutually agreed upon.
it would nevertheless be possible to bend existing HTTP servers to only include the bare minimum additional info in their response, that would still allow a modern browser to process the data.
That's not the point of Gemini! It's intended to be separate from existing web technologies as opposed to being built on top of them.
Gemtext is barely a "variant" of markdown, acting most often like a subset of markdown. I wrote this post in a markdown editor with no problem. Sure, Gemtext could be brought more in line with whatever 'standard' markdown is — but who cares? If Gemtext renders well-enough in most markdown parsers, why should it be brought 1000% into compliance for something its not?
Also, per the Gemini FAQ, you can serve Markdown over Gemini.
Gemini FAQ (relevant section 2.9)
It’s also not IPFS or ZeroNet. It’s not a blockchain. It’s not bittorrent.
Good. I don't want to use those protocols to read someone's blog, and I'm not vain enough to want my own writing to be appended to some immutable database or sent bouncing around a peer-to-peer network forever.
Marius is probably right here. I don't know enough about secure networking to comment on this. As for tracking, I'd ask why someone would want to put all of that together? Gemini isn't really conducive to commerce, and who the hell would want to buy that data?
I think the main thrust of Marius' essay is that Gemini is exclusive because web browsers can't handle the protocol yet. He's annoyed that there are people who aren't publishing their content via a protocol that his browser knows how to use.
Gopher is also a protocol that his browser probably doesn't understand. Unlike Gemini, Gopher has a heritage and no certificates. I guess you could argue that Gopher is just as exclusionary as Gemini. It's not built on HTTP, it could allow tracking with some backend server configuration, and isn't easily accessible from a modern web browser.
I think the point of Gemini is to make a space for people to publish what they want to say away from the mess that is the modern web. That's all. If you don't like it, feel free to ignore it. You could even pull a Stallman and refuse to read or access anything published over Gemini.
I do have a question: If whoever shared that Gemini link on Superhighway84 had instead shared a Gopher link, would you still be malding this much?
Marius updated his article with the following:
Update: It looks like Gemini has officially started to fall apart. Not only has it apparently reached its peak interest at the beginning of 2021, people like Drew have also stepped away from Gemini, citing the lack of interesting content, which is what I too pointed out in my follow up to this post a while ago. I applaud Drew and everyone who came to the same conclusion.
Let's take this apart, starting with the first sentences:
It looks like Gemini has officially started to fall apart. Not only has it apparently reached its <peak interest> at the beginning of 2021 [...]
Peak interest according to Google search statistics as of 2022-05-15. If you expand the data's date range, you'll find generally consistent search interest with a spike at the beginning of 2021. Notably, the graph Marius links to is measuring Gemini as a 'topic', not a 'search term'; apparently Google measures these differently. If you compare the search terms 'Gemini protocol' and 'Gopher protocol', you'll see that they're about as popular as each other, i.e. niche and obscure internet protocols good for document storage and retrieval. I think the graph as linked is misleading and opaque. What does 'interest' as measured by Google even mean?
Marius continues:
[...] people like Drew have also stepped away from Gemini, citing the lack of interesting content, which is what I too pointed out in my follow up to this post a while ago.
Ok, cool, Drew DeVault stepped away from Gemini and baleeted his capsule. Finding something uninteresting or not finding interesting content is a you problem, not a problem with an internet protocol. Sure, people who use Gemini ought to write more about non-Gemini things; however in my experience the content on Gopher and on Gemini is similar – small personal logs and things people find interesting.
I applaud Drew and everyone who came to the same conclusion.
Ok.
Marius links to another post where he complains about the /r/geminiprotocol subreddit (?) and how exclusive the protocol apparently is, even going so far as to call it a 'crypto-bro type community'. He complains that Gemini
... doesn't natively allow any input to what they put out there, e.g. through comments or discussion platforms.
Counterpoints:
gemini://station.martinrue.com
gemini://midnight.pub
gemini://astrobotany.mozz.us/
gemini://nixo.xyz/
And what I'm doing now, i.e. writing a post in response and posting to my space.
Then he cites a github issue where Drew DeVault kinda makes an ass of himself by threatening to IP-block users of a particular client.
C'est la vie 🤷