There’s been some great discussion surrounding my latest article for A List Apart. It is amazing to see how some people get the idea of progressive enhancement and some just don’t (or perhaps refuse to).
Many folks brought up the point that having requirements for a web-based application is akin to having requirements for a desktop one. I couldn’t agree more, which is why, while discussing some of the shortsighted design choices made by the folks at Lala.com, I said
For a closed application or service, this might be acceptable, but for a public website it’s a disaster.
“Public website” is the key there. Lala.com is open to the world. To see the homepage, browse around, or search you don’t have to sign up; you don’t have to agree to do anything. The public-facing portion of the website is open to everyone, so it should be open to everyone.
When you start talking about closed applications, such as GMail or Basecamp or a CMS, it is acceptable to create a set of requirements for your users. After all, they are choosing to use your service. Keep in mind, however, that even when introducing flashy JavaScript-based functionality you should still be keeping your markup clean and semantic and that you should do your best to follow at least the basic accessibility guidelines, especially if you are charging for your app. Even Google came to the realization that they needed a non-JS version of GMail, so you should never rule out having to go that route. And planning for it from the beginning makes it a hell of a lot easier to implement.
One active member of the discussion I’d like to single out is Jean McGuire. Her comments have been very thoughtful and I’d like to take a moment to share a wonderful analogy she made:
For example, if you owned an outdoor goods store, wouldn’t it be a cool idea to have the entrance on the second floor, and have a climbing wall in front to get to it? That would be new! different! unique! But, even leaving out handicapped accessibility requirements (and how much the UPS guy would hate you) do you think any store owner would be that bloody stupid?
Sure, maybe most of the customers would be experienced climbers and would have no problem with the wall. Some might even think it’s fun, not just annoying. But what about the non-climbers shopping for birthday presents for climbers? What about the person who just needs fifty meters of really good rope? What about the person bringing a spouse’s sleeping bag in to get a new zipper? What about the climber with one arm in a cast? For that matter, what about the newspaper reporter coming to do a local business profile on your store? (aka a search engine spider)
Isn’t that just fantastic?
I am really happy that this piece has garnered so many reactions and had gotten people both talking and, most importantly, thinking.