Dioscuri, another application layer protocol

Jason McBrayer <jmcbray at carcosa.net> writes:
> IMO, we should resist the temptation to make Gemini a general-purpose
> application platform, and the like temptation to build a general purpose
> application platform alongside it.

The good old days when we had separate apps for everything was paradise
for me, and, well, still is because I can still happily live in that
world in my li'l Debian bubble.

You've seen me rant against web apps before, for example on here:
https://github.com/w3c/web-share/issues/173

But it was not easy for most people to ./configure, make, make install
things. Using web apps is something they can do.

As an example, email exploded once web-interfaces to email became
available.

If Gemini and adjacent protocols turn into a general-purpose application
platform, there need to be some sort of purpose or guiding light or
boundaries or reason for starting a new pile instead of working on the
already existing pile of junk.

Dioscuri doesn't have a client-side, server-served programming language.
Such things are the cause of a lot of the web's problems so that's not
what I'm proposing, but, the consequence of _not_ having it means that
every Dioscuri?app needs to have its own implementation.

Talk about complexity in the client! With SSH I can have an app on the
remote and call it from my client.

ssh some-server-name 'ls|tail'

The SSH client doesn't need to know or implement the semantics of ls or
tail. With Dioscuro, there is a lot of responsibilty for both sides to
be on the same page with regards to semantics.

Sandra

PS.
Here's an idea, in the mindset of green hat "thinking out loud":


along-side Gemini, client side should be "dumb" and the protocol (i.e.
the interface between client and server) also needs to be simple and
specific.

A handful of standard UI elements communicating with server back and
forth in a straight-forward way according to one specific protocol.

The following is not gonna sound retro, but? if parts of the page could
update without reloading the entire page, that'd go a long way to
alleviate a lot of people's desire for JavaScript, AJAX etc. One button,
one checkbox, one text field etc could be sent without having to send
the entire form, and one local UI area could be updated without having
to refetch the entire page.

I.e. the client holds only the view and the user inputs. It should be
like pushing on remote buttons with a ten foot pole on the other side of
a chasm.

PPS.
OTOH, what I just described sounds like it could turn a FOSS nightmare
that there ain't no AGPL strong enough to prevent, so uh, don't hold me
to that idea. Just thinking out loud.

---

Previous in thread (12 of 16): 🗣️ Nathan Galt (mailinglists (a) ngalt.com)

Next in thread (14 of 16): 🗣️ Jason McBrayer (jmcbray (a) carcosa.net)

View entire thread.