Tag: searching

Search interfaces

Ugh. I just did a search on streetmap.co.uk for a latitude and longitude reference and it didn’t recognise it. I spotted the radio button to tell it what kind of search I’m doing and clicked again. Still no luck. Removing the comma between the two numbers got me what I wanted.

It is not difficult to detect when someone is searching for a latitude and longitude. It is a pair of floating point numbers with 13 decimal places. Who lives on a street named with 13 decimal places? How many businesses are named with just numbers such that I would require 13 decimal places to tell them apart?

And then, after the user goes out of their way to tell your software what to expect, why not accept a few variations of the input (though one lousy comma would hardly count as a variation to me).

I’d be better off with a pencil sketch map and a divining rod. No wonder these services are losing all their business to services like Google maps.

News Sniffer, Ferret and Rails

I’ve been working on my News Sniffer project for the last few days, finishing up a two month experiment with using the Ruby Lucene implementation, Ferret, to index news articles and comments.  More info on the News Sniffer blog.  The project spanned two months due to some instability in the newer versions of Ferret, but the author responded to the bug reports and managed to fix all the problems so I decided to deploy.

Ferret offers huge improvements over the original MySQL full-text search method, and I’m looking forward to adding some fancy keyword statistics graphs in the future – perhaps showing censorship patterns in bbc comments with certain keywords.

Because News Sniffer is distributed across a number of servers, I used DRb (distributed Ruby) to allow them all to update one central Ferret index.  DRb seems to work very well generally, and is amazingly simple to use, but I ran into a few problems with recycled objects and invalid references whilst using Ferret across it, apparently due to the garbage collector on the service side collecting things still in use on the client side.  I think I eliminated most of them but they still crop up once in a while – I’ll be looking into this further.

(more…)