If there is one thing that defines successful software or web based
businesses, it is being useful in day to day life and work.
By that, I mean that it is something we genuinely use in our day to day
life and that it adds value.
For example, in the 90’s and the early 2000’s a lot of people bought
digital personal organisers and put their contact details in it. As one friend
summed up the experience, “I spent 3 weeks inputting the thousands of contacts
I have made over the last two decades, then I went and lost the darned thing
while on holidays. Never again.”
It is only now that we are starting to see a genuine automatically
updated, cloud based, multi-device accessible contact list. I.e. it is so
intuitive to use that you don’t think about it, you just use it.
If your business model relies on capturing data then the asking price
is that you give them a tool or application that they will find useful and use
often. Facebook and LinkedIn do offer functionality we appreciate and use and
are good examples of customers giving up privacy in return for function.
We are all enticed by the all singing all dancing solution that answers
everybody’s problems all the time. The only problem with that is that all your
users will need training and a good administrator to keep you all in line. This is the opposite of the recognised concept
of usability (http://en.wikipedia.org/wiki/Usability).
If I put my investor hat on I am more likely to back someone who has a
single pain to take care of, and packages it up
to be useful to the maximum number of users in their daily lives. That
simpler business model is also more likely to generate new sales, as well as be
bought out in the future.
And yes, I firmly lump a lot of attempts at Enterprise solutions (ERP)
such as SAP and companies of that ilk in the class of trying to be all things
to all people.
Knowledge management systems that add an extra 60 seconds to every
email sent or document saved firmly sit in this category too – potentially
invaluable but end up destroying productivity.
Your biggest nightmare as a developer is people who tell you that your
product would be very useful to them then they only use it for a couple of days
while still on the 30 day free trial.
Think of your own experience with Apps on your smartphone. First, there
is the love affair “I have to get that”. Then you try using it, “wow, that’s
amazing, I wish I had that before.”
Then you realise it doesn’t export to anywhere else, and that it’s
going to add minutes to your day that you could use elsewhere, and then you
never use it again.
Ways to make it useful:
- Do one or two things and do them well.
- The layout is intuitive
- The workflow processes are intuitive
- Provide a couple of workflow processes – for the novice and the experienced user
- Make it all about them, and easy access to what they need, including account details, invoices, etc.
- Keep it as simple as practicable. This is the hard part.
- Make it accessible as readily as possible – works on multiple browsers and different devices.
- Make it easy to undo mistakes such as deletions or accidental purchases. We all press buttons out of frustration at the lag time of screen updates and can accidentally do the opposite of what we intended. (Amazon finally put this on book purchases so I stopped accidentally buying second copies of books I already had).
- Consider providing an offline version – US developers should especially consider this as they often don’t realise how slow and patchy services can be elsewhere, and pretty much only the US has unlimited data plans.
- Consider interaction with other systems and software, whether through export/import, API’s, XML, industry standards or whatever.
Google Apps in my opinion would rank amongst the best for usability,
but I don’t yet use much of their software (apps). I.e. I don’t find it very
useful as a total package.
Likewise, Replicon, the online timesheet tool many of us now use, is
great for entering hours worked, but provides an abysmal experience for
administration and reports which have way too many options which are poorly
documented and are a complete pain for even experienced users.
Ask lots of people what they want, and boil it down to what they really
need and how it could replace or integrate with what they already do. Above
all, make it useful.