Technical pet peeve: no search services are better than weak search services
The one thing that's really been irking me in using the web lately is poor search utilities. And this is regardless of the platform the site was developed with. Nothing get me more steamed these days than browsing to a content-rich site, looking for an article, code snippet, or other content and getting bad and unhelpful search results.
On one such site today, I even copy-and-pasted the name of the article I was looking for into a textbox and searched for it to no avail - “Your search returned 0 results”. Yecch.
This is the direct result of metasearch services like Google, Dogpile and AllTheWeb.com others taking off - people expect more from individual sites. And they have every right to. Those of us not at that level likely can't provide similar functionality as those tools, but we could at least allow a user to search our own content effectively.
Think about it: search facilities are functionally the easiest things a web developer can build, but realistically one of the most challenging – if not the hardest - things to do right and maintain on a content-rich site.
My point is that having weak search services - and services in general, for that matter - is poor customer service and therefore detrimental to your image (assuming you're concerned about that sort of thing). And this is seen in major sites, from major companies, offering content that should be its nature be (1) indexed constantly (2) accessed by a powerful, flexible, intelligent search service. This is a no-brainer, but why people on today's intelligent web continue to provide hard-to-use and even worse, poorly-performing search facilities amazes me.
Having a simple SQL-based LIKE '%searchString%' statement doesn't cut the mustard these days. You'll arrive with incredibly inflated recordsets and ill-formed results. Steve Walther has what in my opinion is the best discussion on developing effective search tool in his classic “ASP.NET Unleashed“, showing how easy it us to use to use Full-Text Indexing, and SQL Server's FREETEXT and FREETEXTTABLE functions. I'm not sure why more people haven't gravitated toward this end, weighing the gains against the efforts.
And I'm only ragging on those who've continued to have weak search capabilities, because I was there myself once. I used to run the Search utility that shipped with FrontPage several years ago to manage my site's content, but that got really old, really fast. We now use a simple web form that outputs results off of Google, specific to our site, and we couple this with a database-driven Keyword Search utility based off of a web service we developed that works like those found on AOL or ESPN (we tease keywords to use throughout our broadcasts, so we have a bit more control over the ambiguity of our searches).
It used to be written constantly in online marketing journals that the key to winning on the web is having a search utility. I'd like to add a corollary - if you haven't got great search services, remove them altogether. Better to be lacking such a feature and have a decent alibi than be sorely inferior with a justifiable motive. Most people will use search engines anyway.