Re: A proposal to freeze the Gemini specification

A TLDR: the ecosystem can evolve without changing/breaking the existing 
spec. Let's freeze the spec soon!

On Mon, Oct 25, 2021 at 11:21:04PM +0000, mntn wrote:
> I think you may be asking for a heavier process than is warranted. It is 
my personal hope that there will be no further versions of the spec once finalized,

Agreed that the Gemini spec seems feature-complete for now. There was a 
time when I would've liked to see features like compression and tables, 
but the spec doesn't prevent anyone from serving up an alternate mimetype 
like text/gemini+gzip or csv. Clients like Lagrange can load a CSV 
document from a link as an inline table just like they load inline images 
(following a user gesture, ofc). This is a good example of adding 
functionality to the ecosystem without adding functionality to the spec.

> other than perhaps a change from TLS should it ever become extremely 
obsolete, decades from now.

Also agreed that it might be necessary to deprecate some TLS versions as 
time goes by, but that should be quite straightforward: deprecate one 
version of TLS, have capsules stop supporting it while clients support old 
and new versions, and then remove support from clients.

Speaking of TLS: ome people from the netsec crowd have bristled at 
Gemini's TOFU model, but I don't think fixing that should require changes 
in the spec either.  Adding e.g. a DHT of some sort doesn't have to change 
how the Gemini protocol works; it can simply be a thing users use to 
verify certs "out of band" the first time they visit a capsule.  Stuff 
like Tor hidden services are also a good fit for Gemini (I think the part 
of the Gemini Space accessible over Tor is called "Deep Space") and can 
mitigate the issues inherent to TOFU without changing the spec.

Adding features is typically misguided: it's better to *complement* Gemini 
with other protocols suited for other purposes than to *extend* it. One 
such protocol is the spartan:// client-to-server protocol.  Gemini can 
concentrate on supporting server-to-many-client situations while Spartan 
can concentrate on client-to-server communication.

(This is not necessarily an endorsement of Spartan; I do have some issues 
with it, but that's off-topic).

The ecosystem can evolve, but the spec seems about done.

Welcome back, Solderpunk.

-- /Seirdy

---

Previous in thread (18 of 34): 🗣️ Rohan Kumar (seirdy (a) seirdy.one)

Next in thread (20 of 34): 🗣️ panda-roux (contact (a) panda-roux.dev)

View entire thread.