A few days ago, Chris wrote up his thoughts about how alert()
, confirm()
, and prompt()
were being deprecated by Chrome and collected a bunch of thoughts from developers. If certain features can essentially be turned off by a major browser, a lot of folks started to worry about the predictability of the web.
On that note, I really liked this note by Richard Harris:
We can’t normalise the attitude that collateral damage is the price of progress, even if we accept the premise — which I don’t — that removing APIs like alert represents progress. For all its flaws, the web is generally agreed to be a stable platform, where investments made today will stand the test of time. A world in which websites are treated as inherently transient objects, where APIs we commonly rely on today could be cast aside as unwanted baggage by tomorrow’s spec wranglers, is a world in which the web has already lost.
This specific bit of drama isn’t of much interest to me, I must admit. But! I think it brings up a super important distinction between software and the web. Here’s a story.
The other day I was faffing about with Astro (which I like a lot). I was rebuilding my personal site with it and I decided — in a spark of punk rock-ness — to update to the latest version of it. I thought perhaps it might make my build process a bit quicker and give me a chance to explore new features. But alas — everything broke. APIs had been deprecated! My build process broke! Everything crumbled down around me.
This isn’t me dunking on Astro. I love it, still. But it’s important to remember that Astro isn’t the web. Neither is React or any other framework, really. Those teams can feel free to deprecate things, improve things as much as they want. They can burn it all to the ground and start again. But stuff like alert()
, old CSS features, and HTML elements aren’t in the same category. They can’t be deprecated in the same way because, as Jeremy said, the web needs to be predictable. And we can’t treat the web like plain ol’ software because no one team or individual owns those features.
Here’s the gist of my rant: alert()
and confirm()
aren’t features of Chrome, but of the web. But I fear that’s how a lot of folks might think about them.
This is also why standards are so important! Talking about new features in public lets us fix all the bugs and answer all the questions before a new feature ships onto this platform where you can’t just delete it when you realize you goofed up. I’m not even really dunking on Chrome here either, but this distinction between software and the open web is an important one to make. Right?
Wow, so you just now discovered that one browser’s monopoly is bad? Decades of IE hegemony haven’t taught you anything?
This is why I stick with Firefox. At least we still have an awesome browser that is NOT Chrome!… for now, at least.
The only time I use Chrome is when I’m doing cross-browser testing, just to make sure it hasn’t done anything silly with my perfectly formed UI! ;)
So you are developing for 10% of users, while 80% are second plan. Good job man.
@Pajfo u venu
Since Chrome supports wider features of CSS and JS, for a long time it’s considered a good practice to develop on Firefox since it has less probability to break when doing the other way around.
I used to be the exact same way – a consistent Firefox user who used Chrome only for cross-browser testing… until now.
Firefox has been becoming more and more buggy, slow and crash prone with every update. It is no longer the lightweight reliable browser it used to be.
Heck Chrome actually feels more responsive than Firefox, and it has never crashed on me.
I kept using Firefox for the past few months only because it is pretty much the only non-webkit/chromium FOSS browser out there, but now I’m probably switching over to Chrome or Brave.
Hopefully it will go the way of Chrome’s feeble attempt at replacing cookies.
I understand the somewhat fear of such a move because we, the devs that use this in a non intrusive manner in our code it could mean a lot of refactoring especially in a legacy code, but i understand why chome wants to remove the alert because of the way some sites will simply block your browser in the tab especially ob mobile and are using these features in a very abusive way. It is a big discussion here to be had. But honestly i think these abusive behaviors on sites should be made possible to be reported and just stop indexing and showing them in results, or ads or anything.