2020-11-25 The UI

I was talking to @Sandra about user interfaces. It all started with a link by @yhancik to an issue on GitHub for the CSS working group:

“Our primary goal with this document is to draw the attention of the developers of all major browser engines, Blink, WebKit and Gecko and invite them and anyone else interested to share their opinions about this proposal and the idea of a new, unified open web standard built around JavaScript.”

I think the proposal does touch on something meaningful (otherwise it would be much less interesting, of course): why do we need HTML, and CSS, and JS? And, given that this appears to meet a need, can this need be satisfied with a simpler solution, one that is easier to teach, to learn, less error prone. If I arrived on the web today, I would also wonder: what is this shit of garbled intertwined same same but different tentacularity‽ JS & JSON-über-alles‽ maybe, maybe not. But an interesting question nonetheless.

I mean, replacing all the various layers and their specific syntax with a unified JS+JSON representation is an interesting idea. And yes, I also share in the big nerd dream of a protocol based only on semantics. The first problem that arises is where the semantics end and the presentation begins. Sometimes the presentation also carries meaning. But more importantly, if anything print has shown us that there is an intense need for design: fonts, layouts, images, colours; these are all important to the newspaper and magazine industry, to the pamphlet makers and information visualisation designers, to the governments, the public relation officers, the clubs and associations and to book authors, and so on. For them, I suspect semantics-first is a bit like lyrics-first for a music sharing site: it’s not going to happen.

So between the dream of a semantic first web of a global information sharing network and the interest of everybody else in rich media for communication, I don’t know what to say.

But in my heart, I carry my own dream: to have a client that offers a written natural language UI: there is no need for forms because it information between client and servers is negotiated in a back and forth natural language, text mediated exchange until the system has the information it needs. UIs are designed Inform 7 style. And for that kind of setup, the Gemini protocol and markup would be good enough. We’d just need a more interesting clients and servers:

Maybe somebody somewhere knows how to hook up Inform 7... I want it!

Perhaps you think people like to pick things from a list, but realistically, how often is this true?

Perhaps it’s only true for short lists in the four to ten items range, though.

For all these questions, picking an answer from a list radio-button or drop-down style is painful. A drop-down with autocomplete might work. And now we’re not far from a simple text interface! Or should I call it prompt interface? We could autocomplete on the client, and we usually do in text editors that offer completion of all sorts of words.

I guess what I’m also implying is that no site can satisfy the need for an answer to a really specific problem where you just want to talk to a human. At least my hypothetical site would say: “I’m sorry but that sounds really specific and I have now idea what to say. If you call 123456789 you can talk to a human who can hopefully help. What do you think?” / “OK, will do.” / “Cheers, good luck.” Or something like that.


A later, and there’s an interesting defence of the tentacularity of the web: it basically says we need structure (HTML), presentation (CSS), interactivity (JS) all separated and goes on to list all ways in which these needs make sense, and I agree. That, to me, is not the problem. The problem is that we have a mess of three different languages and many more standards to learn. The proposed solution in the article involves adding more layers to the mountain, mentioning XSLT, Less, and many more. All allow you to generate the three we need from some other kind of format, except it isn’t standardized and the tech stack is even more byzantine than before. This is the kind of quick fix that doesn’t address the fundamental problem: the current technologies (HTML, CSS, and JS) are hard to teach and hard to learn, therefore adding to the stack is not going to make the problem go away.

– 2020-11-26 09:13 UTC

Please make sure you contribute only your own work, or work licensed under the GNU Free Documentation License. Note: in order to facilitate peer review and fight vandalism, we will store your IP number for a number of days. See Privacy Policy for more information. See Info for text formatting rules. You can edit the comment page if you need to fix typos. You can subscribe to new comments by email without leaving a comment.

To save this page you must answer this question:

Just say HELLO