Live data from Hacker News

There's 200 form builders, but none do what a programmer can, so I built my own

blog.keenforms.com

71–80 of 82 posts

Re: There's 200 form builders, but none do what a programmer can, so I built my own

#71

Earlier quoted context omitted.

> I've read the .gov.uk article and it's from 2020 and many of the issues are resolved in the years since it came out. > please read my response here: https://news.ycombinator.com/item?id=32141468 Reading that response was a surreal experience. "Many of the issues are resolved since it came out"... except for the important ones? Here are the issues you rebutted: - A number input blocks dictation and selection when us…

> But you appear to have confused the article section titled "Accessibility" with the concept of accessibility. I mean. Yeah - I guess I expect the section named "Accessibility" to be about the concept of accessibility. --- > Values in a number input are automatically rounded or even converted to exponential notation by the browser. Because while it might look like your credit card number is 4000 0566 5566 5556, what…

Sure, in no particular order:

>> You need to do some real testing

> I find this aggressive.

> Although you have clearly decided I haven't... I have. I just think people making real arguments against the using numeric input elements is off. I've used them for years now without encountering the edge cases people are throwing out there

I don't have users. But I do run into problems with number inputs in the ordinary course of my personal life. I tend to suspect that's related to this observation of yours:

> browsers differ in how they handle value changing on scrolling for number fields (Chrome: no change, FF: value changes)

But if professional testing can't turn up a problem so common that the internet is full of warnings and complaints about it... something's wrong with the testing.

---

> I sorta get how this behavior doesn't translate well for the number field. I will note you can easily stop the behavior with onscroll="return false" attribute or a JS event listener with event.preventDefault() ... I've seen both in the wild and they're fine solutions.

The idea that these are "solutions" conflicts with the idea that the behavior isn't a problem to begin with.

> Even for no-JS users I think it's still OK since they've consciously opted-in to the default browser behavior for stuff like this.

I can't agree with that; rather, this is a cost they pay, generally without even being aware of the particular functionality, in order to prevent JavaScript from doing nasty things to them. The idea that if they don't want to be abused by your JavaScript, they deserve to be abused by your passive-aggressive HTML design is... strange.

---

> So, Safari is on 15 and according to https://caniuse.com/usage-table [5.1] is 0.02% the market share.

I tend to agree with you here. Safari 5.1 is too rare to be worth much attention. But you placed heavy emphasis on the idea that the reasons the UK article gives for avoiding number input types are outdated, and they aren't. Safari 5.1 is not meaningfully older now than it was two years ago. Number input behaves no better now than it did two years ago.

---

> I mean. Yeah - I guess I expect the section named "Accessibility" to be about the concept of accessibility.

That section is focused on the jargon meaning of "accessibility" as "making it easier for disabled people to use [whatever]". But there is no reason for "accessibility" to be the exclusive province of the blind - "people with mice" have concerns too.

(Even there I'm being too generous - as with other forms of idealized equality, you can see misguided pushes to achieve equality by making [whatever] worse for everyone, as long as the new lower quality is equal for normal people and disabled people. And I can't really see another way to interpret advocacy of number input - you want to make your website less accessible to everyone on the theory that a small number of people might not suffer a relative disadvantage in using it. Don't do that.)

-----

Number input is designed badly enough that MDN, and the HTML spec, both warn you that you probably want something else. That should be a hint that you want something else. Use the tools that were developed to provide the good things that number inputs provide, without also doing the terrible things that number inputs do.

Re: There's 200 form builders, but none do what a programmer can, so I built my own

#72
post #55

I could have used this a while back. Will definitely take a closer look.

If there is anything I can do to help let me know. There is a learning curve, understanding how the form builder works takes a little time. What were you looking to do that you have problems with?

Re: There's 200 form builders, but none do what a programmer can, so I built my own

#73
This is a great example of why I usually build my own tools. It is easy/fast to do because I only need to implement exactly what I need and nothing more. And bugs can be fixed right away, and features added, without having to wait for a company or open source developer to maybe eventually at some point perhaps fix the bug or add the feature. I have written tools for companies I worked for that has saved hundreds of thousands of development hours for myself and other developers.

Re: There's 200 form builders, but none do what a programmer can, so I built my own

#74

Earlier quoted context omitted.

> I plan to create my own custom number input that has its own increment/decrement buttons. How will you handle users who have javascript disabled? Why reinvent the wheel? Why not fix whatever problem you have with numeric input?

The whole thing WILL NOT WORK without javascript. The rules engine runs in the browser, which is why you get that instant feedback loop. Admittedly keenforms isn't for EVERYONE. There are built from scratch forms that use React or Angular or Javascript that provides instant feedback. Its not impossible to forgo JS but its hard to create a better UX with the instant feedback that only javascript can provide.

Plain HTML can do validation with regexes (pattern attribute) and the required attribute.

Re: There's 200 form builders, but none do what a programmer can, so I built my own

#75

So now there are 201 form builders ..... ? All jokes aside (given that I suck as a web-dev and still resort to plain vanilla html/css/js to build front ends for my webapps) what would have been great to see in your post was a list of problems with the 200 form builders - or atleast top N common anti-patterns amongst those and your understanding of how they came be and your philosophy and solution for tackling those.…

[deleted]

Re: There's 200 form builders, but none do what a programmer can, so I built my own

#76

I tried out the demo and was dissapointed that for number inputs a regular ` ` is used. This removes any option to add numbers by using the arrow up keys on a keyboard. Another thing I noticed is that your blog loads very slow, but that might be because this article is rather popular now.

> This removes any option to add numbers by using the arrow up keys on a keyboard.

My online banking uses this bullshit. I was trying to navigate, hit an arrow key, and noticed that the monetary value I was entering changed.

Re: There's 200 form builders, but none do what a programmer can, so I built my own

#77

I tried out the demo and was dissapointed that for number inputs a regular ` ` is used. This removes any option to add numbers by using the arrow up keys on a keyboard. Another thing I noticed is that your blog loads very slow, but that might be because this article is rather popular now.

> This removes any option to add numbers by using the arrow up keys on a keyboard. My online banking uses this bullshit. I was trying to navigate, hit an arrow key, and noticed that the monetary value I was entering changed.

It sounds like that you're using the application wrong. The website was developed correctly to the HTML standards using the proper elements.

Re: There's 200 form builders, but none do what a programmer can, so I built my own

#78

Earlier quoted context omitted.

You cannot make a webpage that has dynamic interactions and responds the way a desktop application does WITHOUT Javascript unless you reload the page AFTER EVERY INTERACTION, and the page reload screen blip is visually disorienting. folkhack I'm reading this, I've done quite a bit to address accessibility and will continue to do so. But disabling JS because not going to happen. The whole thing is built with React. An…

> What world of technology do you live in where the terrible UX of no javascript is acceptable? We're conversing on HN... a site that has specifically avoided UIX overhauls to maintain the simplicity and functionality of the forum. This site uses absolutely minimal JS, and although I've trusted HN to run JS I still have it disabled for the majority of the web. Many, many people still have a foot in the "no-JS" world…

> Yes - it is clearly a minority of users who browse no-JS but it is absolutely still a thing in 2022.

I would disagree with this. The majority I've users I've talked to are firmly no-JS.

Re: There's 200 form builders, but none do what a programmer can, so I built my own

#79

Earlier quoted context omitted.

> This removes any option to add numbers by using the arrow up keys on a keyboard. My online banking uses this bullshit. I was trying to navigate, hit an arrow key, and noticed that the monetary value I was entering changed.

It sounds like that you're using the application wrong. The website was developed correctly to the HTML standards using the proper elements.

A numeric input field for money should respond to numbers, - and +; that's it.

We're not entering a brush size into GIMP here.

Re: There's 200 form builders, but none do what a programmer can, so I built my own

#80

So now there are 201 form builders ..... ? All jokes aside (given that I suck as a web-dev and still resort to plain vanilla html/css/js to build front ends for my webapps) what would have been great to see in your post was a list of problems with the 200 form builders - or atleast top N common anti-patterns amongst those and your understanding of how they came be and your philosophy and solution for tackling those.…

That's a fair comment. I'll try to do that for a future blog post.

I could probably write a detailed article for each particular feature. That would take some time. Thanks for the feedback and comment.

Post reply on HN