Dioscuri, another application layer protocol

John Cowan cowan at ccil.org
Fri Oct 9 03:17:31 BST 2020


On Wed, Sep 30, 2020 at 12:14 PM Sandra Snan <sandra.snan at idiomdrottning.org>
wrote:


> 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.
>

I live in that world too.  But there are only a few of them: ftp, ssh and
friends, mail, etc.  I have no trouble learning them all.  But they are
very inconsistent, much like Posix command-line tools.


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

I'm not sure if you think that's good or bad.  See <
http://www.catb.org/jargon/html/S/September-that-never-ended.html>.


> 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.
>

Well, why work on Gemini instead of just using HTML and HTTP?  Simplicity
Gemini and text/gemini are simple enough without being too simple.  I
believe that Dioscuri is too.


> Dioscuri doesn't have a client-side, server-served programming language.
>

There's no reason Gemini can't ship JavaScript, or Scheme for that matter.
"JavaScript: The Good Parts" actually describes a very nice little language.

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'
>

Yes, you can, but the server is at risk if it allows you to ssh and run
arbitrary shell commands.  Posix systems are better defended than most, but
the firewall is far from complete.

*If* there were to be a new general-purpose application platform
> 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.
>

The trouble is that for decades now almost all the CPU power in the world
has been client-side, most of it underused.  Downloadable smart clients
keep the strain off the servers.  That fact will be with us for the
foreseeable future (phones are somewhat weaker, but there are a lot more of
them).


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

That's how HTML/HTTP began, and we know where that led to.  I was striving
for something different, *starting* from a smart client, downloadable or
not, and a fairly dumb server, which is where the web is moving now (see
"single-page application").  In particular, this means that the client
doesn't have to be a GUI or a TUI like lynx/w3m/etc.  It can be a CLI or a
batch job or any number of other things.  "Pages? What pages?  We don't
need no steenking pages!"

Intercooler does look interesting: I'm going to explore it further.

I once saw an application that had been converted from 3270 to a Windows
desktop product. I had been asked to give it a quick tryout to see how the
UI worked.  I went back to the programmers and told them that no Windows
user would put up with this complete lack of control.  The back end needed
to be event-driven.  Of course, the browser restored the 3270 model
completely.

PS I feel bad for shooting down Dioscuri so harshly, I hate being such a
> parade-rainer. jcowan is one of my idols


No problem.  Idols often have feet of clay, after all.




John Cowan          http://vrici.lojban.org/~cowan        cowan at ccil.org
Using RELAX NG compact syntax to develop schemas is one of the simple
pleasures in life....          --Jeni Tennison
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.orbitalfox.eu/archives/gemini/attachments/20201008/054f44b9/attachment.htm>


More information about the Gemini mailing list