How should search work?
Edit: Metahint is not active any more :(
As web matures, conventions emerge. We generally accept that we can find a main navigation set of links up the top of a page. Generally, a logo click should return one to the home page and since using Google, we more or less expect that when we type text into a “search” field, we’ll find what we’re looking for if it’s there.
So.. if we’re not Google, how should search work? What result do you expect from a search input? And now that live search is becoming much more mainstream, how should we expect that to behave?
The reason I ask is because this is what us designers/developers/UX people should care about - what the user expects to happen. If we are to get value from a convention (something that is widely understood to work a certain way) then we need to make sure it’s the correct [expected] implementation.
I’ve just started trialling a cool new search tool for blogs/sites/etc called Metahint - you can test it out to search my blog. But one thing I’ve noticed is that it doesn’t seem to behave the way I expect. I think this is important because if you want something that is useful and usable, then users need to be able to figure out how to use it pretty well instantly.
I think basic search, whether “live” or not should include these three primary functions:
- Sub-string matching - None of this “beginning of word” business. I need to be able to start typing part of a persons name for example, starting at the front, back or middle (in the event I don’t know how to spell it properly) and get a match.
- Multi-word matching - Just like Google infers a logical-and (not logical-or) when a space ” ” is inserted between words. This is expected now, so all search should do it.
- Relevance - or at least some form of it. Now I won’t try to define explicitly what this means but it’s pretty clear we need ordered results in some form. Whether it’s frequency of occurrence; weighting based on order of search input; or more slick Google’ly chops - I don’t want 10 results back and the one I need at the bottom of the list.
Tell me what you think. How do you expect search to work? What are great examples of simple, yet well implemented search features?