Live data from Hacker News

Sanding UI

blog.jim-nielsen.com

361–370 of 414 posts

Re: Sanding UI

#361

Decent analogy. I wonder how many techies have ever used a belt sander. Or have one. I think very, very few.

Woodworking is a popular hobby where it's possible.

But the tech market is centered in cities where owing a garage with tools in your 20s isn't possible.

Re: Sanding UI

#362
post #180

Earlier quoted context omitted.

I wonder what’s the most polished or “sanded” UI out there? Windows 2000. Everything newer has been slowly downhill.

Windows 3.1 was better. Windows 2000 introduced a lot of point and click, which just distracts from what you actually want to do on a computer.

Yes Windows 2000 distracts me from what I want to actually do with a computer, point and click.

It absolutely prevents me from hitting the windows key and hitting the up button twice or three times mattering on if logout is there if my memory serves right after shutdown to get to run and then hit enter or just simply use the arrow keys on the desktop to get to my computer and hit enter which are all things I could do on Windows 3.1 by hitting the alt button to open up the menu or tab to switch between icons in the highlighted thing which are actually all things that I could do on Windows 2000 Windows XP Windows server 2003 Windows Vista Windows 7 Windows 8 Windows 8.1 Windows 10 Windows 11 Windows 98 Windows 95

Re: Sanding UI

#363
post #360

I don't understand why putting the inside the is so unpopular. It completely avoids these problems and you don't need to come up with a unique id to use with 'for'.

I don't think it is "unpopular", the contrary in fact. It's just the best practice to stick to bronze-age standards, since reportedly there are still couple of assistive technologies that do not interpret the new perfectly valid and standardised pattern [1]:

> Both Dragon Naturally Speaking for Windows, and Voice Control for macOS and iOS, don’t recognize implicit association, so the [nesting input inside label without explicit for-id reference] wouldn’t work.

Naturally Speaking was reportedly acquired by a company named "Microsoft", and Voice Control have some connections to that "Apple" company.

[1] https://www.tpgi.com/should-form-labels-be-wrapped-or-separa...

Re: Sanding UI

#364
post #360

I don't understand why putting the inside the is so unpopular. It completely avoids these problems and you don't need to come up with a unique id to use with 'for'.

This is how I've been doing it for at least 15 years (maybe 20, by now?). It's also much cleaner syntax for the typical use case of checkboxes/radio buttons.

Put the label around the input, then put a span for the text if you want some styling for the text. You can even make the label display:flex and handle the positioning of the text that way.

Re: Sanding UI

#365
post #363
post #360

I don't understand why putting the inside the is so unpopular. It completely avoids these problems and you don't need to come up with a unique id to use with 'for'.

I don't think it is "unpopular", the contrary in fact. It's just the best practice to stick to bronze-age standards, since reportedly there are still couple of assistive technologies that do not interpret the new perfectly valid and standardised pattern [1]: > Both Dragon Naturally Speaking for Windows, and Voice Control for macOS and iOS, don’t recognize implicit association, so the [nesting input inside label witho…

Is that not what the ARIA standards are for?

Re: Sanding UI

#366
post #360

I don't understand why putting the inside the is so unpopular. It completely avoids these problems and you don't need to come up with a unique id to use with 'for'.

If you use a Rails helper to create a checkbox it puts a hidden field next to it with the "off" value to ensure something always gets POSTed back. I assume other frameworks do the same. If you put a element around those two input fields, it's no longer valid HTML.

This is not a problem for radio buttons, but I suspect a few people have been bitten by this and do it "just to make sure". In the same way, adding a semi-colon at the end of a line of JavaScript is rarely useful but people put them everywhere because they don't know when it's needed exactly (granted that one is a bit tricker to remember).

Re: Sanding UI

#367
post #348

Earlier quoted context omitted.

FastMail has one of the best-feeling web apps I've ever used. It's incredibly snappy and I never encountered any bugs while using it. They raised the bar for what I thought a web app could achieve.

I love fastmail but the webapp does this one thing that drives me crazy: The first (and only the first) email I read triggers a reload of the entire page for some reason. It's pretty quick but very jarring...wish I knew what was going on; anyone else see this?

I'd never used Fastmail and as a sometimes-UI guy, thought I'd check out their 30 day trial to see what all the praise was about. I saw your comment before going, so kept that in mind.

With a brand new user account, I was not at all able to reproduce your issue. I closed the browser and cleared cache and all that, but I did not see an entire page refresh at any point.

Perhaps there's some weird caching issue with your browser, or maybe you've got a browser extension misbehaving? Maybe I'm just lucky? Idk, but hopefully this helps.

Re: Sanding UI

#368

Earlier quoted context omitted.

Even with nesting you still need for/id attributes to make it accessible to common voice command software: https://www.tpgi.com/should-form-labels-be-wrapped-or-separa...

Not sure I agree with the conclusion of that article, according to it, only 2 screen readers don't support nested labels, I couldn't find statistics on how prevalent these are, but there are a lot of alternative screen readers one could use which might support nested labels since they're not mentioned there (I've mainly heard of JAWS, which isn't mentioned there), so it doesn't seem to be an inherent limitation of as…

The article is right. A nested input with a for attribute is always better than an input without one.

Maybe not for the screenreaders of today, but maybe for the screenreaders of tomorrow.

Re: Sanding UI

#369
post #363

Earlier quoted context omitted.

I don't think it is "unpopular", the contrary in fact. It's just the best practice to stick to bronze-age standards, since reportedly there are still couple of assistive technologies that do not interpret the new perfectly valid and standardised pattern [1]: > Both Dragon Naturally Speaking for Windows, and Voice Control for macOS and iOS, don’t recognize implicit association, so the [nesting input inside label witho…

Is that not what the ARIA standards are for?

I don’t think so, correct me if I’m wrong: an ARIA attribute that might fit here would be aria-labelledby (sic), but per MDN

> Note that while using aria-labelledby is similar in this situation to using an HTML element with the for attribute, there are some very important differences. The aria-labelledby attribute only defines the accessible name. It doesn't provide any of 's other functionality, such as making clicking on the labeling element activate the input it is associated with. That has to be added back in with JavaScript.

The best compromise would be to both wrap the input inside the label _and_ use the “for” attribute.

Typically, it’s best to use elements and controls that are already accessible, as ARIA is more intended to give additional accessibility to components that might not be traditionally accessible, or that require more robust accessibility control.

Re: Sanding UI

#370
post #307

Earlier quoted context omitted.

Bootstrap started as something like this, but it both evolved too quickly IMO, and for some reason a generic look on the web is considered bad (by who? marketing? designers? even users as they think lack of distinctive style means lack of developer skills?)

> Bootstrap started as something like this [...] Exactly, and meanwhile relied on jQuery until the most recent major release (3 years ago). Once you're starting with one framework (no matter how "lightweight"), you can't gradually introduce a different one that better fits your problem domain, you usually have to rip it out & redo at least some parts. > [...] for some reason a generic look on the web is considered ba…

I myself started programming with Delphi from 90s, but your arguments sound like only a perfect toolkit would be useful. I'd be perfectly happy to have 80% of Delphi 7 VCL in web-native format with a clear defined way to add custom components that fit in. Like color picker, which more often than not needs customization. And not like it was themable back then. WinXP-level theming should be enough.
Post reply on HN