Home - Writings - Pictures - Code - Resume - Links





Using google Efficiently

Youssef M. Assad


Contents

Purpose of this document

This document was written mainly at the impetus of recurring queries I was seeing in the Egyptian LUG, and which could mostly be solved by searching the web properly.

I asked myself why people were willing to ask a simple question, and then wait maybe several days for an answer in our on-line forum instead of getting an answer in 30 seconds with google, and I assume it is a question of proficiency with google, so here's a quick and dirty tutorial.

The scope of this document is limited; I do not intend to go into details of the advanced search page.

I'm at Youssef_assad@myrealbox.com and I'll be happy to accept corrections and improvements to this document. Feel free to redistribute it.

What google knows about

Google is a search engine located at http://www.google.com.Google uses a unique concept in searching; we're not going to go into details here. All you need to know is that the google technique is far superior to any of the other search engines, so you really should be using it.

From the point of view of a Linux user, how is google useful then? Whenever you face a problem, or task related to Linux and you're stuck, it's useful to remember that in 99.999% of cases you're not the first person in the world to have faced this specific situation. Someone else has already tried doing what you are trying to do, and has played around, figured out how to go about it, and found a solution.

Good, so your problem is solvable. What next?

what tends to happen when people have Linux problems is, they post discussions or descriptions of the problem on-line, usually along with the eventual solution. This happens in on-line tutorials, in HOWTOs, in other on-line forums, etc.

So, unless you're really unlucky, your solution is out there waiting for you to find it. Problem is, how exactly are you going to find it? There must be billions of Linux-related sites and pages. So, you point your browser at google, and, in the search box, you type:

Linux problem

...and you get approximately a schmazillion results back. Good, we're getting somewhere; instead of having to look through 14 schmazillion web pages looking for an answer, you only have to wade through 1 schmazillion.

Erm.

OK. So. What if you're the lazy kind of person who thinks of looking at 1 schmazillion web pages as a waste of time? Well, now is the time for us to learn how to get google to look at them for you quickly, and fish out your answer.

How to ask google politely

The French Revolution used UNIX

Let's say, you're looking for a page that discusses the role of Linux in the French revolution. If you simply type

Linux

...into google, you get around 58,500,000 hits1. That's no good. What's the trick, then?

Every word you type into the google search box becomes a filter. When google sees the word Linux in the search box, it will select only the pages talking about Linux. Any other page will be trashed. So, let's try something different:

Linux mandrake

There. 20,000,000 results. Better. Still not perfect, of course, because people could be talking about Linux mandrake in many different contexts, but still; better. Google goes through its database, basically, looking at the pages it has indexed and filtering out any pages that don't talk about Linux AND mandrake.

OK, so what about this, then:

Linux mandrake Robespierre

Good, good: 1,244 results. Now, this is a much more manageable number. Actually, 1.244 is still a large number of pages to look through, but who said you had to look through all of them? I certainly didn't.

Have a quick look at the top 10 links returned by google for your search, i.e. the first page of results. Are they all pretty much on the topic? Should be. What if they aren't? Well, then you'll need to refine your search.

Linux mandrake Robespierre guillotine

140 results. And let me tell you, this is as good as it gets, at least with these limited - but functional - new search skills we have.

Let's have a more reasonable example.

Installing emacs

I'm afraid google can't help you here; it doesn't index emacs-related material, which is perfectly understandable, and tasteful too. Switch ti vi and proceed to the next subsection please.

Getting your USB webcam driver to compile

Now, this is a better example - it's not real of course, because I don't have a USB webcam and I don't want one. But it is an example nevertheless.

So, you got your ``UltraFlacki 4500Ui CheapeShite'' webcam, and you want it working with your favorite operating system, Linux. You plug it in, and sit back and wait. Oh silly you, there's drivers to be installed first. Right.

So, you find the website, download a .tar.gz with the source-only drivers, untar it, and read the README which comes in it. Good, should be a simple

./configure
make
make install

So, you do that, and Linux gives you a screen full of errors. What now? Well, we're going to need to ask google to find a page on the web where someone had the same problem, and fixed it. Let's try this:

help webcam

Err, oops. 42 million results. I think we forgot a few somethings:

help webcam Linux

Ah, yes. 39 million quotes. This is getting better. But hey, you have a tool you're not using; you know specifically what kind of webcam you have. Let's narrow things down a bit for google:

webcam UltraFlacki 4500Ui CheapeShite Linux help

Aha! 1 million hits only! Progress! Erm.

OK.

You're lazy, an 1 million pages is too many. Well, OK - how about we tell google what the problem is with the compile? Let's take a line from the error output:

webcam UltraFlacki 4500Ui CheapeShite Linux "Cannot find module filter_out_nudity.o"

Ooo, what's that with the quotes? Well, without the quotes, google would filter based on 'Cannot', 'find', 'module', and 'filter_out_nudity.o' separately. This would theoretically work, but it is not the best method.

What happens then with the quotes? Well, google regards Cannot find module filter_out_nudity.o as one phrase which is not to be broken up when we surround it with quotes. So,

Without quotes
will match all occurrences; a page with the following text: ``...I Cannot understand why people don't find themselves a webcam and stop using Linux; Maybe an UltraFlacki from CheapeShite. Oh yea, my ICQ handle is 4500 Ui, if you want to know. So anyway, back to why I recommend filteroutnudity.o with lynx ...'' which is not what we want.
With quotes
Google will only find you pages with that exact phrase. Very much what we are interested in, actually.

Summary

Basically, the idea when deciding what to ask google about is to try to visualize the web-page you are looking for, and then to describe it to google. How you visualize it will depend on what you're looking for. You can visualize a page, for example, that talks about which window manager is better2, which might contain words like:

-
window-manager
-
comparison
-
better
-
worse
-
Linux
-
winner
-
...

You can use this technique to search for anything, really. Search for your own name; search for your wife's name. Search for your worst enemy's name, or search for the street address of a spammer. The possibilities are actually endless.

A couple of points to always remember:

  1. Try to visualize the web-page you're looking for, and describe it to google
  2. Always use what makes your search/problem unique
  3. Keep narrowing down results by giving google more information until the first page looks pretty much like what you're looking for.

Advanced stuff

Exclusion Searches

Pop this into google and tell me what you get:

Linux apache

We know by now what we'll get; all the pages google knows about which refer to our search terms, Linux and apache. But, but. What about this?

-Linux apache

A lot fewer results, huh? See the difference? The small minus sign stuck on the beginning of the word Linux? What does that do?

Attaching a minus sign to any search term will exclude it. In other words, it will tell google that the page(s) you are looking for will not contain the word Linux. Fascinating! So that last search will give us results with pages talking about apache, pages which do not talk about Linux.

The Advanced Search page

On the main page on google, there's a link marked ``Advanced Search''. Click on this. In here, briefly, you can:

  1. filter by language of the web page you're looking for
  2. Filter by file format; looking for a .pdf? A Microsoft Word document? A Powerpoint presentation?
  3. Filter by last time updated; use this, for example, to restrict searches to pages which have been updated in the last 3 or 6 months. Use this when you expect there will be a lot of stale/old links, and you need the latest.
  4. The Occurrences field specifies where you want your search terms to appear; do you think your search terms would only appear in the page title, for example?
  5. The Domain box is interesting; if we search, for example, for Motorola modem, and type in the Domain box www.linux-egypt.org, then we will only get the results talking about Motorola modems, where the pages are from the www.linux-egypt.org website. This is a most excellent feature.

Summary

Google is a powerful tool, and until you learn to use it effectively you will not be a self-reliant Linux user. You don't have to use Linux to find google useful, of course, but you do have to be good with google to be good with Linux.3

When someone tells you STFW in response to a question you asked, don't take it personally. In fact, this is not rude at all; the proper thing to do, when given a STFW answer, is to really do so; search the web. Whoever gave you this answer knows that your question can be easily answered by searching, therefore you should not take up his/her time as well as your own. By searching the web before asking, you are following a long free software tech support tradition.

About this document ...

Using google Efficiently

This document was generated using the LaTeX2HTML translator Version 2K.1beta (1.48)

Copyright © 1993, 1994, 1995, 1996, Nikos Drakos, Computer Based Learning Unit, University of Leeds.
Copyright © 1997, 1998, 1999, Ross Moore, Mathematics Department, Macquarie University, Sydney.

The command line arguments were:
latex2html -split 0 -ascii_mode -discard google.tex

The translation was initiated by Youssef M. Assad on 2003-05-01


Footnotes

... hits1
a ``hit'' is google terminology for a result.
... better2
Let me save you some time; fluxbox
... Linux.3
In my humble opinion, of course.


Youssef M. Assad 2003-05-01

This page is copyright Youssef M. Assad 2003. This story is freely redistributable in UNMODIFIED FORM, covering both the content and credits. If anyone's publishing it, I'd like to know about it first, however.