Built with 
HomeBrave Tech WorldAbout SiteMarcelo Calbucci

Brave Tech World

Week 47
SMTWTFS
24252627282930

November 27, 2007


TUE
27
NOV
2007

Redfin Dilemma: Is it a database or a search engine?

By Marcelo Calbucci

 

    Last week Redfin asked how they should display their Search OptionsOpen in a new window, offering a $250 prize for the winner proposal. This week, they showed some of the proposalsOpen in a new window and ask what their users are looking for.

 

    When I saw the first proposal last week I immediately thought the answer didn’t matter much because the question was fundamentally wrong. And it all boils down to be a Database-driven service or a Search Engine service?

 

    First of, let’s be clear there are 100 engineers that understand how to develop database apps very well to each developer that understands search engines. So, when you build a vertical search engine (like Redfin), it’s more likely that you find a typical developer that knows how to store and retrieve large amounts of data from a database.

 

    If you look from a 10,000-feet view, a database and a search engine are one of a kind. Both contain data that will be queried and return results. As you get closer to the ground, you start to see the differences and soon you realize the way they work and what they offer to the end user is significantly different.

 

    A database has your typical rows and columns, it has a sort order, it has filters – which Redfin is calling “search options” – and you pretty much get a deterministic response in a specific sort order (Price? Square feet? Distance?). That is typical. That is what most “vertical search engines” do – by the way, they should be called “vertical databases”. – Go to any Real Estate site that offers a search service and the way they work is pretty much the same.

 

    What they lack is personality, which search engines have. Most Developers (or Program Managers) believe other people think in deterministic terms. Why? Because they ask people what they want and they give a very specific response: A 3-bedroom house, with 2.5 baths in Redmond with a 2 car garage with a price between $600K and $700K. That is pretty specific. That is what the customer said she wants, so we must enable this person to find it, right? Coincidentally, that fits very well with a database driven app. Here is the ‘WHERE’ clause, here is the ‘ORDER BY’, here is the ‘FROM’. Bang! I have a “vertical search engine”.

 

    The fact is that people don’t know what they want. When they say it *must* have 3-bedrooms, they might be flexible into a 2 or 4-bedroom, maybe there is a bonus room that would work out great as the 3rd bedroom. Maybe they requested 3 bedrooms because they thought it would be on their price range. The fundamental problem I am trying to tell is that giving users filter options (or “search options”) is the wrong way.

 

    The solution is to allow users to define their rank formula. This is very different from filtering because you are not eliminating any result; you are just moving the best ones to the top and the less interesting ones to the bottom. How do you present that to the user is the secret sauce. I don’t have an answer for that but I could think of a few ways. Ideally, you let users enter a location and click search and the results will display *all* the houses near that location ranked by the most common criteria (this would be a auto-learning ranking system). Then, you give them knobs to control what was called the “search options”, finally, for the more hands on users you let them order how important each of those options are for them. For example, the number of bedrooms is more important than the square footage of the lot which is more important than the year it was built. I can see the UI in my head and is not that daunting.

 

    In 2005-2006 MSN Search had a neat option to allow you to tweak its ranking formula, by moving some sliders like “fresh content vs. old content”. It got a lot of buzz at the time because it let you play with search results in a way that was not possible before, except if you worked on a Search Engine.

 

    Now Glenn, you don’t have to pay me $250 or anything but lunch and I’ll gladly spill out more details to you. You’ll probably save $235.

10:53 AM | Permalink | 3 comments


Comments (3) for "Redfin Dilemma: Is it a data...
Unknown
Hi Marcelo,

I completely agree.

If we look to the search we have at Redfin today it is very much like a match.com search (a glorified database search.)

I think in the future once we've evolved other features of our site we'll look at more of an eharmony.com search approach. I see that approach applied to real estate as the kind of search where the site figures out what you can afford, what kind of lifestyle you're looking for, what features interest you, which don't and then guides you, much like a traditional agent, to the listings that would interest you.

Matt
By Mat GoyerOpen in a new window - 11/27/2007 3:29 AM
Unknown
Well said, Marcelo. If Glenn wants to raise his cost to $30, I'll be happy to join in.

To go a bit further, a rank formula is a bit geeky. What you really want is for users to describe their needs and the system creates a rank formula for them behind the scenes. For example, when we bought the house we currently own, our requirements included:

3 bedrooms (yes, I mean bedrooms -- we have two kids and we wanted each to have their own bedrooms)
1 or more office rooms
1 play room for kids
1 "media" room
1 guest room
garage space for 2 cars
yard for kids to play in

The actual house we bought was listed as a 3-bedroom house. But two additional rooms meet the legal requirement for being a bedroom (size, egress, and ceiling height; some states also require a closet and these rooms have one). We probably saved money because the sellers didn't list it as a 5-bedroom. One of those extra bedrooms is our office. Another is a combination tv room/media room/rec room/guest room. Notice our requirements didn't include a living room. We got one anyway, along with a "family room" which was a play room when the kids were little and is now a gym.

Fortunately, we used a very high-quality search engine -- a realtor. She took our very human requirements and used them to sort and rank potential houses. If you can come even close to what a human realtor can do, then you'll have something.
By Roy Leban - 11/28/2007 4:21 PM
Unknown
Yeah, i hear you. You have to start with broad range of search results, and then allow users to narrow them down using knobs (filters, search options). I looked at several sites and I think amazon.com has done a good job.
By Saqib RasoolOpen in a new window - 12/13/2007 7:23 AM
Similar Content
Powered by Google