September 29, 2008

The broken Web

I have several computers, almost all of the time I'm using one (or several) or three: an HP laptop that with a 1024x768 resolution, the EEE PC 701 with a 800x480 resolution, and finally my BlackBerry 8100 and its way smaller screen. I use them to do everything I use computers for, including surfing the web. The experience is far from perfect, and here are some reasons why:

The web is about content, not displays


Please stop that really old mantra of "nobody uses 1024x768 anymore". I've been listening to that for a while, even if the biggest resolution I have on this three devices is exactly that one. Also, the argument isn't new: I remember at least the "nobody uses 640x480" and the "nobody uses 600x800" arguments, and I'm pretty sure that the thing didn't start there, but in other arguments like "nobody sees only 80 columns anymore". The biggest mistake here isn't to think that nobody uses 1024 while I still do. Nor trying to predict the smallest resolution out there. The mistake here is that the web is about content, not displays. Regardless of what you might think or want, a website is meant to be read by whoever crosses with it, using whatever device he's using. Your website must be visible, readable and usable by every device, with every resolution. It's not hard, and it doesn't mean you should ditch planning your website layout and make it into your CSS files. On the contrary, it means that you should treat content as content and put it in the document layer, presentation as presentation and put it in the presentation layer. But it also means that your presentation can't be made in a "if users are reading this in a 1024 screen", or "if users are reading this in a mobile device", but instead, "if users are reading a paragraph", "if users are reading a caption"...

One Web


Like I said in the previous item, your website should be platform-agnostic. But that doesn't only mean that I should read your website well in every resolution, it means that I should be able to read your website with every browser, in every device. One web, several ways of reaching it. So, remember this next time you're thinking about making a mobile version of your website: if you're planning on do it, you already did it wrong. See, your website should be readable everywhere. That means that if your website is well made, I can read it well in my mobile device without the need of going to a mobile version of it. On the other hand, if you're making me go to another website -- a mobile version -- you're not only stopping me of seeing the website I want to see, giving me a trimmed-down version of the real thing, you're actually making me see another webiste, with all the implications that might have. Remember, if your website doesn't look good in a mobile device in the first place, you already did something wrong...

The Web is The Web


The Web is The Web: nothing more. It's made of standards, composed by a set of documents written in a certain language. You have HTML, XHTML, CSS, Javascript, several formats for images and other objects... and that's it. The Web is just that. The web isn't made of "plugins" or "third-party applications". The web is made to be seen by a browser - any browser. So remember: if you have, for instance, flash in your website, the content must be 100% acessible by a browser without a Flash plugin. I'm serious: it's not my fault if I can't see your website in my mobile phone just because it full of flash. You chose to use a plugin that isn't available to every browser, in every platform, so you have to give an alternative for those visiting your website without that plugin. Oh, and spare me that "you don't have flash, get it here" messages, because you're just making me doing a couple of steps and going to another website where they'll tell me "your platform isn't supported". It's not my fault as a web user, and it's not their fault as a plugin provider: it's your fault as a content publisher.

What else?


There are tons of other things in the web that makes it as broken as it nowadays is. But for now, please think about this three. I bet that with those solved, my web experience would get a lot better.