This article was written in 2010. It might or it might not be outdated. And it could be that the layout breaks. If that’s the case please let me know.

Design for users first, not just for good looks

I’m beta testing a new real time analytics app and it looks absolutely beautiful. A subtle design, a clear navigation, nice looking forms and some clever looking scrolling effects which remind me of framesets, just better looking. So far so good. I bookmarked it, imported the url into iCab on my iPad (my favorite browser for managing online apps) and logged in to change the settings while lying on the couch. This is where the happy part ends. I really tried to make this a positive article but I just couldn’t. Sorry.

It turns out that some input types are somehow replaced by images and the text you enter on your keyboard is added to a div with a script. Since no input element gets focus the keyboard on touch devices will not be visible and at least on my iPad you cannot even paste text. Maybe you could write another very complex script to emulate this behaviour but, less silly, why wouldn’t you just use some regular input types instead. You can actually style those using css, you really don’t need any images to do that.

Same with scrolling. All browsers on all devices since the early nineties can scroll a page, why would you want to write a script to emulate scrolling? This whole script is probably only there to be able to style the scrollbar and make it look the same in all browsers. The unfortunate side effect is that scrolling doesn’t work anymore on my touch devices. Now another complex script needs to be written in order to solve this issue, an issue that really shouldn’t exist in the first place. Really, nobody will complain if a scrollbar looks exactly the same as it does on every single page on the internet. But people will complain if they see something that resembles a scrollbar but doesn’t do anything.

The advice here is very simple: don’t try to fix things that work, you’ll break it.

I won’t complain about the silly loading bar you get to see for ten seconds before you get to see the actual data although I just cannot understand why it has to take that long. And I should complain about the incredible messy HTML, an unbelievable pile of inline style cruft, but I wouldn’t know where to start, this just looks like some sort of randomly generated vomit. I should definitely complain about the fact that I cannot use this site with my keyboard instead (or alongside with) my mouse but I already wasted enough time on this app. I surely should complain about the fact that the simple data the app provides is not accessible when JavaScript is turned of.

This app is actually so bad that I won’t link to it. (And i will never link to the crazy Web Framework that generated this dump and is responsible for some of these nice looking cruft machines that pop up all over the place. Please drink espresso, build grown up websites and leave the milk for the babies).