NoScript
I read this post on Daring Fireball last year and I wanted to comment on it: Charlie:
I simply hate people relying on brittle client-side javascript when there are other alternatives. In the same way as I wouldn’t rely on some unknown minicab firm as the sole way of getting me to the airport for a wedding flight, I don’t like relying on a non-guaranteed technology as the sole way of delivering a web app. For me it’s a matter of elegance and simplicity over unnecessary complexity.
Charlie proceeds to spend the rest of her rainy day reloading her favorite websites with JavaScript disabled and documenting their reduced functionality. For me this sort of activity does not occur once in a rainy day. For years I have filtered the JavaScript my browser receives by way of NoScript a JavaScript/Java/Flash blocker for Firefox and SeaMonkey. NoScript works by whitelisting domains I visit where JavaScript should be enabled. I can temporarily whitelist a domain to get things working on a website I visit temporarily, or permanently block domains like doubleclick.net I never want to receive JavaScript from. Today most websites not only fail to function without their own JavaScript enabled, but they fail to function without linked JavaScript libraries from third-party domains enabled. If your website needs resources from someone else's domain to work, you are doing the web wrong. With NoScript I often find myself temporarily whitelisting third-party domains at random to get the web to work. In summary my browsing experience goes something like this: - Visit website
- Load JavaScript from the domain of the website I am visiting
- Make temporary exceptions for third-party domains where essential JavaScript is hosted
- Block everything else
- NoScript saves my selections for me the next time I visit the site
NoScript has made my web browsing faster, safer, and more energy efficient, but at the cost of maintaining a large list of whitelisted domains I wish to receive JavaScript from. John Gruber: The web would be better off if browsers had never added support for scripting. Every site on the web would load in under a second.
That is my philosophy and why I use NoScript.