I recently saw a tweet along these lines (I’m paraphrasing to protect the guilty):
Looking for a designer to spray some eye candy on our web app
Ouch. This says to me that somebody has built an app without understanding the purpose and value of interaction design. You can’t really improve your user experience by bolting on prettier icons as the last step. Good interaction design requires you to really sweat the details, and preferably from the outset. The beauty of a great application isn’t just a matter of form; it arises from function.
I agree there is value in polish: a more professional interface raises user expectations about robustness. Cynically, people are more likely to blame themselves if they hit a bug on a polished interface; if the software looks Heath Robinsonish otoh, they’re waiting for it to fail. But polish without real attention to the interaction details is a flimsy trick, a petard to hoist yourself with.
Traditionally, of course, developers got away with a lot of crap when “designing” their user interfaces. But that crap won’t wash so well any more, because too many users have seen better, and understand that they’re being shortchanged. Can you still build successful apps without good UX? Yes, sure. Maybe if you’re inventing a new market, or if you’re not really selling the app but the services around it, but most of all if the buyers are not the users.
Unfortunately, that’s very commonly the case in WCM, except at the bottom end of the market—which is why low end products (eg. Squarespace) often have better usability than high end ones (eg. Oracle). Things have been improving over the last couple of years admittedly, but you still see a lot of sloppy, ill-thought out design. Too much excise, technical jargon (“nodes”!), inconsistent gestures, etc.
I start every project by thinking about the interaction design, and slowly work around to the implementation model. Not so much “test driven development” as “design driven development”. Sometimes that makes things much harder for the developers; but hey, developers are smart people and they like hard problems. If they don’t; well, you need to find better developers.