Write HTML. If that’s not enough, also write CSS. If that’s also not enough, write JS. But you’d be surprised how much you’ll find that CSS is actually enough, if you’re good at it.

(But be sure to check the accessibility of what you’re doing. Adding a little progressive enhancement JS to fix that is correct behaviour.)

From: @slightlyoff
https://toot.cafe/@slightlyoff/112656907361237543

Alex Russell (@[email protected])

Going against the grain reliably blows up your spot because HTML and CSS are shockingly efficient UI compression syntaxes. You can't beat 'em, byte-for-byte, and ~30 years of engineering have gone into optimising them for the *specific* environment they thrive in: loading sites the first time, through a straw, on CPU-starved devices. Every time it has looked like the environment would favour less efficient approaches, the world has changed in ways that disappoint post-scarcity naïveté.

Toot Café
@sil @slightlyoff
This reminds me of the time (a long time ago) I saw a website had a Java applet just for having the navigation links change colour/background colour on mouseover. I *think* at the time CSS could already do that.
It was such a WTF moment I share it whenever it seems at least vaguely on topic.

@sil amen!

and as a free bonus, if you started with writing sensible markup, chances are pretty high that you made something that can be grasped without all the extra bells and whistles.

something likely to work (or be made workable) on slow connections or on slow devices.

How web bloat impacts users with slow connections

You Might Not Need JavaScript

Examples of common UI elements and interactions with HTML and CSS alone.

@sil @slightlyoff 100%. Unfortunately, it looks like the language is taking a turn to the latter and needing CSS/JS is not a "if that's not enough" but a "you'll have to do it for some functionality to actually work, like it or not" (e.g. dialogs, indeterminate state)