The Future Of Search Can Be Found In Dungeon

Earlier today, I made a comment asking, “Could it be that Zork* is the search of future,” then deleted it. Louis Gray ended up calling me out on the deletion, which was for no real purpose other than not wanting to fully explain myself. I might as well lay out my thoughts on what I meant, lest I forget it.

A problem with search currently, is that we’re being trained to speak to the engine, with a penalty to using regular phrases as your query strings. Various terms are stripped from the query strings, and you end up with items that aren’t relevant or hardly related, when you just haphazardly place your key terms in.  This is an issue that I find frustrating; I often end up banging around for hours on end trying to get proper query terms to bring me the results I’m looking for. Search is simply hit or miss, even for the new guys, such as Blekko and DuckDuckGo, trying to beat the incumbent which is Google. The new guys have better quality, but it does come at a cost of having special syntax, Blekko with the slash modifiers and DuckDuckGo with the bang modifiers.

Why don’t we have a search system that uses a more intricate text parser, to parse the queries. It’s obvious that we have the technology, just look at how amazing the parser for Zork and other text-based adventure games were. Why can’t we use grammar that we are used to, and let the software parse the elements out, where necessary? Simply put, I’ll trade off the ability for instantaneous results if you provide a simple text parser that makes it easier for me to input my queries in a more natural form.

Let me put in something like one of these:

  • “Louis Gray’s latest post about Friendfeed.”
  • “Most recent blog post from Louis Gray about Friendfeed.”
  • “Latest blog post on containing Friendfeed.”

All of those should return similar results, but they all share a common set of elements, that humans often have to convert into their queries if they want to get a valuable response. A decent Google query for this would look like, {site:”” Friendfeed}, but this requires that you also select an option outside of the query box, to narrow it to most recent. All of those queries I would like to use return very noisey results, even the modified query is noisy, and is more closely related to “containing” than about.

My question is why don’t we have a text parser, probably client-side, that helps us out in getting the content we want? If you look at my preferred queries they break down in to relative elements.

  • A source. Signified by ”s,’ ‘from,’ and ‘on’ in the relative examples. They all signify that your looking for something from Louis Gray, in some form.
  • A temporal modifier. Signified by “‘latest’ and ‘most recent,’ in the examples. Signifies that the period is a significant element of your query.
  • A  source modifier. Signified by the ‘post’ and ‘blog post, in the examples; easily could be Tweet, Status, Image, to search for.
  • A search method. Signified by ‘about,’ ‘containing,’ or ‘with.’ These signify how the elements that follow should be interpreted.
  • A set of query elements. In my example I only used Friendfeed, but it is what follows the search method signifier.
  • A system of set logic. Using ‘and,’ ‘or,’ or ‘commas,’ as a way to modify the way the sources and queries are handled.

Why aren’t we using this now? Sure, some of what I suggest is harder to manage, because it requires the ability to know who Louis Gray is, and what sources he has, but this only requires having a somewhat decent image of his set of profiles. Google happens to have just that, as do many other aggregating services, but Google has the power here, being a search provider. I don’t know if it will enhance the results we receiver from such services, but wouldn’t it be wonderful to talk to the system in a way that is at least halfway normal, and get decent results even without a solidly designed query.

Search providers please give us a half decent text parser, even if it’s only as advanced as that of the 70’s. Hell, it’s already common enough to see simply text parsers that pull hashtags, and @user strings, and converts them to links. Why not something that takes a more English approach to the query, and does the conversion for us to get the perfect query strings, that the system wants?

“What a (ahem!) strange idea!”


*= Zork’s original title after completion was Dungeon, but a trademark violation saw that it was changed back.