You can't capture the nuance of my form fields June 27, 2021 on Drew DeVault's blog

Check out this text box:

Here are some of the nuances of using this text box on my operating system (Linux) and web browser (Firefox):

I rely on all of these nuances when I use form controls in my everyday life. This is just for English, by the way. I often type in Japanese, which has an entirely alien set of nuances. Here’s what that looks like on Android (mobile is another beast entirely, too!):

Here’s another control:

There’s an invisible edit buffer, so I can type “Pennsylvania” (or just P) to select what I want. I can type “New” and then press down to select “New Jersey”. If I make a mistake and I’ve kept track of what I’ve typed in my head, I can use backspace to make a correction, and it just works. I have lived in both of these places, and worked both of these keystrokes into my muscle memory. Filling out a form with my address on it and using an input box like this to select my state of residence takes me less than a second.

You cannot capture all of this nuance in a home-grown form control, or even anything close to it, but many JavaScript programmers do it anyway. Whenever I encounter a custom form control, the time required to complete the form increases from under a second to as much as a minute.

For myself, this is just very annoying. Imagine the same situation if you were blind. The standard form inputs work everywhere, and are designed with accessibility in mind, so you’re used to them and can easily fill in forms which use the standard browser controls. But, when you hit a JavaScript-powered organic cage-free non-GMO text box, you’re screwed.

There are hundreds of little nuances that users learn to use their computers efficiently. The exact features a user relies on will vary between operating systems, browsers, hardware, natural languages, physical ability, and personal preferences and experience. There are dozens of tiny workflows that people depend on every day that have never even occurred to you.

Making a custom form control with JavaScript is going to make life worse for a lot of people. Just don’t do it. The browser’s built-in controls are quite sufficient.

Articles from blogs I read Generated by openring

Feelings outlive paper, paper outlives feelings

A letter is communication. Communication of information and communication of feelings. Letters from my bank have little feelings (and sometimes little information too). Letters from individual people have a lot of feelings, even if they didn't intend …

via Cadence's Weblog September 5, 2025

What's cooking on SourceHut? Q3 2025

Hello everyone! It’s time for another quarterly update on what we’re up to at SourceHut. There’s a lot of great stuff going on since you last heard from us! Let’s get started. Drew’s update We finally rolled out the billing overhaul! God, that was so much work…

via Blogs on Sourcehut September 1, 2025

Astound Supports IPv6 Only in Washington

In the hopes that it saves someone else two hours later: the ISP Astound only supports IPv6 in Washington State. You might find this page which says “Astound supports IPv6 in most locations”. Their tech support agents might tell you that they support v6 o…

via Aphyr: Posts August 26, 2025