Tried turning off javascript completely for a time once, but then a lot(Edit: Don't actually keep count, maybe I should begin doing that) of pages are blank/white emptiness because they do all the html in the browser....
Sure, "a lot" as an absolute number because, hey, Internet. But I bet, relatively, the number of sites doing that is tiny. I've seen it myself, but it's terrible practise, and I'm sure it's easy to avoid those sites or, if you must, whitelist them. Teach the site owners something, vote with your HTTP requests!
I have been using NoScript (a browser extension to black list all JS by default) for quite a while now, and I don't see myself turning back anytime soon.
Everything feels much faster, and sober without Javascript, especially news site (looking at you, lemonde.fr)
I still allow some JavaScript sometimes, most of the time to unbreak site, but if you start you using it you will realise that most of the JS running on each site is at best useless from a user point of view.
There are a lot of cases where turning off JS is impractical, and I don't do it myself.
But, to me, Blogger is a great example of a site that is poisoned by its reliance on JS. Blogger is so bad at showing a page of text that it needs a splash screen.
Only because Google neglected it. When blogger redesign landed it was exactly what was trendy, heavy js, dynamic layouting. It was slow but at least I thought it was worth the wait / the cost / the latency. A tech demo. Not anymore, I want to read something more than be amazed and don't want to shop for a core i5 to do so and now blogger looks dumb. Google could totally fix it but they had other horses to ride. Maybe one day.
Neglected? It takes a special amount of skill and a lot of work to screw it up so badly in the first place. The Web is designed to display text by default, and Blogger fails at that.
Yes, neglected. They put resources for the js revamp. It was cute at the time, not anymore, Google surely knows it but doesn't want to invest anything here (for now). They just pushed a huge redesign of G+, supposed to be their flagship, vastly simpler and faster (to the point of making it even less relevant). Blogger gets the remains if anything ever drops.
Why? I really don't understand how this is the solution. Ok, so a lot of sites use JS in a wrong way or too much of it, but I think the root problem cant be fixed by forcing a technology solution.
Didn't know about policeman and looks really, really, nice. Will definitely give it a try! I love the idea of writing my own rules.
As for including jquery from google, of course and for good reasons, even from the user's perspective. The main one, of course is that chances are that your browser already has it cached (from other site that uses it), so retrieving it and loading it is (almost) instant.
As someone who currently lives and works in China, fuck yes. If you must, cut it down to the 1% that speaks English and thus has a reason to visit foreign sites, and you're still pissing off over 10 million people. Not to mention poor foreigners like me who try to get some work done here.
Yes, it's fair, because many developers live in a little bubble. The United States, Canada, Australia, Russia and all of Europe combined is only 15% of the world's population.
You can argue the other 85% doesn't have internet access or isn't your target audience. However, I run a site that's geared to the US market, it's entirely in English, and 12k of my registered users are from China (1.5%). If I included files from the Google CDN, I'd be losing 1.5% of my users due to one line of code.
I doubt if there is some alternate for the wonder full things that we can do with JS. But Its true that at sometimes things are missused and in case of JS its a top business now a days
Came here to say basically this. Would have been nice if they had the courtesy to disable their own javascript on an article about how disabling javascript gives a better user experience......
Sure. If you believe that the browser should only be a document reader and not an application platform then go ahead. It's kinda like buying a smartphone and then using it exclusively as a phone though....
I think the real point of irritation here is all the 3rd party junk that gets loaded in that has nothing to do with the main functionality of the site that you are on.
It have thought for a while now that the web and correspondingly the browser should be bifurcated into a content platform with no client side code and an application platform without the burden of the older technologies. The browser would provide all the interactivity and logic for the content platform through implementations of standard html tags. For the application platform, the browser could provide a more convenient set of apis sort of like plugins did before.
I can't agree more. I was just saying something similar in the thread on mobile JS framework loading performance. The browser has reached a critical stage where the Jekyll/Hide impersonation has got to stop. There needs to be separate modes in the browser, application/content, or there needs to be separate browsers. The evolution of JS as a decorative language has reached its ultimate end: it's no longer just decorative and instead is now devouring and devaluing the host content it was supposed to originally enhance. But, at the same time, it's usefulness for zero-install client-side applications cannot be ignored and it needs a platform also.
I believe the browser should be exactly what it is, without using javascript. I'll always block javascript, whitelisting sites which 1) fail to work without it and 2) which i really want to visit. If you need javascript to present information then you're either not a very good developer or else you don't care about the user experience. Degrade gracefully; you can still display text and images without javascript and a lot of people don't want a lot of high-risk fluff just because you're proud of your use of add-ons.
That's fine, but there is still a place for JS-only applications on the web. For example, we produce a web application development IDE that emits JS-only applications (HTML just bootstraps the JS). The things you can do with such applications are numerous, and are the backbone of a lot of SAAS offerings. However, our company web site doesn't use any JS (other than the Google Analytics hook), and it loads/runs like a dream on any device/browser. The point here is that there is a rationale for both modes of operation (content vs. application), and maybe, like another commenter noted here, it's just time to bite the bullet and separate out the two use cases in a more forceful and clear manner.
Excellent comparison! Except - no, it's like buying a smartphone and expecting it can still be used as a phone. I want both an application platform and a document reader.
Too many pages obscure content by showing ads, showing annoying popups (no I don't want your newsletter!) and by wasting screen estate on some "float on the top" menu you can't get rid of.
The thing I miss most on my smartphone is NoScript. Luckily Firefox has "reader mode" which helps a lot, but it sometimes doesn't show whole content.
> I think the real point of irritation here is all the 3rd party junk that gets loaded in that has nothing to do with the main functionality of the site that you are on.
First, while I agree with this being the biggest issue, there is a little bit of nuance to your other point.
> If you believe that the browser should only be a document reader and not an application platform then go ahead
The thing is, the overwhelming majority of those applications are glorified document readers, with a bit of social media plug ins thrown in. It features rich media perhaps, but you don't need JavaScript for an image or video tag. Of the remaining applications, the majority of use-cases is forms to send over the web. This can often be enhanced by JavaScript, but is also not that insane in terms of needs. Then we get to the remaining use-cases of the "application platform".
There's also the part where most websites are just plain badly designed. For example, many sites that have a video that auto-plays when you open it, even if you open a text article and the video is totally unrelated to what you were watching. Worse, some of them even tend to autoplay to a new video, often redirecting your webpage, interrupting the reading experience. Sure, I can pause. It still downloads and buffers a video I never intend to watch. Similarly, whatever happened to progressive enhancement? Websites that give you a blank page unless you download three megabytes of JavaScript. WTH.
«Similarly, whatever happened to progressive enhancement?»
In one word: Frameworks.
In more words: Building HTML in two different places is typically not very DRY (Don't Repeat Yourself) and if you are assuming a lot of very dynamic content that want to update on the fly from the JS side of things all the way down to micromanaging the HTML generation at run time, well then all of your HTML building moves into JS to keep things DRY.
The hope for the future is so-called "Universal" JS (which is interesting in that its kind of circling back to the origins of JS (LiveScript Server) and ASP Classic): now that we have a somewhat standardized JS platform on the server side (NodeJS) we can use the same JS to build HTML on the server or in the client...
I use uMatrix, uBlock0, and privacy badger, and am very happy about it. 1st party scripts are turned on by default by uMatrix, and for those that break, I selectively turn them on. Privacy Badger takes care of blocking cookies (first or third party) that try to track you.
Sadly JavaScript or "the language of the web" is going towards binary rather then openness. The big sites like Google already obfuscate their code so it's hard to see what it does.
I learned JavaScript by viewing other peoples source code, witch was as easy as right clicking and selecting view source.
Unless we want more people to disable JavaScript, we need to keep it open source and transparent!
Do you run any application which you downloaded from the internet? Database Administration tool, messaging app, or similar? They are mostly written in code you cannot access or view in any way, yet you still trust the publisher.
But the web ones are different everytime you visit. With desktop apps you can install updated versions at your leisure. With a web app if someone managed to inject something nasty into gmail -- we all be hosed.
I was going to say that clicking a link is supposed to be a natural thing to do, while installing software requires some degree of trust in who you are downloading it from.
you and I learned how to code before the resources were as plentiful as today.
for every obfuscated app there are 200 sites that explain in detail what you want to do. and another 200 open source versions to implement or learn from.
While I understand the intent of your post, don't most people minify (obfuscate) their JS code to reduce bandwidth costs (on both ends, user and company)? Even in todays high bandwidth availability age we still use CDNs and the like to reduce such a cost.
That said, it would definitely be nice to see non-minified versions of code we run in our browsers available as open source by the company serving it. It's not like it's a secret, just a pain to actually try to decipher.
You only save bandwidth the first time the resource is accessed. After that it's loaded from the browser cache! So over time, the band-witch saving by minification is insignificant.
Unless the resource changes, the UA's cache is cleared, the file is served with incorrect caching headers, the cache expiry time specified in the resource header is reached, the resource is loaded by a UA that doesn't cache...
Lets say your .js files takes up 5% of your total app size after gzip compression, and minification saves you around 20%. Then you have saved around 1% bandwidth at the cost of obfuscation and more difficult debugging.
And If it's cached, witch all main-steam browsers does, you've saved around 0.01% at best. So if you pay $10,000 in bandwidth costs each month, that's $1 saved :P
The first time the resource is accessed is the most important. You have precious few seconds before the user instinctively reaches for the back button.
While I do not mind the obfuscation, I do not like that browsers do not give you easy way to access/inspect variables. Or seeing what function names (and parameters) are called.
I've been in the habit of leaving sourcemaps in the production drops for this reason that by it's nature it's not exactly secret, even if the code isn't strictly "open source": if someone is that interested in the non-minified version they are likely to use a deminifier anyway and obfuscation isn't security nor copyright law enforcement. Plus it's also selfish and lazy to leave the sourcemaps accessible (thus the business case for it): as much as you work to prevent having to debug things in production, you will almost always need to debug things in production.
He ended up wanting more control but acknowledged that some elements of the modern web require a scripting language. I don't know why he didn't just install noscript.
This is where I draw the line, Hacker News. The end of the road.
Do you know how many shitty stink eyes I've gotten from people on this site, just because I've dared to speak out against JavaScript, Cookies and Analytics.
But oh! OH!
Wired writes a story about it, and suddenly, the clouds open, and the sunshine just pours through.
*OF COURSE* an article in *Wired* is gospel! We were
*FOOLS* to ever claim otherwise! JavaScript is the devil!
Boos and hisses for JavaScript all around.
Next week, Firefox will do something sinister like bury about:config in an even deeper and more obscure location, like within the js console, so that you can't get to it from the address bar, and I'll cry foul, and you'll all take a big fat shit on me. Just like you did when I complained about Firefox taking the javascript checkbox out of the preferences panel and burying the it under about:config.
Nonsense. The fact that HN has people with a lot of different viewpoints is what makes it good. I'm pretty strongly in the 'as little javascript as we can get away with' camp and this wired article contains no news to me but I'm more than happy to see it voted up.
It's not how I'd phrase it, but I agree. It's appalling how many people on HN seem to think that it's perfectly okay to require JavaScript in order to display text.
Two things that caught my eye in this article were "Many people have turned to ad blockers" and "A small but growing number of people, however, are taking ad-blocking a step further and just disabling JavaScript altogether". For the first quote, I know many people in tech who use ad blockers (but maybe still not a majority?), but I'm pretty sure they aren't all that prevalent outside of it (or why would advertisers bother?). As for the second quote, is this actually true or supported by any real evidence?
I found a study [0] from Q2 2015 -- before iOS 9 -- that reports ad blockers on 16% of devices in the US, and on 36.7% of devices, the highest value, in Greece.
I have Javascript turned off by default and sometimes enable it if pages don't work otherwise. Sometimes I just leave the page. I don't see it as ad blocking, but as a means of reducing attack surface, tracking, and improving page load times.
Just turning off JS doesn't stop flash ads, static ads, video ads before videos play on youtube, etc. as well... so to say the least this author is deluded if he thinks he's getting anything close to an adblocker experience.
If not ads what do you want? Paywalls? Native content? Personally I want a robust and diverse web ecosystem, not just pay walls and people forced to alternative revenue sources.
> Personally I want a robust and diverse web ecosystem
Well, everything paid for by ads is the opposite of diverse. Pretending paywalls are the only alternative is disingenuous too. There's plenty of options, like donations, or Blende's "pay per article, get your money back if it sucks" model, which seems to work well
They don't work well in most cases. You can point to some very specific niche markets where donations and pay per articles work. Just look at Patreon, its a great service and I use it to support a few things. But its not going to support most businesses.
For most business its going to be either a paywall or ads and ads allow for content to be access by people without means to pay for it.
Whoa, this guy managed to uncheck "enable javascript" somehow? Glad to read such a cutting edge article.
In seriousness, disabling javascript (and enabling it selectively when things inevitably break when I was using NoScript) grew too tedious for me after a while.
There are simply too many sites that require JS to function properly. Others may disagree and enjoy clicking constantly to enable select javascripts to get pages to work properly (or maybe don't visit JS intensive sites), but in my experience it isn't worth it.
>In seriousness, disabling javascript (and enabling it selectively when things inevitably break when I was using NoScript) grew too tedious for me after a while.
I'm sort of inclined to agree. I really want to like NoScript, but every now and then when I use NoScript for a couple of weeks I get frustrated with it and disable it. Sure, having it disabled is also frustrating, but it's a different kind of frustration and at least I can sort of use the site without having to put active effort into it. Now I just use uBlock Origin, it just works more or less.
I guess I have less diverse browsing habits than you guys. I use noscript very happily. I whitelisted what I need for sites that I use years ago and most things I do now "just work" (most is ~95% the other things I temporarily allow). When e.g. a job application needs a javascript heavy online test I open up another profile with no addons and use that profile for that that thing. Based on experiences using browsers without noscript I think that the "faff time" (for me) from doing what I do is less than the "waiting for excessive javascript" and "figuring out that this site has overriden scrolling/back button".
I've disabled anything 3rd party and all scripting via uBlock. When I really need some site to work 100%, I'll just selectively enable the parts that are required for that site. The little button makes it easy to whitelist stuff case by case.
You certainly can block all scripts with uBlock Origin's "advanced" mode. There, you can block first and/or third party scripts as desired.
It's a common misconception that uBlock Origin is "just" an adblock plus replacement, but it's a lot more than that.
The one caveat is that there's no fine-grained GUI for white/blacklisting specific scripts. You can however white/blacklist scripts from domains using the GUI, and you can block / unblock individual scripts by writing rules.
I wouldn't mind some JS on this page to hide the conversations that don't interest me. Also, why make a request for 5x more data, reflow, and redraw everything whenever I click something?
I read about this a while back if I remember correctly it's because people kept turning it off accidentally and breaking the Internet and blaming Firefox.
I've been doing this for a while now after becoming tuned into the tracking and particularly fingerprinting being done. The web is surprisingly usable with it off. I use SafeScript in Chrome which generally works ok. I use multiple profiles in Chrome, one with just Adblock the other with Adblock, noscript, httpseverywhere, privacy badger, etc. I use the normal one where I absolutely must and that doesn't keep cookies.
I'm not paranoid and I don't have anything to hide but I object to being tracked to have stuff sold to me.
On an iPad1, your best choice is indeed to disable JavaScript. (Note that the ipad1 has 256 MB of RAM. That sounds enough, but it is not! May be because of a poor optimization of Safari on iOS5)
92 comments
[ 4.8 ms ] story [ 136 ms ] threadhttp://tantek.com/2015/069/t1/js-dr-javascript-required-dead
Everything feels much faster, and sober without Javascript, especially news site (looking at you, lemonde.fr)
I still allow some JavaScript sometimes, most of the time to unbreak site, but if you start you using it you will realise that most of the JS running on each site is at best useless from a user point of view.
I now browse the web with curl | less
But, to me, Blogger is a great example of a site that is poisoned by its reliance on JS. Blogger is so bad at showing a page of text that it needs a splash screen.
As for including jquery from google, of course and for good reasons, even from the user's perspective. The main one, of course is that chances are that your browser already has it cached (from other site that uses it), so retrieving it and loading it is (almost) instant.
You can argue the other 85% doesn't have internet access or isn't your target audience. However, I run a site that's geared to the US market, it's entirely in English, and 12k of my registered users are from China (1.5%). If I included files from the Google CDN, I'd be losing 1.5% of my users due to one line of code.
http://picpaste.com/wired_com-yt7ooXyu.png
EDIT Honest question. Since I've been disabling javascript I've not read many comments sections and I've wasted a lot less time.
I think the real point of irritation here is all the 3rd party junk that gets loaded in that has nothing to do with the main functionality of the site that you are on.
Web browsers are a platform for sure, but the simple content should stay simple.
Developer: "Well, we can either build our website in document mode or in application mode."
Management: "What's the difference?"
Developer: "If we build it in document mode, it loads quickly and cleanly and..."
Management: "Does document mode let us put the modal popover window that got 5% of our visitors to join our newsletter last month?"
Developer: "Well, nope."
Management: "And the third party tracker?"
Developer: "Again, no."
Management: "So we can't monetize or track how many sticky eyeballs are consuming our content?"
Developer: "Nope."
Management: "App mode it is."
Developer: "But it isn't an app. It's just static pages."
Management: "APP APP APP APP APP APP. I hear you can go on a course to build apps in less than a week."
Developer: starts checking his LinkedIn for an employer who doesn't make him want to take a pickaxe to his own face
Too many pages obscure content by showing ads, showing annoying popups (no I don't want your newsletter!) and by wasting screen estate on some "float on the top" menu you can't get rid of.
The thing I miss most on my smartphone is NoScript. Luckily Firefox has "reader mode" which helps a lot, but it sometimes doesn't show whole content.
First, while I agree with this being the biggest issue, there is a little bit of nuance to your other point.
> If you believe that the browser should only be a document reader and not an application platform then go ahead
The thing is, the overwhelming majority of those applications are glorified document readers, with a bit of social media plug ins thrown in. It features rich media perhaps, but you don't need JavaScript for an image or video tag. Of the remaining applications, the majority of use-cases is forms to send over the web. This can often be enhanced by JavaScript, but is also not that insane in terms of needs. Then we get to the remaining use-cases of the "application platform".
There's also the part where most websites are just plain badly designed. For example, many sites that have a video that auto-plays when you open it, even if you open a text article and the video is totally unrelated to what you were watching. Worse, some of them even tend to autoplay to a new video, often redirecting your webpage, interrupting the reading experience. Sure, I can pause. It still downloads and buffers a video I never intend to watch. Similarly, whatever happened to progressive enhancement? Websites that give you a blank page unless you download three megabytes of JavaScript. WTH.
In one word: Frameworks.
In more words: Building HTML in two different places is typically not very DRY (Don't Repeat Yourself) and if you are assuming a lot of very dynamic content that want to update on the fly from the JS side of things all the way down to micromanaging the HTML generation at run time, well then all of your HTML building moves into JS to keep things DRY.
The hope for the future is so-called "Universal" JS (which is interesting in that its kind of circling back to the origins of JS (LiveScript Server) and ASP Classic): now that we have a somewhat standardized JS platform on the server side (NodeJS) we can use the same JS to build HTML on the server or in the client...
I learned JavaScript by viewing other peoples source code, witch was as easy as right clicking and selecting view source.
Unless we want more people to disable JavaScript, we need to keep it open source and transparent!
I was going to say that clicking a link is supposed to be a natural thing to do, while installing software requires some degree of trust in who you are downloading it from.
[0]: https://developers.google.com/closure/compiler/
for every obfuscated app there are 200 sites that explain in detail what you want to do. and another 200 open source versions to implement or learn from.
That said, it would definitely be nice to see non-minified versions of code we run in our browsers available as open source by the company serving it. It's not like it's a secret, just a pain to actually try to decipher.
Dead-code stripping is still useful but you can do that without obfuscating.
> After that it's loaded from the browser cache!
Unless the resource changes, the UA's cache is cleared, the file is served with incorrect caching headers, the cache expiry time specified in the resource header is reached, the resource is loaded by a UA that doesn't cache...
2) There are many, many people in the world today who access the internet through what is effectively a 2G connection.
3) "...at the cost of obfuscation and more difficult debugging."
3a) Sometimes obfuscation is a desirable side-effect.
3b) Javascript source maps exist for a reason.
4) "And If it's cached, witch all main-steam browsers does..."
4a) It's almost as if you ignored the majority of the last sentence in my previous comment. :)
See http://www.fastcompany.com/1825005/how-one-second-could-cost... and other similar articles.
Sourcemaps are great.
Do you know how many shitty stink eyes I've gotten from people on this site, just because I've dared to speak out against JavaScript, Cookies and Analytics.
But oh! OH!
Wired writes a story about it, and suddenly, the clouds open, and the sunshine just pours through.
Next week, Firefox will do something sinister like bury about:config in an even deeper and more obscure location, like within the js console, so that you can't get to it from the address bar, and I'll cry foul, and you'll all take a big fat shit on me. Just like you did when I complained about Firefox taking the javascript checkbox out of the preferences panel and burying the it under about:config.https://news.ycombinator.com/item?id=6166629
Okay, Hacker News. I see how it is.
I have Javascript turned off by default and sometimes enable it if pages don't work otherwise. Sometimes I just leave the page. I don't see it as ad blocking, but as a means of reducing attack surface, tracking, and improving page load times.
[0] http://downloads.pagefair.com/reports/2015_report-the_cost_o...
Never felt the slightest skerrick of guilt for using an ad blocker.
Instead I feel mildly virtuous in doing my own small part in helping the idea of an ad-supported internet die.
The quote from the author is:
> ...and I could browse the web with fewer distractions—all without the sense of guilt that comes with using an ad blocker
Notice the gulf between your statement and the author's statement.
Well, everything paid for by ads is the opposite of diverse. Pretending paywalls are the only alternative is disingenuous too. There's plenty of options, like donations, or Blende's "pay per article, get your money back if it sucks" model, which seems to work well
For most business its going to be either a paywall or ads and ads allow for content to be access by people without means to pay for it.
In seriousness, disabling javascript (and enabling it selectively when things inevitably break when I was using NoScript) grew too tedious for me after a while.
There are simply too many sites that require JS to function properly. Others may disagree and enjoy clicking constantly to enable select javascripts to get pages to work properly (or maybe don't visit JS intensive sites), but in my experience it isn't worth it.
I'm sort of inclined to agree. I really want to like NoScript, but every now and then when I use NoScript for a couple of weeks I get frustrated with it and disable it. Sure, having it disabled is also frustrating, but it's a different kind of frustration and at least I can sort of use the site without having to put active effort into it. Now I just use uBlock Origin, it just works more or less.
It's a common misconception that uBlock Origin is "just" an adblock plus replacement, but it's a lot more than that.
The one caveat is that there's no fine-grained GUI for white/blacklisting specific scripts. You can however white/blacklist scripts from domains using the GUI, and you can block / unblock individual scripts by writing rules.
But it can still be disabled in `about:config` > `javascript.enabled`
I used and loved Firefox since more than 10 years so far, but can't truly understand some decisions they took.
I'm not paranoid and I don't have anything to hide but I object to being tracked to have stuff sold to me.
On an iPad1, your best choice is indeed to disable JavaScript. (Note that the ipad1 has 256 MB of RAM. That sounds enough, but it is not! May be because of a poor optimization of Safari on iOS5)