Your premise that the browser implementation is faster and better is rarely true. And when it is true, it's only true in a very narrow lane.
Take for instance something like suggestions on form fields: you start typing something and it presents some options from a hardcoded list that matches the prefix. This is natively achieved through the HTML element <datalist>. However, <datalist> implementations on most browsers suck to the point of being unusable.
The drive to roll your own is not so much that "it would be fun to learn this" as much as it's "rolling my own would let me express my vision exactly". What draws a lot of people to software engineering is that it lets you make anything you imagine. This is also what makes a lot of devs turn their nose at no-code and vibe-coding.
If you can't build things exactly how you want them to be, then it's hard/impossible to build something that's truly genius.
Native date pickers can’t handle range. So then you need two date pickers with validation logic.
That’s just one example of the native implementation lacking common utility. That’s one thing they could mean when they say the native solution is lacking.
I noticed your comment was down voted quite a bit, so I up voted it. It is not really performance related, but it does make an excellent technical point.
Thanks. I’ve spent too much time on this site to not have known how that works. Until now I never noticed there are multiple levels of greyed out posts.
roncesvalles · · focus · HN ↗
Take for instance something like suggestions on form fields: you start typing something and it presents some options from a hardcoded list that matches the prefix. This is natively achieved through the HTML element <datalist>. However, <datalist> implementations on most browsers suck to the point of being unusable.
The drive to roll your own is not so much that "it would be fun to learn this" as much as it's "rolling my own would let me express my vision exactly". What draws a lot of people to software engineering is that it lets you make anything you imagine. This is also what makes a lot of devs turn their nose at no-code and vibe-coding.
If you can't build things exactly how you want them to be, then it's hard/impossible to build something that's truly genius.
austin-cheney · · focus · HN ↗
[dead]
dghlsakjg · · focus · HN ↗
That’s just one example of the native implementation lacking common utility. That’s one thing they could mean when they say the native solution is lacking.
austin-cheney · · focus · HN ↗
onionisafruit · · focus · HN ↗
austin-cheney · · focus · HN ↗
onionisafruit · · focus · HN ↗