A Company

  • Subscribe to our RSS feed.
  • Twitter
  • StumbleUpon
  • Reddit
  • Facebook
  • Digg

Tuesday, 22 June 2004

A man, a plan, a pointless (?) program

Posted on 13:39 by Unknown
As the Google engineering department's director of search quality, I (along with my team) am responsible for maintaining the ranking technology that decides what order your results show up in when you do a Google search. It's an important job and an exciting one. I can't tell you all the secrets of what my group does, but I can tell you a non-Google story that will give you a taste of what it's like to work with large amounts of text data and computing resources.



On the last palindromic date, 20:02 02/20 2002, I was, like any good computer geek, reminded of the palindrome that appears on page 170 of the computer manual Common Lisp, the Language (2nd ed):

A man, a plan, a canoe, pasta, heros, rajahs, a coloratura, maps, snipe, percale, macaroni, a gag, a banana bag, a tan, a tag, a banana bag again (or a camel), a crepe, pins, Spam, a rut, a Rolo, cash, a jar, sore hats, a peon, a canal -- Panama!

A quick search reminded me that the record for such a palindrome, established in 1984 by Dan Hoey, was only 543 words. I immediately thought I could (and therefore should) write a program to beat that. I wrote an algorithm that searches a dictionary and figured out how to put the words together in a sentence that starts with "A man, a plan" and ends with "a canal, Panama." It took me until 1:00 a.m. that night of 02/20 (and some minor bug-bashing the next day) to produce this result -- to my knowledge, still the longest palindromic sentence ever created.

So what, you may ask? Good question. I readily admit that my accomplishment has no practical social purpose or business application. But as a story that spans 18 years from Hoey's palindrome to mine, it has a moral about how it is becoming easier to do big things. Hoey is an excellent computer scientist, but he said he spent days writing a disk-based B-tree package for his program. I was saved all this, because a dictionary now fits in main memory and I could use straightforward binary search. Thank you, Moore's Law.

Also, I was saved from having to fiddle with the dictionary because of the public domain Moby Dictionary. Thank you, Internet (and Grady Ward). The advances over the years let me combine a 100,000-word dictionary and a year-old laptop to break an 18-year old record. If you're a programmer, you could do it too: beat my record, or invent something new -- for example, can you invent a double-entendre law firm that is longer than Dewey, Cheatham, and Howe? With the resources available to you, you can accomplish a lot. Let me know what you come up with.

Now if you'll excuse me, I have to get back to work -- I have some ideas that can only be tackled with a few terabytes of text and a few thousand computers.

-- Peter Norvig
director of search quality
Email ThisBlogThis!Share to XShare to Facebook
Posted in googlers and culture | No comments
Newer Post Older Post Home

0 comments:

Post a Comment

Subscribe to: Post Comments (Atom)

Popular Posts

  • About that fake post
    Posted by Karen Wickre, Google Blog team A bug in Blogger enabled an unauthorized user to make a fake post on the Google Blog last night, cl...
  • School's in
    Posted by Dror Shimshowitz, Product Marketing Manager Getting ready for the new school year? There's a back-to-school shopping offer at ...
  • On the alert for bloggers
    Posted by Naga Sridhar Kataru, Software Engineer So many interesting blogs and so little time! If you're anything like me, you like to p...
  • About the Google News case in Belgium
    Posted by Rachel Whetstone, European Director of Communications and Public Affairs You may have read recently about Google being taken to co...
  • Extras for your Mac Gmail Notifier
    Posted by Greg Miller, Software Engineer As some clever users have already discovered, the Gmail Notifier for Mac OS X we launched last we...
  • Create web apps on top of Google search
    Posted by Tom Stocky, Product Manager We just launched a new version of the Google AJAX Search API , which is designed to make it easier for...
  • Spend your summer with Google Desktop
    Posted by Mendel Chuang, Product Marketing Manager If you're a Google Desktop fan looking for something to do this summer, it's time...
  • Google Calendar does something about the weather
    Posted by Michael Bolin, Google Calendar Engineer Maybe you haven't tried Google Calendar yet because you don't think your daily ro...
  • Better together: Docs & Spreadsheets
    Posted by Jen Mazzon, Senior Product Marketing Manager Did you ever notice that some things are just better together? For example, vanilla i...
  • Maps in the Palm in your hand
    Posted by Jerry Morrison, Tech Lead Since we first launched Google Maps for mobile devices , we've adapted it to more phones and languag...

Categories

  • accessibility
  • ads
  • Africa
  • apps
  • April 1
  • Asia
  • books + book search
  • crisis response
  • developers
  • doodles
  • education and research
  • enterprise
  • Europe
  • free expression
  • google.org
  • googlers and culture
  • green
  • health
  • Latin America
  • mobile
  • online safety
  • personalization
  • photos
  • policy and issues
  • privacy
  • recipe
  • recruiting and hiring
  • scholarships
  • search
  • search trends
  • small business
  • user experience and usability
  • youtube and video

Blog Archive

  • ►  2006 (231)
    • ►  October (27)
    • ►  September (26)
    • ►  August (32)
    • ►  July (18)
    • ►  June (25)
    • ►  May (19)
    • ►  April (20)
    • ►  March (20)
    • ►  February (26)
    • ►  January (18)
  • ►  2005 (199)
    • ►  December (18)
    • ►  November (20)
    • ►  October (20)
    • ►  September (27)
    • ►  August (20)
    • ►  July (14)
    • ►  June (11)
    • ►  May (18)
    • ►  April (16)
    • ►  March (21)
    • ►  February (7)
    • ►  January (7)
  • ▼  2004 (58)
    • ►  December (11)
    • ►  November (6)
    • ►  October (15)
    • ►  September (7)
    • ►  August (2)
    • ►  July (4)
    • ▼  June (5)
      • A man, a plan, a pointless (?) program
      • Cycling for life
      • Yoshka's weekend amble
      • Oodles of doodles
      • It's not rocket science (or maybe it is)
    • ►  May (7)
    • ►  April (1)
Powered by Blogger.

About Me

Unknown
View my complete profile