I had a discussion the other day in a room full of programmers and system administrators where the conversation migrated to how usable a tool should be, in this case software, if it were a complex system. The argument from some in the room was that, “hey, it’s a complex system, it will be complex to the user”, to which my response was, “Really?”

Several examples came up of how very complex systems – be it a software application, a car, the human body – appear to be fairly easy to use by the user. A driver of a car does not need to be an automotive engineer, a baker does not need to be a mechanic to fix his mixer, nor do we all need to understand how a software application is built to make it work for what we need it to do. A user needs to understand what the tool offers and what they can achieve from using it. If one doesn’t understand the possibilities of how to use Photoshop or Illustrator, for example, then they will not understand the benefit of the tool. What a user doesn’t need to understand is how to get Photoshop setup on their Mac – set up should be simple and make logical sense, in layman’s terms. If every time we had to go into the shell account of our computer to install a software application, the industry of the web and software world would not be what it is today.

As web design, development and software programming professionals, we owe it to our users to make what we build as intuitive to the user as possible. If not, we’ve lost our user, a client, and the point. The most successful and appreciated products and software applications on the market are simple in the hands of the user.