Broken Site when JS is turned off

I’m a proJS enabler, meaning that I assume the visitors to have JS turned on! Many cries out loud “Your site sucks because I can’t access your site when I turned off JS”. So, I did some research on what sites that malfunction when JS is turned off. Please keep in mind I only tested 1~2 min each per site.

  1. Facebook - Messages
    Can not see messages at all

  2. Youtube - Add/Remove Modules
    Gets stuck at “Load …” screen

  3. Blogger - clicked on this text “Try the template designer”
    Gets stuck at blank screen

  4. Twitter - Top Tweets
    Can not see top tweets on home page

So! When these major players obviously have JavaScript crutch, can we assume that making a site that requires JS is acceptable? Because of this, I am thinking of making 100% AJAX site.

I have found that the vast majority of such sites do not function correctly even with JavaScript enabled since often the people they have writing the scripts for them do not have much of an idea of how JavaScript works.

Those applications that I have found that work well that are written in JavaScript are those that run using Adobe AIR instead of your web browser and so there is no option for turning JavaScript off with those applications plus they have access to read and write files on the local computer (something which can’t be done when running JavaScript in a browser).

Warning: the following will likely offend someone’s mom, and the defeatist attitude will contribute to m0aR jocks giving wedgies to nerds and shoving them into lockers and possibly also raise cancer rates in children or something.
Also, a note: this is directed to web developers in general.

(For the following, imagine Homer Simpson prancing around mocking Flanders or something.)

Ooooh, a “stern warning”, oh I’m sure those overpaid execs are just shivering in their £ 500 loafers at the thought that they’ve been issued something with about as much teeth as the “angry letters” the UN issues to random dictators committing whole-scale genocide of some ethnic group they hate while sipping their freshly-squeezed morning orange juice and playing a round of golf with their military buddies in the warm tropical sun. Yeah.

Meh. If the laws don’t actually do anything about it, I guess so.
Seriously did Target ever actually change their web site after they were sued? Did they pay out more than a bajillionth of .005% of whatever they earn to the guy who complained?? I don’t remember anything happening to the 2000 Sydney Olympics committee, do you? It’s like it doesn’t matter.

Truth be told, only a few raging cripples (that’s me in the future ‘cause I be agin’) and a few pathetic friendless web nerds (that’s me now) are going to complain about a site not working for UAs without Javascript, or a site not working for the blind, or a site that requires a mouse (after all, people who use mobile phones and PDAs are used to the whole sites needing mice thing, right?). You are not going to have the Web Standards Evangelical Movement’s black-clad jack-booted ninja storm troopers break into your bedroom in the night-time and drag you away because you were making millions with your site that only works for 89% of the population (isn’t that a pretty big majority??). Instead, you will sit comfortably, people will ask you to speak at big WebDev and business conferences to tell the world how you made it big with your site-building prowess and design skills, and if a few whiny people shake their feeble fists at you and yell through the din “Well, I’m-a gonna sue ya, ya hear! SUUUUUUUUUUE!” and you’ll be like “What? I can’t hear you over the roar of my adoring fans and the loud clanking of the cash rolling in and my bank account overflowing. Did you say [color=black]ajax is stronger than dirt[/color]?? Okay, m0aR AJAX coming right up! It’s popular stuff! I can’t give it away fast enough!” You might also get interrupted to get photographed for the cover of TIME.

Nobody will chastise you for not knowing (or more likely not caring about) the difference between a real button that talks to a server and an anchor tag with “#” as the href with some CSS-dressing to make it look like a button (promising me it does something!!!) with a bunch of onclick events stuffed into it. With maybe 4 extra divs wrapped around it for good measure (like Google does). ‘Cause I mean, look, Google does it. Google does lots of silly things, lots of bad code, Javascript that’s poorly written. All you hear is praise. “Ooooh, teh googles! :heart: :heart:” Can you hear the girls’ hearts aflutter? I can. :heart: :heart: :heart:

See, just non-rich weenies whining. They can babble 'til foam comes out of their mouths, but you don’t have to listen to them. Is this why they aren’t working at Google or eBay or Facebook?? Is this why their web sites look like a cyborg designed them??

But I guess at the very least, I can ask for m0aR if I’m going to be force-fed Javascript on toast every online minute of my life.
I can’t see Andy Clarke’s twitter page. I get this nasty message about how I suck balls and smell like a reptile because I don’t have Javascript on… so I’m curious, and I switch to a Javascripted browser, and I expect… I dunno, sharks shooting lasers out of their eyes? [url=http://unrealitymag.com/wp-content/uploads/2010/07/chewie.jpg]Chewbacca riding a giant squirrel fighting nazis??? Obviously something must be REALLY REALLY AWESOME about Andy Clarke’s twitter page because unlike all the other twitter pages, this one won’t let you see a single word of content without having it on.

So I turn it on… and I see…

…a normal twitter page.

WTF. No sharks. No lasers. No Nazis. Nothing is spinning, dancing, glowing, no custom content just for me, not even a clock giving me real time. “It’s like they don’t want your CPU to get cold or something.” Hm…

Yeah. Awesome! This is the profession I want to be associated with! We’ve never heard of the separation of concerns, or if we did, Jeff Croft just told us it’s nothing more than a web developer’s wet dream, not to be confused with reality.

I should switch jobs and go clean toilets before I get so depressed I commit suicide or something. Or maybe I should go write an angry letter on teh interwebs.

From this thread, I learned a lot from other people’s feedback. It seems some people look at JavaScript to enhance usability and not as a functionality. What you guys meant by “usability” is when you can use JavaScript to make it more usable to the user. Even if JS is turned off, the user can still use it. However, there are other believers who chose JavaScript as a functionality. These do not work when Javascript is turned off. Still, it gives tremendous power to these sites. Popular site that uses these philosophy is the online collaboration tools like GDoc, online office tools, web portals, online image editor, and etc… These developer’s are not using JavaScript because it enhances usability, it’s needed as a functionality. So, from these thread there are 2 philosophy of JavaScript. In a long run, I believe proJS will win as I consider this to be nearest next generation web application. I believe that one day, all your desktop application software will be available through online. The only software in your computer is just a browser. Certainly, that is a very far away from today. But, for short term I believe it is the JavaScript which will take the web to the next level. This is purely my 2 cents.

So you’re saying that all Web Application that aims to be Desktop feel are totally wrong? Google Email, Google Doc, Online collaboration tool, online office tools are all wrong?

Simply speechless…

A computer program has to do less than what something like it on the web

No - that sort of thing might be useful if they ever get any of them to actually work - unfortunately all of the ones you mention are all broken because Google hasn’t employed anyone who knows how to write JavaScript.

Even if they did work the only benefit they’d have over a downloaded application is that you don’t need to download anything in order to use the application.

There are quite a few working JavaScript based applications you can download that do work - using Adobe Air. That environment also ensures that you can’t turn JavaScript off.

Because a compiled program running on your computer will be much faster than a scripting language running on the web. Plus approx 10% of people don’t have JavaScript.

Also with a chat program running on your computer it can use the correct port that chat programs use rather than clogging the web port withchat.

Because…?

You should ALWAYS texst your web page works before you start adding JavaScript to it.

There are some apps that require JavaScript in order to work at all but since many of those apps have been written by people who don’t know how to write JavaScript and so don’t work properly even with JavaScript enabled they are best avoided. Even where they do work properly with JavaScript enabled there are always better free alternatives you can install on your own computer that will do the same job more efficiently without using up your internet bandwidth.

Are you saying your site is as good as Facebook, YouTube, Twitter and Blogger?

Those sites have succeeded despite poor accessibility, because they have a large/monopoly position combined with a killer application. If you reckon your site meets those targets (and you have a few million in the bank for when you get sued), maybe you can afford not to worry about accessibility.

The reality is that for most of us, we can’t afford the luxury of turning away potential visitors by laziness or a lack of consideration for their needs. When I write a website, I want it to appeal and be accessible to as many people as possible - and sometimes that means putting in a little extra effort to provide a more accessible route than the hi-tech one that I direct most people to.

And then there’s the moral dimension. Many of the people who browse without Javascript active have some form of disability or impairment and so are using assistive technology, which doesn’t always support Javascript fully or even at all. Do you really feel comfortable telling those people that they aren’t worthy enough to look at your website?

Sites like that soon get fixed once they are threatened with legal action by a disabled person who is unable to use sites with JavaScript enabled and therefore requires a version that works without it.

On average around 5-10% of web users have JavaScript disabled either permanently or a lot of the time (those using Firefox or Opera can turn it on and off on a page by page or site by site basis).

If you don’t provide an alternative for those without JavaScript then those 5-10% of possible visitors will go elsewhere and possibly convince their friends to go elsewhere as well giving you a much smaller audience than you would otherwise have. Where going elsewhere is not an option there is a greater possibility that those who don’t have the option to use JavaScript will consider legal action.

Also with the growing number of annoying scripts that interfere with peoples being able to use the web the weay they want there is a growing tendency for people to have JavaScript turned off.

It depends. What are your accessibility requirements? Screen readers have a tendency to not work with javascript.

Time for me to get my two cents in I guess (as I’m all about accessibility).

  1. sg707, it’s a well established fact that the largest sites on the web have a lot of shortfalls when it comes to how they produce their code. Stephen regularly tells about Google’s poor JavaScript implementations and he’s entirely correct. If you want a classic example of how the major sites fail at a basic level to consider their code correctly, try pushing any of the top 1,000 websites through the W3C validator. Several studies have been published independently which clearly show time and again that of the most popular sites on the web, less than 25% of them even pass (x)HTML validation on the front page of their sites. While that may seem like a non-issue, it’s just a perfect reflection of how poorly code is maintained or produced at heavy industry levels.

  2. Regarding the usefulness of a JavaScript forced site, the statistics of around 5-10% are entirely true (note to donboe, W3Schools is not a good source of anything, it’s not associated with the W3C and it’s stats reflect only it’s geeky user base). There have (again) been many studies done on measurements of JavaScript availability - which is quite difficult as statistics software cannot determine the availability of scripting (Google Analytics for example requires JS in order to get the details from your machine). Therefore the estimates are provided entirely on the availability of devices (mobile or otherwise) that have no scripting, the usage numbers of tools like NoScript (which cripple scripting - malicious and otherwise - and have millions of users), and the likelihood of corporations and businesses to turn off scripting to prevent anything that may be exploitable outside of the sandbox. Long story short, the figures are as close as they can be and it’s an accurate number.

  3. Regarding accessibility. With the large sites, it does seem crazy to dump such a potentially large proportion of individuals who may have scripting disabled as non-customers however this goes on all the time. Millions of people suffer disabilities of some sort yet only around 2% (approx) of websites even meet the basic accessibility standards (like WCAG AA), because many sites simply don’t understand the disabled they ignore them and hope they go away (discrimination exists online, as offline). While the web is getting better the unfortunate consequences are that we live in a society where the Facebook’s of the world are perfectly happy to impose restrictions on their visitors even if they lose a number of people purely because they have plenty more visitors where those came from.

  4. As for your assumption sg707, it’s partly right and partly wrong. If your website is non-commercial or not a public entity (as in you’re not making any money and you’re not providing an important public service) your liability as far as disability law is somewhat restricted (though that’s not to say that you couldn’t be legally pursued to make your site compliant if you were found to be purposefully discriminating against them - which obtrusive scripting could qualify as). In addition, those who are disabled are more likely to go to your competition than simply go after you. What I would say though is that killing 10% of your potential audience (with the % of disabled individuals on top) by simply using scripting which could be made unobtrusive is like shooting yourself in the foot. Not only do you leave yourself open to potential lawsuits (if someone really was offended by the obvious discrimination), you’re literally saying that you really don’t want every visitor you could have.

  5. Regarding web apps, while it’s true that some apps require scripting to undertake certain actions, in almost every case you can supplement that action with something at the server-side. In most cases if you had an app that functioned purely with server-side scripting and then had the JavaScript layered on the top in order to eliminate page refreshing (when applicable) or to provide visual or enhancements to the UI, it’s fine… because you have something to fall back upon. JavaScript isn’t a sin, it’s just something you should use in a non-dependant manner. Something like GMail for example could easily be made using server-side scripting (without any of the JS nonsense required), but for those with scripting turned on the enhancements can be added over the top and thereby give the same look and feel. JS is intended to improve the UI and experience alone, if it was mission critical, the ability to disable it would not be available within every browser. :slight_smile:

  6. Accessibility is all about ensuring that those who are both able and non-able bodied can as equally as possible access the services you provide. If your site demands scripting (which some won’t have), they cannot access that service, thereby you are discriminating against them. Usability is about ensuring that what you have isn’t too difficult or complicated to use (this is a very reduced definition). JavaScript is an ENHANCING technology, you can use it to improve a website but it cannot be depended upon to always be available thereby you need to have a fallback mechanism so that the same service is still accessible and usable to those individuals. It may be powerful but it’s not about “winning” or “losing”, while people can’t access scripted content, you’re knocking them down. There’s no middle ground here, if your site requires JavaScript, you are eliminating potential visitors who may not have any other choice.

PS: The Federal appeals court did rule that web publishers were not required to comply with the ADA, however that has now been resolved since the adaptation of the ADA to further include (explicitly) web related services. The ADA alike many disability laws were seriously out of date as when they were written the only concerns were offline stuff (or government works online AKA Section 508), now that is no longer an issue. Almost all anti-discrimination laws mention the web and in addition, you don’t only have the ADA to worry about… if your website is viewed (for example) by an individual from the UK, you could be sued under British law for violating a citizen of this countries rights not to be discriminated against (and as your site is publicly visible to the UK you’re liable as you’re technically trading here too. :slight_smile:

You are not going to have the Web Standards Evangelical Movement’s black-clad jack-booted ninja storm troopers break into your bedroom in the night-time and drag you away because you were making millions with your site that only works for 89% of the population (isn’t that a pretty big majority??).

Laws aren’t perfect, people get away with murder, it doesn’t change the fact that businesses are hurting themselves (intentionally or otherwise), their visitor numbers, their potential profit margins (million dollar button goes here) and violating the law still gives us hardcore nuts to call everyone else a criminal :smiley:

jQuery is proof enough that if you make any technology simple enough for a newbie to take control of, they’ll abuse it to the point of insanity :slight_smile:

Off-topic and cool: http://stacybleeks.com/facebook_tutorials.html

yeah still needs JS on bleh

That is it, I am professing my love to you now :lol: That is one of the best things i’ve read evar.

You must be out of your mind if you want JavaScript to have read/write access to your drive.

I hope Stephen wasn’t saying that was a good thing! Javascript was specifically built not to be able to do that for a reason… so what’s Air’s excuse (for breaking that rule)?

For those, blame should go to a programmer if something is broken.

Yes. Though often even if they are aware of what they did wrong, they have already moved on to another project. It seems jQuery has brought scripting into more hands than plain Javascript ever could, so people in general are just using scripting more than they used to… again, with the same consequences of not being aware of how to do it “right” (or at least “good enough”).

A note on Andy’s twitter: After at least a week of getting the nasty message, it vanished. But it seems to be hitting pages randomly. A twitter bug? Or twitter admins trying to stop the various insidious ways Javascript makes you add pr0n to your tweets? (there’s even a variant which could do this on any mouseover… anywhere on the page, so, the whole viewport)

So I’m pretty sure Andy was unaware of it:
http://stommepoes.nl/twitgoogle.png (some of those pages are straight twitter pages while others are apparently pages who redirect to twitter pages)

Some other person’s random page had it:
http://stommepoes.nl/twit3.png

Turning on Javascript gives you… some ordinary twitter page. Without Chewbacca. Or, for now, pr0n.

That is a very unfair statement. For those, blame should go to a programmer if something is broken. Also, there is no such thing as bug free application. You must be out of your mind if you want JavaScript to have read/write access to your drive. I am 100% sure that Adobe Air that’s running in your web browser can not access the drive.

If your browser supports HTML5 then you can play video’s on the Youtube w/o Flash.

With all these very popular app not being JavaScriptLess compliant, I’m leaning more toward their idea as well. I can understand that some browsers does not have the capability to have JavaScript for certain mobile phones or browsers. However, I think they would have other problem then just JavaScript. If the mobile phone does not have zoom feature then do I need to display specific format for that phone? I think not. Maybe it can be accessible but it may be not readable or even be usable.