Skip to main content

Google = Usabilty, Medical Software != Usability

·621 words·3 mins

Google Suggest is a new implementation of google that takes the search screen to the next logical step. 

When Dave and I built the “mini-EMR”  for our practice three years ago - the search screen worked like this too.  Gmail works like this .. and it’s silly that all search fields don’t.  If google can do this with the whole Internet - there i sno reason that someone can’t do it with their database.

That am I talkin about?  Autocomplete/autoselect.

Follow the link above and you’ll see what I mean.  Type the 1st few letters of what you’re looking for .. and you get feedback about what’s available. This makes your data entry task easier.

Now contrast that with the traditional seach screen.  Programmers

  • stuck in the 1980’s .. when there was 128k of RAM on the client … create a search process like this: 

Type in what you are looking for

Click “submit” or “search”

Wait

Wait more

Now see a screen that lists theresults.  If you searched for “Smith” in the phone book - you have too much info so you have to do it all over again.  If you searched for “Smitj” because you can’t type very well, you get nothing and you have to do it again. 

“Oh stop whining … this doesn’t add minutes to the process .. only seconds”  you say

But if I do this 50 times a day … it may add minutes .. and if I do it 200 times a day … it adds many many minutes.

What’s better? 

To implement what Google’s done, you can apply one of two strategies:

a) maintain a connection to the database/server.  On every keypress .. send the data back to the server .. and get back the results .. showing the top handful of results.  As the user keeps typing, the number of entries that meet the search critereia gets smaller .. and the item they are searching for is found.  No “back-and-forth” to the server for the user.  This is not very hard to do anymore - and there are methods for doing this with javascript, Flash, Coldfusion, PHP and I am sure many other web technologies.  It’s also rather straightforward to do this in the Palm OS (epocrates does it) and in .Net.  Alas .. I don’t know much about Mac proceamming anymore .. but I’d bet that this is supported there too.   Users should demand this sort of functionality in search screens. for all of their applications.

b) The other way to accomplish this is without a background connection to the database.  Instead of checking in with every keypress, load the database into the application or into the browser when the application (or browser window) opens.  Sure – this won’t work for big big databases, but it works better than you would expect for databases of fairly significant size.  In our Mini-EMR at the office, we have 5800 patients.  All 5800 firstnames, lastnames, ages and id numbers are loaded into the browser when the user logs in.  Searching for a patient takes only a few keypresses.  To Search for Bob Jones, I would type “Jo Bo” and I’d probably see him as one of my two or three results (along with Josie Boomerang, etc) .. and it all takes me less than a second.    If a pair of Geeks like me and Dave can figure this out .. so can the programmers at GE (Medicalogic), PMSI( Practice Partner), A4 (A4 EMR) and Misys (Misys EMR) .. and an array of others .. c’mon folks .. please help your users search for patients, medications, diagnoses, allergies and procedures much faster! .. You’ll make our lives better .. and will imporve patient care.