I wanted to clarify the point I tried to make in my blog post about Bobo and LinkedIn’s use of faceted search. I ended that post with a confusing question about faceted search framework in Lucene, and was quickly reminded by Bob Carpenter and others that Solr provides that capability. My comment was poorly made.
So my comments about a faceted search interface framework is informed by this frustration. I would like to have a high-level way to describe routine interface features without delving unnecessarily into procedural minutia, but still retain the user experience that we’ve come to expect from modern web applications. I would like to program by exception — starting with existing code and specifying what I want done differently, rather than recreating the same stuff over and over.
Do such tools exist? Can they be combined easily with existing programming languages such as Java? Do they really simplify the specification of routine interface behavior, or do they just replace one formalism with another? I found that Grails works this way on the server side, reducing the amount of code that needs to be written, while still making it possible to descend into java when appropriate. But when it comes to web user interface, I don’t think we’re there yet.