Several parties have made claims about how search works in IE7. I think those claims are awfully confusing, especially for anyone who has used the product. In this post, I want to describe our overall approach to how search works in IE7 and some of the thinking behind the current behavior.
For readers who only skim and don’t want the details, here is how IE7 behaves:
That’s the top level. I want to provide more detail into our approach overall and how we came to the decisions outlined above. Ultimately, our key principle is that the end user must ultimately be in control of his or her machine. Period.
For example, adding, removing, or changing the default search provider is super easy. The end user can add a search provider to the search box from any web page that offers an OpenSearch link with just two clicks. (Why not fewer? We wanted to protect users from annoying websites that would try to add themselves to the list without user consent. This is similar to the ways in which web sites have tried to trick users into making their web site the default home page.) Removing a search provider or changing the default search provider takes four clicks (not counting scrolling the list if you have more than nine search providers).
Web sites that want the user to add them to the IE’s search provider list will have an easy time because IE supports an open standard pioneered by Amazon’s A9 group (rather than something proprietary). Using OpenSearch, any web page can make it easy for an end user to add any search provider to the search dropdown safely – without making the user run a program or installer. (Note to reporters: a search provider in the search box is just in a list, not somehow "embedded" in IE.)
Initially, we considered listing several search providers in IE7’s search box by default. The challenge of populating that list while respecting the user’s control of her machine grew so complicated so quickly that we abandoned the idea. For example, the leading search providers are different across the different locales of the world; which locales should we combine and how should we draw the line of inclusion? Top 5 providers? Top 10? At least 5% usage? As measured by whom? Should we allow an "adult content" engine on the list if it has high usage? Should we sort alphabetically? By usage? Should IE7’s installation behavior be different from one month to the next as search engine popularity changes? One quarter to the next? Would a user have any predictive power about how this mechanism worked? Do the items in this list have anything at all to do with how the user actually uses the web? If I never used a particular provider before, why should I see it on my list? Should OEMs (like Dell or Sony) have any say at all on this setting? We had many, many hours of meetings with many industry partners to hear their feedback.
Clearly, we had to include at least one search provider in the list for this feature to be useful. We considered asking the user. We rejected that solution for a few reasons.
First, populating a list for the user to choose from is just as complicated as populating the search dropdown. (All the issues I describe above apply... is the list alphabetical or by usage or by category, etc.)
Second, we wanted to minimize the number of questions and clicks (especially after setting up a new machine or installing IE7) a user has to go through before actually getting something done.
We thought the best way for IE7 to do what the user wants is to honor the user’s autosearch setting from IE6. This setting is well-documented and has been in use for many years. It is a good indicator of user intent. While some sources claim that this setting favors MSN, the data we saw from independent research companies like comScore indicates that almost three-quarters of the autosearch queries went to search providers like AOL, Google, and Yahoo, not MSN. Independently, representatives of Yahoo! suggested using the user’s IE6 autosearch setting. Additionally, I’ve seen a lot of pleasant surprise from users in comments on the IEBlog, Digg, and even Slashdot that the search box in IE7 actually reflects their individual search provider of choice, further validating this decision. (We do have a bug that in some scenarios MSN Search remains on the list even if MSN was not the default provider. I want to confirm that that is a bug and we will fix it for Beta 2.)
I want to point that along the way, the feedback that we received from one partner often contradicted feedback that we received from another. The guiding principle we returned to was keeping the user in control.
As part of the Beta 2 Preview for developers and tech influentials, we put up a page of samples (available from the menu for IE’s search box) with the goal of offering useful examples of OpenSearch links until more sites implement them. Aaron recently posted about the mechanics of authoring OpenSearch files to make adding search providers to IE7’s search box easy for end users. If you’ve already authored OpenSearch links on your site, please leave a comment with a link to it so that the community can check it out.