A Weblog entry posted on Tuesday, August 07 2007

Occasionally we get asked about our process of designing and developing a web application that is both innovative and simple to use while accomplishing the goals of the application. One of the main techniques we employ is to designate one person as the Ignoramus (typically a designer) and another person as the Investigator (typically a programmer). Let me explain:

The Ignoramus

When starting a new application, it’s easy to look at competitors and start comparing features and to say, “we need to do that in our application.” And in doing so, you’ve immediately stopped the innovation and simplicity that may be possible in starting from scratch. When you look at competitive products you immediately muddy up your mind with features that may or may not be necessary, with processes that may or may not be the simplest, and with interface layout decisions that may or may not be the best. The Ignoramus’ job is to be just that, ignorant. The Ignoramus needs to keep a clear and open mind. Instead of trying to solve an interface problem by comparing other similar apps, solve the problem by looking at only the problem itself. In doing so, there’s a greater chance that you’ll develop something better. While this may sound very demeaning, the more ignorant you are, the more capable you are in making an application that the common person is able to use. The more you know acts as layers of complexity that you’ve already learned that most people don’t know. When you compare, you copy. When you play ignorant, you innovate.

The Investigator

Now at some point, you have to make sure everything is accounted for and you don’t look past the big elephant in the room. This is the Investigator’s job. The Investigator must look at every competitor, every possible feature, and every “must” of an application so that some crucial piece isn’t left out. The Investigator must understand the technolgy and the purpose of the application. Without the Investigator, the Ignoramus isn’t free to explore ideas that might not have been thought of. The Investigator is usually a programmer as this person needs to be more technically minded and consider the data structure. Often this person has to decide what’s possible and essentially bring the Ignoramus down to earth. The Investigator is both exhaustive and realistic.

Finding a balance

As in everything, a balance has to be established. Sometimes the Ignoramus had to be the Investigator and visa versa. For instance, the Ignoramus has to have some kind of base knowledge of application design and the specific application being developed. There’s no way a person could know how to develop an application that accepts home loans if that person has no previous knowledge of mortgages, etc. There are also common practices that should be respected. Techniques can be gleamed from technologies such as email that the majority of people are familiar with. On the other hand, the Investigator has to know when to say no to feature creep and when something is just not needed. Just because a feature is in place on another application, doesn’t mean that it’s necessary in the one you’re building. Both the Ignoramus and Investigator roles are essential to developing an application that is both simple and innovative as well as accomplishing the essential goals of the application.

Leave a Reply

Comment on Web application developer roles: the Ignoramus and the Investigator

Basic HTML is allowed (a href, strong, em, blockquote).

Contact Us

Let’s talk! We can meet in person, over the phone, or just exchange emails to discuss more details about your project.

Get in touch

[Graphic: Book covers]Nate Klaiber’s Book Reviews

Check out Clear Function’s very own marketing director’s website (nateklaiber.com) for great book reviews on website design and development. Subjects range from HTML/CSS, Ruby on Rails, PHP, AJAX, Javascript, design principles and more.

Clear Function Newsletter

Clear Function Updates

Keep up-to-date on new product releases and news from Clear Function. to subscribe: