This is going to sound like a rant, and it is a rant, because I'm sick of companies that want to make sure they have something distinct about their software, even at the expense of usability.

Remember that websites are software and are therefore subject to all of the same usability constraints that we all expect from normal client-side applications. Also remember that the primary goal of the Web is to deliver content to as many people as possible regardless of what technologies they are using to access it. So, no matter how creative you feel like being, you must ensure that your website's functionality is visible to users and easy to use, otherwise they won't be able to consume your content (at least not without becoming frustrated).

With the background out of the way, I'd like to talk specifically about hyperlinks today. Hyperlinks are the basic, fundamental building block of the Web. Without them, you would never be able to find other pages; you'd have to know where you're going in advance and would have to type in an entire address every time you want to look at something online. This is obvious.

Hyperlinks are also content: they appear inside the normal content of a webpage and, if organized correctly, read as part of a normal sentence. This is also obvious.

The one last obvious facet of the nature of hyperlinks that I shouldn't have to mention is that when a user clicks one, it takes him away from the content that he was looking at. If it's an external hyperlink, that means the user will no longer be looking at your site, reducing your ad revenue (if you have it). If it's an internal hyperlink, the user won't be looking at the original page.

In either case, if the user accidentally follows a hyperlink, he'll be taken to something he didn't intend to see. This makes the user feel like he's not in control and, as we all know, users who don't feel in control are unhappy users. Unhappy users attribute their unhappiness to your website and so your site has incurred a negative reputation because of a simple accident.

This should all be fundamental human-computer interaction stuff. Nothing here should be surprising. Whenever software is designed, everyone knows that this stuff has to be right. But when that software is a webpage, for some reason designers just plain forget about it.

Today I was reading an article by Joel Spolsky regarding micromanagement. The content of the article is unimportant. The design of Inc's content hyperlinks is what I want to draw your attention to: they're visually indistinct from the surrounding content.

The user can't see them by glancing at the page, so there's functionality on this page that is completely invisible to the user. The user is not going to know there are links there at all unless he happens to move his mouse on top of one.

They become underlined when the user moves the cursor over them. Fair enough. But not all input devices have cursors. Consider a touch-screen laptop or desktop, or an interactive whiteboard or even an iPhone; for all of these technologies, there is no "hover": only a click. When a finger or touch-sensitive pen hits the screen (to, say, bring a browser window into focus), a click is registered and, if the user happened to aim at a hyperlink, he is unexpectedly taken to its destination. Now he's unhappy and will attribute his unhappiness to Inc.

I suppose Inc has designed their software this way in order to make the content appear unbroken, but what they've done is forgot about the fact web software is independent of the technology used to display it and made a layout that works only with mouse-based technology.

When I designed my layout I made sure that links were distinct from the content and consistent in appearance because I keep in mind the fundamental lessons of human-computer interaction. There is no excuse for forgetting these lessons and acquiring a negative reputation because of it.

Google has done something similar with its main page: when you load the page, assuming you have Javascript enabled, only the main search box and Google's logo are visible. All of the other links, features and messages are missing. They appear when you move your mouse somewhere in the browser's content area; but many if not most of Google's userbase is accustomed to typing a query and pressing enter without ever moving the mouse at all. Even more importantly, without any visible links on the page, why would a user even think to move the mouse to activate them?

When functions of software are invisible, people don't use them because they don't even know they exist! People who have been using Google for years are suddenly confused by Google's now-hidden functions.

It's simply amazing to me that with the application of a few, simple rules of user interface design, all of these situations could have been avoided. Don't forget the basics: no matter how creative you want to be, you're still designing for humans.