If you’re developing or deploying software, then it should have a purpose. Unless you’re doing cutting-edge research, then that purpose is probably not to provide a tech demo, nor to show off how many buzzword-laden features you can pack into it.
I’m often surprised at how readily people will forget this.
In late January, I ran across a question on LinkedIn which related to a website the asker had developed which was 100% AJAX-driven. The site itself looked nice enough, but it was a disaster technically. Unless JavaScript was enabled, it didn’t even display its front-page content, just a (non-functional) navigation bar.
With JavaScript on, the content did appear, but it turned out to be nothing more than a standard six-page site which could have been done statically with plain HTML pages and regular links to navigate among them without using JavaScript at all. The only thing lost would have been having the old page’s content fade out, then the new page fade in, when you navigate from one page to another.
Yes, the fade in/out is a nice effect. Yes, it looks cool. And, yes, AJAX is a very buzzwordy “Web 2.0″ technology. But it was used all wrong on this site. It added nothing to the functionality or usability of the site, at the cost of making it inaccessible to a substantial segment of potential users1. If you’re into SEO, this choice of technology also killed that by making the site essentially invisible to search engines.
I’m sure you’ve also seen sites which use Flash, SilverLight, or another “more interactive” technology in a way which does nothing beyond what traditional HTML can provide and makes no use of interactivity at all. Once again, such designs limit the ability of users to access the site and its content, shut out search engines from indexing the site, and add no actual value.
This is not to say that AJAX or Flash or SilverLight or whatever are intrinsically evil, or even suspect, but rather that you need to know what you’re trying to accomplish with your site or software and then choose appropriate technology - and an appropriate use of that technology - to support that goal. Just using technology for its own sake or because it’s the hottest thing at the moment will, in 99% of cases, do nothing to support the software’s purpose and is likely to detract from it.
What’s the most useless (mis-)use of technology you’ve seen lately?
1 w3schools.com estimates that 5% of users currently have JavaScript disabled, but most reports I’ve found from web server admins who have checked on it report 13-20% or more of their users have it off. Even if it is only 5%, though, do you really want to shut out one of every twenty potential visitors to your site?