Live data from Hacker News

Bring Back Idiomatic Design (2023)

essays.johnloeber.com

241–250 of 385 posts

Re: Bring Back Idiomatic Design (2023)

#241

Earlier quoted context omitted.

Teams does both - normally it’s Enter to submit and Shift+Enter for a new line, but when you open the formatting tools it switches. They at least do have a message indicating which key combo inputs a new line, but it still gets me on occasion.

Teams is insane. You want a new entry in a bulleted list? Hit the enter key. If you dare. I had managed to be on Slack exclusively for at least 10 years. Recent acquisition has me using Teams and it's hilarious to see for the first time what people have been complaining about. I thought surely people are exaggerating. No, no they are not. It only took a couple weeks for me to figure out that I would have to compose l…

Teams also respects some standard markdown, like italics, but not others…like bold.

MS is amazing in their ability to fuck shit up for no apparent reason. Like making a media player that doesn’t use space for play pause…

Re: Bring Back Idiomatic Design (2023)

#242
post #229

Earlier quoted context omitted.

> Cascading Style Sheets recently and I think it's the missing piece we've been looking for. It lets you declaratively specify layout in a composable, hierarchical system based on something called the Document Object Model in a way that minimizes both clientside and serverside processing, based on these things called "stylesheets" I tried that and it was an absolute nightmare. There was no way to tell where a given s…

> There was no way to tell where a given style is used from, or even if it's used at all It's pretty easy. Open the inspector, select an element and you will find all the styles that apply. If you didn't try to be fancy and use weird build tools, you will also get the name of the file and the line number (and maybe navigation to the line itself). In Firefox, there's even a live editor for the selected element and the…

> Open the inspector, select an element and you will find all the styles that apply.

That tells me which styles apply to an element. You also need the converse - find which elements a given style applies to - and there's no way to do that AFAIK. It's very hard to ever delete even completely unused styles, because there is no way to tell (in the general case) whether a given style is used at all.

> This way, your styles shouldn't need updates that often unless you change the semantics of your DOM.

In my experience the DOM doesn't have semantics, or to the extent that it does, they change all the time.

Re: Bring Back Idiomatic Design (2023)

#243
The solution to this kind of problem is standards.

For most of the history of computation, things were moving too fast for anyone to really worry about standardization. Computing environments were also somewhat Balkanized. Standard keyboard shortcuts, for just one example, weren't. They still aren't. e.g. If you fingers are accustomed to hitting Ctrl-C to copy on most computers, they'll hit Fn-C on a Apple keyboard, which isn't Copy.

Today, things are moving slower and web interfaces have largely taken over. Your choice of OS mostly just affects how you get into a browser or some other cross-platform program... and what keys you hit for Copy and Paste.

Now would be a reasonable point in the history of computation for us to seriously consider standards. I'm not talking about licenses, inspectors, and litigation if you get it wrong. I'm just talking about some organization publishing standards that say, "This is how you build a standard login form. These are the features it should have. This is how they should be laid out. These are the icons to use or not use. These are the what keyboard shortcuts should be implemented." The idea is that people who sit down and start building a common bit of interface, instead of picking and choosing others to copy, should have a clear and simple set of standards to follow.

And yes, Apple needs to fix their #$%@ing keyboards.

Re: Bring Back Idiomatic Design (2023)

#244
post #127

Earlier quoted context omitted.

This is reductionist and myopic. I've personally been through building forms online and it's hell to try to find consensus on perhaps the most common forms used online. Let's take a credit card form: - Do I let the user copy and paste values in? - Do I let them use IE6? - Do I need to test for the user using an esotoric browser (Brave) with an esoteric password manager (KeePassXC)? - Do I make it accessible for someo…

All you need to do is use standard HTML form elements. None of those questions are even relevant, just excuses to increase complexity and make things harder for everyone.

Today I accidentally transposed the first two digits on my CC number.

The form programmer had done some super stupid validation that didn't allow me to edit it directly. Every change moves the cursor to the end of the input. More than 16 characters could not be typed.

Any person who codes that PoS should have their software license revoked and never be allowed in the industry again. Far better to use a plain text input than all the effort used to make users lives hell.

Re: Bring Back Idiomatic Design (2023)

#245
post #240

One trend that I can’t stand currently is the obsession with keyboard shortcuts everywhere even to the point of overriding browser defaults. Cmd+F focusing on the site’s search input instead of letting me search in the page with the browser’s search functionality (looking at you github and Linear). I generally don’t need any fancy keyboard shortcuts on a website. I have a mouse, I can just click around.

To the opposite, I'm a heavy user of keyboard shortcuts everywhere they exist. OTOH taking over the browser shortcuts, and especially the search, is something that I very much dislike.

Re: Bring Back Idiomatic Design (2023)

#246

Earlier quoted context omitted.

Carriage return and line feed go way back. Tty stands for teletype. A computer was the job description of a person. It’s turtles all the way down.

What lower turtles were there? My impression was that teletypes were the first proper keyboard-based interfaces.

The telegraph was keybased - only one key so I can't call it a keyboard, but in other ways it is what you are asking about.

Re: Bring Back Idiomatic Design (2023)

#247
post #242

Earlier quoted context omitted.

> There was no way to tell where a given style is used from, or even if it's used at all It's pretty easy. Open the inspector, select an element and you will find all the styles that apply. If you didn't try to be fancy and use weird build tools, you will also get the name of the file and the line number (and maybe navigation to the line itself). In Firefox, there's even a live editor for the selected element and the…

> Open the inspector, select an element and you will find all the styles that apply. That tells me which styles apply to an element. You also need the converse - find which elements a given style applies to - and there's no way to do that AFAIK. It's very hard to ever delete even completely unused styles, because there is no way to tell (in the general case) whether a given style is used at all. > This way, your styl…

> You also need the converse - find which elements a given style applies to - and there's no way to do that AFAIK.

I've never needed to do this, because I pay attention to my DOM structure and from CSS selectors can figure where a style applies. But I've just checked and the search bar for Firefox Inspector supports css selectors.

> In my experience the DOM doesn't have semantics, or to the extent that it does, they change all the time.

The DOM semantics are those of a hyper linked documents|forms. Take a page and think about what each elements means and their relations to each order. They will form a hierarchy with some generic components replicated. The due to how CSS is applied, you go from generic to specific elements, using the semantic structure to do the targeting

As an example, the structure of HN's reply page is

  page
    header
      logo + Title
    body
      comment_box
        upvote_button + comment_metadata
        comment_text
      textbox // reply text
      button // reply
This and the structure of the other pages will give you an insight on how to target the relevant elements.

Re: Bring Back Idiomatic Design (2023)

#248
post #127

Earlier quoted context omitted.

This is reductionist and myopic. I've personally been through building forms online and it's hell to try to find consensus on perhaps the most common forms used online. Let's take a credit card form: - Do I let the user copy and paste values in? - Do I let them use IE6? - Do I need to test for the user using an esotoric browser (Brave) with an esoteric password manager (KeePassXC)? - Do I make it accessible for someo…

Funny, I'd assume we'd got consensus on that one. - Anyone who recommends disabling paste as a security feature is a fraud - Doing UA sniffing is always a mistake - If the user's browser doesn't support `autocomplete="cc-number"` then they're already used to it not working, you don't need to care about it - You should always make your form as accessible as possible regardless of if the user is a robot or visually imp…

Yeah most of these "issues" are surely caused by programmers trying to be too smart. The dumbest possible solution which messes around with the input at little as possible is almost always the best solution. Which implies the browser-provided elements are the best because they have probably been designed and validated more than you can do.

If I use an app and it fucks around with the cursor: instant hatred. It's just so annoying. And if you can't get basic human interaction done well in 2026, what else is messed up in your app?

Re: Bring Back Idiomatic Design (2023)

#249

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…

This is a lot of pain.

It is very easy to fix. Add button somewhere around text box. Which turns it into multiline text edit control, increases its height. Now works as line feed and to submit the text user have to click "send" button. Most of chat messages are not multi-line, but few are and for them, proper edit UI is essential.

I, personally, just use separate text editor like Gnome Text Edit to compose my message and then Ctrl+C/Ctrl+V to send it.

Re: Bring Back Idiomatic Design (2023)

#250
post #127

Most software is not designed by intelligent and thoughtful people anymore. It is designed by hastily promoted middle manager PM/Product type people who, as has been mentioned elsewhere, simply were not around when thoughtful human interface design was borderline mandatory for efficiency’s sake. There is incompetence and there is also malevolence in the encouragement of dark patterns by the revenue side of the busine…

This is reductionist and myopic. I've personally been through building forms online and it's hell to try to find consensus on perhaps the most common forms used online. Let's take a credit card form: - Do I let the user copy and paste values in? - Do I let them use IE6? - Do I need to test for the user using an esotoric browser (Brave) with an esoteric password manager (KeePassXC)? - Do I make it accessible for someo…

This is the kind of thinking that takes a normal credit card form and makes it so weird that auto fill doesn't work.
Post reply on HN