Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Gmail just became really good (precheur.org)
9 points by henryprecheur on May 24, 2008 | hide | past | favorite | 24 comments


It's amusing that people still avoid JavaScript for absolutely no reason. 1998 called, they want their unfounded fear back.


Not really -- I use plain HTML because otherwise the AJAX requests eats 50% of my CPU and a huge part of my memory. The HTML browser is just plain faster.


Not trying to belittle, but it sounds like you have a slow CPU. For modern machines, a JS interpreter (which powers AJAX) is a light, negligible charge.


JS interpreter is a negligible charge if the program running does not consume too much resources.

Also JS makes the web less "accessible": Think about handicapped people who can't use IE / FF / Safari.

Avoiding Javascript is one's personal choice. Ideally Javascript should not be mandatory for surfing.


I'm honestly asking because I don't know the answer to the following question, though it may sound facetious. Are computing assistants for handicapped people in such a sorry state that:

1. for those that can't see well or at all, that they can't read off the screen using not the underlying HTML source, but the current DOM and layout state to determine a reasonable way to read out the screen?

2. they offer no help for those people that have problems with precise mouse movement?

Quite frankly, the whole accessibility argument appears to be a red herring unless the state of accessibility technology is such that it is crap and is not progressive. Even properly coded Flash (much like "proper" XHTML with CSS layouts) is accessible to screen readers these days and has been for the past couple of versions.

We didn't stop building multi-level buildings to accommodate people in wheelchairs, we just added ramps and elevators. I'm not willing to stop using javascript because of crap accessibility assistants. However, I am perfectly ready and willing to to build the equivalent ramp and elevator into my javascript functionality. There is nothing fundamentally inaccessible about using javascript. If it were such a big problem, Cocoa applications or .NET applications would be inaccessible too. But they aren't (http://developer.apple.com/ue/accessibility/universalaccess....) and in fact often have specifically added the necessary ramps/elevators so that they are accessible.


At my school there was a blind guy, he used Lynx to surf.

Once I looked how he was surfing / coding. And he was incredibly slow ... "Normal" people scan the page. He could not, he had to more or less "read" the whole page. I did not see much more, but it gave me the impression that surfing was a frustrating experience for him.

One of his friend told me that one thing that screwed him each time a was surfing was the "Javascript links". On lots of pages (well ... too much) instead of a regular HTML link there was a piece of Javascript code witch supposedly was opening a new window or do "something smart". These links did not work for him. The worse part of the story is that the fall-back mechanism is pretty easy to do:

<a href='page.html' onclick='return do_something_smart(this.href);'>

Maybe the situation has improved. But I guess that it did not improve that much. Writing a Web-browser is complex, therefor I believe that integrating accessibility features is difficult too. And upgrading everybody's wheelchair is not easy in practice. So it is for screen-reader, and accessibility software. We still have IE 6 around! It is utopic to believe that every handicapped would upgrade in just a few years.

Of course we should not drop Javascript, but we should think about its impact. It is like adding a step in front of a building; it can be a real obstacle to some people.

The web would be a better place if we do so. Not only for our handicapped friends, but for us in the future. I don't want to give up surfing when I am old because I broke the web with fancy and non-essential features.

HTML is the web. Javascript enhance it. But Javascript is not the web.

Here is a good place to start: http://diveintoaccessibility.org/ (Does not really speaks about javascript but it gives a lots of useful advises)


THANK YOU. :) I wish more people would stop and consider how they'd do what they're trying to do if they were geared towards an older audience. To an illiterate audience. To an audience of all deaf people. and so on. It would make such a big difference. I try to get a lot of my Mac friends to enable voiceover (the screenreader) and the screen curtain (makes your display black, a key combination you can't remember is less tempting than turning off the display) and test out their sites and apps. It's a completely different world sometimes.

And nowadays, I don't see people "reading" the whole page..they do the equivalent of scanning, I guess, by going through the whole page and skipping irrelevant things. And if that doesn't work, then searching. Still a frustrating experience.


When I'm making informational web sites, I typically work very hard to achieve a seamless degradation. I wrote my comment after working on a web app I'm developing. I sat there and tried to figure out how I could possibly make this thing accessible to a blind person and I don't think I can without creating an entirely different user interface just for them. The problem with my interface is I'm not just showing an information article that can read left-to-right top-to-bottom. It's more of a car dashboard.

As more and more applications hit the web, I don't think we'll be able to just say that HTML is the web. For better or for worse (there's a whole other argument for another day) we've entered a situation with web applications where there are several players: HTML+CSS+Javascript, Flash, Silverlight, etc. Unless somebody sits down and says "Ok everybody we really need to get a grip on creating an accessibility convention for HTML+CSS+Javascript applications" you're going to have the proprietary folks pushing accessibility as an advantage of their platform. And you know what? They'll be right.

Thanks for the link, I never heard of that website so I'll check it out. For what it's worth, I worked at a company that had some blind people test our sites when they were done nested tables and paid no attention to accessibility, and versions which (at least from a technical standpoint) implemented all the best practices. Frustratingly, they didn't seem to do much better. The content itself needed to be tailored to them because there was simply too much. Like you say, the web of today seems to be built for scanning large quantities of information. Just like you can't take an info-heavy website and throw it at a mobile device because people have different requirements and constraints when browsing from a mobile device, making a website accessible doesn't seem to be just an engineer problem but an editorial one too.


Actually, Adobe and Microsoft aren't doing so shabbily on that front.

http://www.adobe.com/accessibility/index.html http://msdn.microsoft.com/en-us/library/bb980136.aspx

The problem is that people don't seem to take that kind of testing into consideration unless it really matters (e.g. section 508 for .gov websites).

Lastly, nested tables I don't think are THAT much of a problem. CSS can be useful in other ways - e.g. to display almost the same information in a completely different way that may benefit low vision people, or mobile users. It's some uses of ajax and the like that can be a problem, not so much a table based layout or something like that.


The thing about Cocoa accessibility is that Apple does that all in-house. All the universal access tools and Voiceover (the screenreader) are theirs, plus they're the ones working on Cocoa. Almost nobody else has anything like it..there are a couple of third party tools I can think of, but nothing like what comes built in. On the other hand, Windows has the support of all the big names (cough freedom scientific) but there's a lot more diversity in terms of development. But they have to work with Microsoft and other third party devs and it's not perfect - one example I can think of is Firefox support in Jaws, which came only when Firefox was at like version 1.5 or 2ish. It's still not as good as msie support today. I might add that Cocoa apps are pretty accessible, but Firefox in all its xul etc. glory on OS X is mostly inaccessible with voiceover.

And the main problem with web accessibility is that people just don't give a crap. There are plenty of ways to get a site to be fairly accessible using any of the main screenreaders and other accessibility tools out there. But it's apparently a complete waste of time and not worth the effort. Some of the biggest companies and websites are guilty of this - like Yahoo and their "newish" Mail webapp. Google is definitely a lot better in this aspect.

So no, you don't have to stop using javascript, you just have to give more of a consideration to the small percentage of potential users (depending on your audience) that may need additional tools to use your website. If it proves impossible, just create like a "text only" version of the site up at the top of the source but hidden, so screenreaders could read that but normal visitors won't see. But I doubt you'd have to go that far. See a site like http://www.jkrowling.com/ for an example. I don't know why they did it the way they did, but they have the regular flash site in different languages, then the accessibility-enabled flash version, and then the text-only. I guess that covers everyone ;)

Mouse movement is another matter - that's actually quite personal to me because I have tremors that sometimes makes it hard to accurately do things with a mouse. But there's plenty of software and hardware devices out there for people with movement disorders. It's not as big of a problem as it is for, say, the visually disabled. Ultimately I'd have to say it's not just the accessibility tools at fault here.


Like I mentioned in a parent comment, I wrote my comment after working on a web application. If you see my comment there, I mention that I'm not quite sure how I could possibly make the interface accessible in any meaningful way for a blind person. I could give them a text only version of the web app, maybe that had a more linear and modal interface. But it would be about as accessible as some XML formats are human readable. I mean technically they're human readable but can you read them? I know I can't! :-)

Simple informational websites have no excuses today for not being accessible. As you have shown, there are simply too many options for these sites for them to turn a blind eye to any one of them. But simple informational websites appear to be a dying breed. There are several streams of information being presented to users on most websites. Trying to force them all to be accessible seems to me about as ridiculous as mandating that CNN require their closed captioning feeds to have not only what the talking head is saying, but the news ticker, the stock quotes, etc. that are also thrown on the screen at the same time; oh and this closed captioning feed needs to be backward compatible with an analog 21 inch Sanyo TV :)

It frustrates me that HTML+CSS+Javascript web applications will be at an inherent disadvantage here unless we as an industry come up with some sort of convention. We could start with some notification event model, or even something as simple as saying that if your HTML markup sports an accessibility meta tag, that all DOM objects with the class name accessibility-hidden should be ignored by screen readers and that those with the class name accessibility-display should be picked up by the screen reader. The reading order of each element could even be specified by adding a class read-N to DOM elements where N >= 0 and denotes the priority of reading.

If we had something like this, at least I could hide parts of my user interface from a blind person (no pun intended!) and show them only the most important and relevant information to achieve the primary task at hand.


In regards to XML: haha, they are "human readable" but I can't read them either. But the thing is, that is still better than nothing. In fact that's scarily like fancy gmail vs. the newer yahoo mail interface - the former is like some xml formats, the latter is nothing at all. I know many webapps cannot be translated so easily into linear and text-only pages, hence I think at least some comment up at top about different options for doing something similar or an informational message about what is required for this app is a good idea if all other options have been exhausted.

I understand some apps are inherently inaccessible and there's probably going to be no good solution for presenting them in an accessible manner, but the number of those are very small. e.g. Gmail does not fit into that, think of what webmail was before web2.0. I'm not even talking about some of the fancier features of the webapp like chat, just the basic email functionality. So no, it's not quite like requiring that CNN do that. Just that they provide a CC feed. The rest are not so relevant.

Nor do I want to force every site to be accessible, as it really depends on what the site is. But like i've pointed out, yahoo mail is a horrible reminder of how a big site with a popular product is just ignoring a bunch of people. I can't even count the number of folks I've had to move to gmail from hotmail/yahoo mail because the latter two are just becoming a mess in their screenreaders.

Might I point out that this isn't just for the visually disabled. I have an iPhone and no matter how much Steve Jobs goes on about how I can see nytimes.com in all its full glory, it sucks. In fact, a lot of regular sites suck a lot in mobile Safari. My fingers ache from zooming in and out and trying to click on tiny links and getting unexpected behavior. Like, I use sigalert.com daily on the phone, and I can't click accident/traffic reports on the map because whoever designed that was expecting someone with a mouse to click, not a fat finger on a small display. If it works and I actually pressed the right thing, the ajax popup of accident/traffic detail shows up somewhere totally different.

But, I have the option of going elsewhere on the same site for a list of accidents by freeway. It sucks, but it's still something, and something a LOT easier to look at on my phone. And most sites can do something like that, hence my bitching. I would be hard pressed to find a site where the same information cannot be presented in a more accessible manner. Sure it's not as nice and for the average user it's pretty dumb, but it is better than nothing.

Lastly, I think what you're looking for is http://www.w3.org/WAI/intro/aria which is a start.


For simple surfing, you're right—javascript should not be mandatory. But if you're expecting to use any kind of interactive application (say, an email client, for example), I think it's fair to assume some sort of JS requirement there.


what's more fair is to use javascript and flash and the like appropriately, but to provide at least some sort of fallback for the users who cannot access it for whatever reason, even if it's only to spit out an error saying "sorry this page requires x, y, z to be enabled".

I do a lot of work for and with visually disabled folks, and it's usually the lack of any sort of fallback that's a problem. Can't tell if something changed, can't read captchas..you get the idea.

The problem with that situation is, of course, that a lot of them are using javascript-enabled modern browsers like ie7 and firefox and safari and usually not a cli browser like links, so they come across these huge webapps like the new yahoo mail that they cannot navigate at ALL very often. It's quite frustrating.


Some _can_ use IE/FF/Safari, but when they come across ajax-heavy webapps it's like "what the?!". Plus it is entirely possible to make a fairly accessible shiny web2.0 webapp (e.g. gmail even without the simpler html mode and google reader with aria support)...although they are generally in the minority.

A very, very small minority are going to have a browser with no javascript support. It's important to have some sort of fallback, but I guess it also depends on your audience. No point in spending that time if all you're doing is catering to teens to advertise something, for example.


I use Gmail's plain HTML layout because my connection is spotty and slow in most places I'm at, and the AJAXie layout takes up additional bandwidth.


On a mobile unit, sure. But JavaScript powers keyboard shortcuts, my favorite Gmail feature. If that costs me CPU cycles or bandwidth latency, I don't notice it. I appreciate simplicity but on a modern computer/browser, efficiency and features often trump convention and portability.


All this discussion makes me think that if someone were to create, say, a Firefox plug-in for accessibility -- one that could react to Javascript-related DOM changes and such -- there would be a serious market for it.

Of course, if web developers would stop being lazy and properly implement things like progressive enhancement and graceful degradation, it wouldn't be needed. Every site I make starts as non-Javascript, even if I plan for the entire thing to be laden with it in the end.

Then again, all of this is moot anyway, because the author gave absolutely no reasons for why he prefers the HTML version and doesn't use the JS version. I am going to run with the idea that he fears JAVASCRIPT GNOMES!!!


I would NEVER cater for an audience that willingly switched off javascript. This is like people who refuse to buy any cars that have electronics in them. Javascript is no longer some esoteric or slow - it's supported by 90% of all browsers, and pretty much critical for most of the web.


But how can you remember anyone's email address without the javascript auto-complete feature turned on?


EXACTLY. The benefit of turning off javascript is small, and the cost is huge.


I think the UI version one is the best (not generic html). the new ui they've done is slow and bloated, and seems to have little improvements.


I agree with the article. I like Gmail a lot better now that I no longer have to manually switch it back to "basic HTML" mode.


thank christ. now I can actually use my gmail account instead of just forwarding it to other accounts.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: