This section describes the philosophy behind coming up with such a
scheme. Common users need not know. Only people interested in seeing the
code will be able to see it.
MultiSearch: Searching Multiple Search Engines
Looking at some of the websites which allows you to search
multiple websites, I realized there are three basic problems with
them:
Scalability
This is a problem because most of them are server side
scripts. There is no way any of these sites can match up the
capability of computing power that Google/Yahoo/A9/Microsoft
has. Essentially, if the concept of searching multiple sites
pick up, there is no way the serving power of these servers
could pick up. On top of that, what is the point of getting your
search result delivered through a third party. Essentially, you
are ALWAYS increasing your distance (in terms of traffic path)
from any of the search servers that you are using. With
increased usage, the problem is going to get worse.
Privacy
Since your search queries are going through this third party
server, he is going to know the following things:
- Your IP address.
- What browser, and what kinds of extensions you are
using.
- What things you are searching for
- More...
The other thing is, since you do not send the cookie specific to
Google/Yahoo/someone else to these guys, you are not going to
get a personalized result (i.e. SafeSearch on/off) in your
search.
Extendability
Since you don't know what goes on on the server side, there
is no way you can add a new search engine of your liking that is
not supported. This is probably okay if it supports the major
ones, but may not be okay if you want to add your own special
ones (like binary newsgroup search).
All these problems can be solved if we have a client side script
which can pick up the search items, and sends the requests
directly to the search engines, and then display the results,
without actually never contacting the actual multi-search
server. Moreover, since the script is visible to you, with a
little knowledge of that specific scripting language (JavaScript
in this case), you can extend it to add your own search engines.
You can even just download the script and open it locally,
without having the need of connecting to the multi-search server
EVER (until a new set of scripts are released and you need
them).
Extendability can also be achieved if the code is written in a
moduler fashion. For example, here, you can add a new search
engine by exporting a couple of trivial functions for that
engine only. This will make life a lot smoother, and people can
actually contribute in adding new search engines, without being
at the mercy of the script writer.
If you like the idea, please drop me a line.
Visitor count: