NoScript, No Service
NoScript is a wonderful little addon for Firefox. It stops any Javascript or embedded objects on any web pages you visit from running unless you explicitly allow them. I can't tell you how useful this has been; no longer slave to slow JS slowing page loads down to a crawl, and no unwanted tracking urchins anyway. My recent experience with NoScript, however, has enlightened me to another problem I honestly didn't think existed in the first place: many web programmers are idiots.
Okay, that may sound like a truism, and I'm not going to name any names. However, increasingly these last few weeks, I've been running into pages that seem to treat Javascript not as something you use to add functionality to a site that mere CGI and XHTML can't do on its own, but as some sort of prerequisite for getting to any content at all.
When I go to read someone's blog, or a news post somewhere, I expect to not have to have Javascript enabled to read it. That makes sense; there is nothing about a simple text post (rich or not, with images or not) that requires any form of dynamic behavior. Much to my dismay, way too many people seem not to agree, instead presenting you with a static, blank page and using a snippet of javascript code to load actual page text after the rest of the page has loaded, requiring me to make NoScript allow that site whenever I want to read something. That's right; if Javascript isn't enabled, you get nothing but a blank page (and a little sidebar code, perhaps).
Now, I can understand some uses of Javascript, and I can understand getting a degraded service if I don't have it enabled. That's the price I'm prepared to pay for a little added security and efficiency. But to remove the service entirely? Does anyone with a brain in their head think that this is good content management? For that matter, this goes way beyond what we normally call "graceful degradation"—that referring to enhancing things like forms with javascript for more dynamic behavior but still allowing the plain ol' way to work—and way into "being a right bastard" territory.
I don't really know what else to say about this. I really didn't think people actually did this, but I guess I've been proven wrong. A popular gaming website (which, again, I will not name) is especially bad at this, requiring 2-4 different Javascript files—on different domains, too, which means I have to enable each separately—just to post a single comment on a post. And we're not talking slightly less dynamic behavior here, oh no; we're talking required to do anything at all. You go to click the Submit button, and nothing happens, because that particular bit of Javascript hasn't been loaded, and you're left to wonder whether it was submitted at all.
Said gaming website has an even more obnoxious misfeature in its signup form. If Javascript is disabled, you get a simple dialog where you can enter a desired username and password (once); okay, that looks fine. But no, that doesn't work; y'see, what is supposed to happen is that after these two static boxes are loaded, some Javascript is supposed to add some 6-8 other fields to that form (including a "confirm password" field), and if your JS is not enabled, well, it sucks to be you, and you'll be none the wiser that something isn't quite working right.
Fellow web designers, please stop doing this. This isn't merely about degrading gracefully, but about offering the bare minimum in the first place. Many of us don't want to run strange Javascript on our machines, especially not when there is absolutely no good reason to do it.
Comments
Agreed. I hate it when I have to guess between enabling three different domains just to see a video.
If I think the content is worth it, I'll commonly just open the page in Safari or Opera instead of guessing which domain to allow.
I'm in complete agreement myself. As a new NoScript user, I find it annoying that so many sites rely so heavily on JavaScript to enable any functionality on their site at all. Then it's a guessing game to determine which domain I have to temporarily allow in order to read the content I'm trying to get at.
Unfortunately, I think the problem is only going to get worse as websites evolve into web applications, and as JavaScript exposes more and more app-like functionality.
By using IE7 , Firefox 2+ or Safari what kind of problems do you think you can have by allowing javascript , honestly ? Those are pre-2000 speeches , wake up guys, we're in 2008 :) javascript is not armfull and will just allow you to have great user experiences with RIA, games etc... By the way, thinking that web coders are idiots because they use javascript and that you have to enable it because YOU blocked it, lol, is making you an idiot , sorry, think the right way :S
I agree with Luna. Web programmers that live in the real world are by far better than utopian nerds.