Sunday, February 26, 2012

Let's get into character

There's a classic line in Quentin Tarantino's "Pulp Fiction". Two hit men, Jules (Samuel L. Jackson) and Vincent (John Travolta), are on their way to a job where they could be dealing with as many as six guys.

Jules says to Vincent that they should “get into character,” indicating that they each play a part when they go on the job. The job of hit man is nothing more than a career choice and they don’t necessarily define themselves within those parameters.


That's great advice that every software developer and product manager should take note of. Put yourself in the position of the user and really role play the moment or the "day in the life". Better still - get out of the office and go on the road and sit with the user you think you are building software for. I say "think" because most people building software are kidding themselves that what they are building is good for the user. 
Think like a movie star. You really need to get inside of the head of the user. Only then will you start to realise that the user really doesn't want to use your application because it SUCKS! More to the point, the user is just a transient, using your software for a brief, fleeting moment to accomplish a task (e.g. make the hit) - and then they need to get out.

If the answer to any of the following is "yes" then you're in trouble.
  • the user interface is dictated by the data model 
  • you built the technology and are now looking for a use case
  • the user is expected to remember the process steps
  • the app has a lot of neat features that users "might" want
  • executive management changed the design to suit themselves
  • that's how the desktop version works
  • "well it was good enough in my day"
Put simply - if the application doesn't do anything for the user - it sucks. The user won't use it again, unless forced to - and that itself is becoming an outdated, unworkable model.

Enterprise software vendors beware. If you hadn't noticed - users are walking with their feet - choosing to use other applications and devices.
Put yourself in the shoes of the user and forget about your bias for one technical solution or another.  

Of course technology matters because if you use the wrong tech or approach the performance or scalability will suffer and again the user won't use the software. Technology should be the second consideration, after you have nailed the user experience.

So the next time you sit down with your development team to knock out a new application or update an existing one - put on the white shirt, black tie and black suit, put "Misirlou" on the stereo and "get into character".....