There's no reason why this page couldn't work without JavaScript. It's a poll and a display of the results.
Sure, enhance it with JavaScript: that's great, and it's cool, and it's useful. But don't force people to execute code when all they really need to do is POST a form and then GET a page.
People who do this are wrong.
Your position is ridiculous. HTML5 was designed in part to make it easier to create applications that run in your browser. So yes some people will be writing applications that run in your browser. It's like expecting flash sites to work when you don't have flash turned on. Either be happy with your choice or turn it back on. Don't expect the rest of the world to cater to your fringe browser settings.
Web pages should use JS only when necessary to enhance the user experience.
Web applications can go hog wild and load 10MB of JS libs.
The problem is that hosts have too much control over client's experience. Frankly, most of the works designers today do on the web is work that should not be done - 90% of websites would be infinitely better if they only sent text with lightweight semantic annotations and a list of available actions. The user should be able to explore the data in whatever way they please, and not be shoehorned into a single prescribed way of interaction.
That said, your point on incentives is spot-on. People making money on the web benefit from any marginal increase of control they can get - so the whole thing turns into a typical race to the bottom. And then, they also can (and do) use their money to influence the development of web technologies to make it easier for them to make more money. This process sadly isn't any different than regulations being influenced by businesses to benefit them instead of society.
Is there a solution? I don't know. Most people don't even realize how much of their own time and potential they waste by accepting the "status quo". I hope someone eventually develops a browser with sole purpose of unfucking the Internet. Some kind of a cross between links, Emacs and the Reader Mode from Firefox.
Search engines typically don't run JavaScript, so relying on it can be bad for SEO, and in some cases accessibility.
Considering iOS devices don't support Flash, and popularity for Flash is waning, I think it's even worse to suggest a website should cater only to those who can run Flash.
Not really. Nobody is expecting JS code to work without a JS interpreter being available/enabled. Instead, they're expecting a page of text + images to work without any JS code being required.
In your analogy, nobody expects Flash objects to work without Flash. Everybody expects text + images to work without Flash objects being required.
<html> <body> <form method="post" action="https://webwewant.mozilla.org/share/"> <ul> <li><label><input name="issue" value="access" type="radio"/> Is available to all</label></li> <li><label><input name="issue" value="freedom" type="radio"/> Promotes freedom</label></li> <li><label><input name="issue" value="control" type="radio"/> Puts me in control</li> <li><label><input name="issue" value="opportunity" type="radio"/> Creates opportunity</label></li> <li><label><input name="issue" value="learning" type="radio"/> Inspires learning</label></li> <li><label><input name="issue" value="privacy" type="radio"/> Safeguards privacy</label></li> <li><label><input name="issue" value="nojs" type="radio"/> Works without javascript</label></li> </ul> <input type="submit" value="Submit"/> </form> </body> </html>
Considering the sizes of the javascript libraries loaded by all of the websites, I find it unlikely that the page size for a static page will be larger.
The average size of a single page is larger than a doom install now. That's not because of orders of magnitude more of HTML. It's because of the 15 different tracking JS libs, analytics libs, effects libs, etc that are piled into every site.
With proper caching and today's connectivity it's far less of an issue.
AJAX-y still is nicer and definitely has its place but at least speaking for myself if I'm reading a blog or a news site I'd prefer a fast static page rather than a lot of gratuitious ajax animations and transitions.
http://worrydream.com/LadderOfAbstraction/
or this:
http://worrydream.com/TenBrighterIdeas/
But documents like these aren't commonplace[0]. JS isn't used to enhance documents, it's used to make them much worse - because that degrading of quality and experience is how websites make money.
Apps are obviously a different beast. Most of websites don't need to be or behave like apps though.
[0] - which is a very sad thing; it's exactly the kind of advantage computers have over paper, and it's not being used at all. You either get dumb text that's even less functional than a book (think of articles rendered to image), or wasteful apps with shit-ton of ads and tracking.
99% of the Web is shit.
Also, most people have no clue about how websites work, and so they can't really imagine how they could look like. Moreover, most people accept whatever market throws at them, because they don't have any other choice anyway.
Apparently this is an unpopular notion. There's an entire protocol that's based on links between plain content - use it! The non-javascript users on the WWW are such a tiny minority that nobody who pays developers is going to bother with the time. The average user wants the extra functionality that even basic JS can provide - demanding that the web be supported without it is akin to demanding support for IE4 on Mac Classic.
That is the reality, folks. You don't have to like it, but you should accept it.
The content of most sites created today could reasonably been hosted on sites when IE4 for Mac Classic was current, text, pictures, form fields & buttons. You don't have to prove it but you should build such a site today using methods that would likely mean someone using IE4 for Mac Classic would have some access to the content, albeit not an optimal experience.
And uglier, and limited. While the people here might not have any problem with the entire web looking like Ward Cunningham's wiki, I doubt the public at large feels the same...
http://www.gloucestershirelive.co.uk/
See also: Almost any other local newspaper website, from anywhere in the world.
(And if they complain that things are worse than they were, they often misattribute them anyway. My mother blames a lot of things on her computer being too slow, even though half of them aren't really the fault of the computer, but of the lazy-ass companies putting increasingly bloated shit on-line.)
My browser use is not much different than on Web 1.0 days, except when I cannot install a specific native application.
But if the user doesn't have JavaScript, they should still be able to navigate the site the old-fashioned way. It doesn't have to be one way or the other.
There should almost always be fallbacks for people who don't have JavaScript, but if you are going to use JavaScript, it would at least help if any nontrivial code were free, such that it isn't blocked by the LibreJS add-on.
At the very least, the user experience with JavaScript enabled should not be worse than with JavaScript disabled.
The only way to fix it JS-level is to bake a requirement into the standard that the code size limit for JS is 256kb. If a company can't fit their "value-added features" in it, that's their problem.
My understanding is that javascript is a part of the web today, and everything around it makes it easier to run javascript applications in your browser, making websites more powerful. I personally love this and a lot of website I browse would be worse without javascript (google docs, calendar, etc.), so I have trouble understanding what is wrong with javascript running.
Also, since now most apps are complete javascript apps (and not only some DOM manipulation), it seems a lost cause to try to get website optionally "extend" their experience with javascript. That would mostly just imply to re-built most of the page for when javascript is disabled.
I also had in the past legally blind co-workers that could barely use a browser, so they had their own problems with JavaScript overriding defaults.
By the look of it: if JavaScript proponents designed car doors, there would only be remote unlocking and no physical key.
It's just bad engineering lately beign promoted as 'the default way to build webpages'.
If I start my browser with JS enabled, it takes a few days and Firefox is at 100% CPU continuously, making my laptop battery last 2 instead of 5 hours, and if you start a packet sniffer, you see how all kinds of tabs are constantly reporting back to their mothership what I am doing.
That is why I keep JS disabled.
Also, most things that can be improved in websites (not to be confused with web apps) with JS would be better implemented as browser functionality.
JS should be reserved for heavy interactive applications. Not pages that amount to viewing a document.
Plus, there is such a thing as ROI.
JS is like HTML and CSS, core part of today's web.