The good news is that while users vary widely in the ways they search, their behaviors follow a limited number of identifiable patterns. By examining the factors that cause variability in user behavior and considering personas that illustrate those variations, we can identify common search behavior patterns and the interface affordances that support them.
This book outlines the human side of the information seeking process, and focuses on the aspects of this process that can best be supported by the user interface. It describes the methods behind user interface design generally, and search interface design in particular, with an emphasis on how best to evaluate search interfaces. It discusses research results and current practices surrounding user interfaces for query specification, display of retrieval results, grouping retrieval results, navigation of information collections, query reformulation, search personalization, and the broader tasks of sensemaking and text analysis. Much of the discussion pertains to Web search engines, but the book also covers the special considerations surrounding search of other information collections.
"The Faceted Search module provides a search API and a search interface for allowing users to browse content in such a way that they can rapidly get acquainted with the scope and nature of the content, and never feel lost in the data. More than a search interface, this is an information navigation and discovery tool."
Peter Morville is "working on a new book (and talk) about the future of search, and I've created a seed collection of patterns and examples to support my research."
Peter Morville's collection of screenshots illustrating examples of search patterns around the web. "A sandbox for collecting search examples, patterns, and anti-patterns."
y'know, this might just give some Lucene-based apps a run for their money. Storage plus indexing; easy to use; Solr-like REST/HTTP interface. Plus, Damien Katz is a heck of a programmer.
"Montezuma is a Common Lisp port of Ferret. Ferret is a Ruby port of Lucene. Lucene is sort of Doug Cutting's Java version of Text Database (TDB), which he and Jan Pedersen developed at Xerox PARC, and which, to complete the circle, was written in Common Lisp."