Live data from Hacker News

Bring Back Idiomatic Design (2023)

essays.johnloeber.com

291–300 of 385 posts

Re: Bring Back Idiomatic Design (2023)

#291
post #200

Earlier quoted context omitted.

macOS is slightly more consistent among apps that use system controls, but the more custom the app, or the more React Native or Electron it is, the less predictable it is Infuriatingly, some apps try to be smart — only one line, return submits; more than one line, return is a new line, and command-return submits; but command-return on just one line beeps an error. Years of muscle memory are useless, so now I’m reachi…

Using provided UI controls is consistent with how today's apps behave on mobile: - For single-line text fields, pressing enter is an alias for submitting the form. - For multi-line text fields, pressing enter inserts a new line. There is no shortcut for submitting the form. In mobile chat apps, the enter key inserts a new line, so you have to press the non-keyboard submit button to send a message. In mobile browser a…

> - For single-line text fields, pressing enter is an alias for submitting the form. - For multi-line text fields, pressing enter inserts a new line.

Web browsers have been like that by default for ages in text input (single line) vs textarea (multi line). Since way before smartphones even existed.

Regardless, many chat apps on the computer have what look like a multi line textarea but it will be anyone’s guess whether Enter will add a newline or submit in any particular one of them.

Re: Bring Back Idiomatic Design (2023)

#292

Earlier quoted context omitted.

You can usually click the year and then pick that first. But the fact that so many people don't instantly get that shows how poorly designed it is.

> You can usually click the year and then pick that first. Even then, clicking the year will often lead to a tiny one-page list of 10 years, which you can either page back in or click the decade to get shown a list of decades to pick from. So: click 2026, click 2020s, click 19XXs, click a year, click a month, click a birthday. Such an interface makes at least some sense for "pick a date in the near future". When I'm…

And even when they let you type it in, sometimes it turns out that the website was made by Americans and so expects the bonkers date format of MM/DD/YYYY.

A good example of appropriate use of a calendar interface on a flight booking website is Aviasales. They show flight prices for each day right there, so if your travel dates are flexible, you know when it's cheaper by just looking at it! This should be a standard feature.

Re: Bring Back Idiomatic Design (2023)

#293

In text boxes in some applications, enter submits the entered text, and ctrl-enter forces a newline (not at my computer, but I think Slack does this). In others, it's the other way around (pretty sure GitHub does this for comments). I don't know how we got here and I don't know how to fix it, but "bring back idiomatic design" doesn't help when we don't have enough idioms. I'm not even sure if those two behaviors are…

Win32 standard multiline edit controls use Ctrl+Enter to insert a newline (instead of pushing the default button or "submit" action on a dialog), so that may be where the idiom came from.

For me, Enter to send and Ctrl+Enter for newline is the norm in an IM application, while longer and more asynchronous communication (like this textbox on HN for commenting, or a forum post, or an email client) implies that Enter inserts a newline and something more substantial (Alt+S is common, or Tab,Enter to move to and press the submit button) submits.

Re: Bring Back Idiomatic Design (2023)

#294

Earlier quoted context omitted.

The author may have identified that "the idioms come from the use of system frameworks", but they absolutely got wrong just about everything about why apps are not consistent on the web (e.g. I was baffled by their reasons listed under "this lack of homogeneity is for two reasons" section). First, what he calls "the desktop era" wasn't so much a desktop era as a Windows era - Windows ran the vast majority of desktops…

Well, and worse, Windows was itself a hive of inconsistency. The most obvious example of UI consistency failing as an idea was that Microsoft's own teams didn't care about it at all. People my age always have rose tinted glasses about this. Even the screenshot of Word the author chose is telling because Office rolled its own widget toolkit. No other Windows apps had menus that looked like that, with the stripe down t…

I was writing VB desktop apps when that whole ribbon menu thing came in. Everyone hated it. Literally everyone.

Re: Bring Back Idiomatic Design (2023)

#295

As the author identifies, the idioms come from the use of system frameworks that steer you towards idiomatic implementations. The system UI frameworks are tremendously detailed and handle so many corner cases you'd never think of. They allow you to graduate into being a power user over time. Windows has Win32, and it was easier to use its controls than rolling your own custom ones. (Shame they left the UI side of win…

The author may have identified that "the idioms come from the use of system frameworks", but they absolutely got wrong just about everything about why apps are not consistent on the web (e.g. I was baffled by their reasons listed under "this lack of homogeneity is for two reasons" section). First, what he calls "the desktop era" wasn't so much a desktop era as a Windows era - Windows ran the vast majority of desktops…

It doesn't matter that different platforms have different standards, as long as applications on any given platform are mostly consistent.

I don't care if your app looks different on Windows, because I'm on a Mac. I care that it behaves like a Mac application, and the muscle memory I have from all my other Mac apps also works on yours.

Re: Bring Back Idiomatic Design (2023)

#296
It's not only the users that are frustrated.

Developing a VB app in the 90's was simple; just drag'n'drop components around the place and boom, you're done. There were very little design choices to make, and most of those were about accessibility rather than style. It had to look like a Windows app, and that was it. A developer could (and we did) slap together screens in minutes, and while they would never win any prizes for best-looking application UI, they were instantly usable by users because they all shared a consistent UX.

Making a web app means following a Figma thing where a designer tried a new experiment with some new thing they read about last week, and it kinda looks OK as a static screen design, but has huge problems as a User Interface because users don't understand it (and that's not even considering accessibility). And as a developer it's a pain in the arse to implement; lots of work to work around the standard way of things working because the designer thinks it looks good.

My personal bugbear on this is scroll bars: just leave the fucking scroll bar alone. No, it's not "pretty", but it tells me how far down the page I am and it's useful. Removing it is actively making my life worse. You are spending effort making my life worse. Stop doing that.

Re: Bring Back Idiomatic Design (2023)

#297
post #51

Earlier quoted context omitted.

It’s amazing how many blank stares I get when I, as mobile engineer, tell stakeholders that we shouldn’t just implement some random interface idea they thought up in the shower and we instead need design input! “But why can’t you just do it?” Because I recognise the importance of consistent UX and an IA that can actually be followed. Just like developers, (proper) designers solve problems, an we need to stop asking t…

> “But why can’t you just do it?” The answer should be "because users will hate it and use a competing product that's better designed". A shame that it isn't actually true any more.

It should be, but it isn’t. Hence the reason “why can’t you just do what we asked” can often be followed by “then we will find someone who will” in the end.

Pushback is valuable until it becomes obstinance.

If we all somehow had their same crystal ball to know for certain that “stupid shower ideas” won’t work because a specific developer thinks they are bad, there wouldn’t be much need for R&D ever again. I suspect this developer doesn’t have one either, or I’d certainly like to buy it.

Re: Bring Back Idiomatic Design (2023)

#299
post #181

Earlier quoted context omitted.

Actually, I do. Or at least I do in very similar situations where for some reason there is no keyboard shortcut to submit from the input field, so I press Tab (which moves the keyboard focus to the submit button next to the text field) and then press Return or Space to press the UI button. Regarding on mobile, I’m familiar with chat apps that require a UI button press to send, and consider it unnecessary friction. It…

> It’s a larger mental leap to have to leave the keyboard. I find this interesting! I've never considered myself "leaving the keyboard" on the phone as if I were task switching. When I'm done typing I flow directly to the send button and let the keyboard go. The fact that the button is above the keyboard makes no difference to me as long as it stays accessible.

Mobile keyboards also do have the advantage that they can at least change the label of the button; so writing Submit on the Enter key if it submits.

Re: Bring Back Idiomatic Design (2023)

#300
Thank you so much for writing this. I'm also from the desktop era and I can't STAND all the reinvention going on, or the fact that I have to move the mouse all over the screen or randomly stab my phone with my finger to find out what I can interact with.

I'm working on a GUI app and a web app in concert right now. They work in the same niche, but at different levels (one is desktop-level management, the other is enterprise-level management). I stepped back and developed a unified design language (Tela Design Language, or TDL) which has saved my sanity and made the apps actually usable again.

https://parkscomputing.com/content/tdl-reference.html

https://github.com/paulmooreparks/tela/blob/main/TELA-DESIGN...

Post reply on HN