The Open Spectrum Debate

Google, Random No Comments »

The upcoming spectrum auction that the Federal Communications Commission (FCC) is expected to authorize in the next few weeks has pitted several major technology and telecommunications companies against one another. The current draft rules for the auction set aside some new spectrum (22MHz of the 60MHz up for auction) for an “open” network — unlicensed radio frequency spectrum that can be used by anyone, with a limited set of rules to prevent abuse of this “wireless commons.” Read the rest of this entry »

How to turn your feed into a Google Gadget

Blogging, Google 9 Comments »

Gadget FeedAfter explaining this process several times, and looking over the search terms that have led people to my article on making Google Gadgets, I’ve decided to answer this question once and for all. Turning a supported feed (Atom 0.3 or 1.0, or RSS 0.91, 0.92, 1.0, or 2.0) into a simple Google Gadget is trivially easy, and can be done in a few simple steps. Read the rest of this entry »

Why Google is right to complain about Microsoft Vista’s search functionality

Google, Random 9 Comments »

Google V MicrosoftGoogle and Microsoft have been trading antitrust complaints over the past few months. Most recently, Google filed a confidential complaint with the Justice Department asking that Microsoft be forced to alter the desktop search functionality in Vista to better accommodate third-party search applications. Surprisingly, Microsoft quickly acquiesced to Google’s request, agreeing to modify Vista to address the concerns in a service pack scheduled for release at the end of this year. Read the rest of this entry »

WordPress Plugin: WP-Offline

Blogging, Google 59 Comments »

WP-OfflineAs many of you are already aware, Google announced a new product last week called Google Gears (I wrote an intro to the toolkit a few days ago). After playing around with Gears for a while I realized that I could use it to solve a problem that has bothered me for some time: I can’t read blogs offline! WP-Offline is a WordPress plugin that lets your readers cache your entire blog for offline reading using Google Gears. Read the rest of this entry »

Is Google Building a 3D Model of Earth?

Google 8 Comments »

Sketchup PhotoMatchJust last week Google announced street view at the Where 2.0 conference in San Jose. The new feature, which lets users view 360 degree panoramic photos from the streets of several major US cities, received lots of press despite the fact that Amazon’s A9 maps had a similar feature that launched some time ago (though Google’s UI is definitely a lot cooler).

Google is an interesting company to watch. They frequently surprise people (myself included) by making unexpected acquisitions and launching new products out of the blue. Since my interests span both technology and business, I’m often left wondering what the big picture is — what is Google’s “10 year plan,” so to speak. Read the rest of this entry »

Getting Started with Google Gears

Google, Tutorials, Web Development 29 Comments »

Yesterday, Google announced Google Gears, an open source browser extension that lets web applications work offline (though I think there are more interesting ways to use the platform). Lots of blogs have picked up the story, including TechCrunch, Mashable, and lifehacker. But most simply regurgitate information from Google’s official press release. They don’t explain how the platform works at all.

I’ve spent the morning reading over the Gears documentation, and working through some sample applications. Here are my notes. I’m hoping they’ll provide enough of an overview to get started with Gears without wading through dozens of pages of documentation yourself. Read the rest of this entry »

Monitor stories from your website appearing on digg.com

Blogging, Google 1 Comment »


I’ve been looking for a way to easily monitor stories from my website that appear on digg.com so that I can prepare if a story looks like it might reach the front page. My first solution was to simply subscribe to the RSS search results feed for my domain. Doing this is pretty simple: search for your domain using digg’s search utility, specifying “URL only” as the search criteria. Then subscribe to the RSS feed on the results page.

I’ve added the resulting RSS feed to my Google homepage, which allows me to keep tabs on upcoming stories from my site. But there are two problems with this method: it doesn’t tell you how many diggs stories have, and Google caches the feed results so you’re looking at old data.

After my recent foray into google gadgets I realized that a simple google gadget could solve both problems, so I wrote one. It’s based on the official Digg gadget with one additional option — monitoring stories for a specific website. If you want to try it out, you can click here to add it to your google homepage.

How to make a Google Gadget in 15 minutes or less

Google, Web Development 26 Comments »


A Google Gadget is a small XML file that generates a widget on a Google Personalized Homepage. Google has excellent documentation describing how to make a Gadget, but it’s so verbose that it hides just how simple it is to make your own Gadget, especially if you already have a widget or feed on your website that you’d like to Gadgetize (TM). It’s really, really easy! And it can generate a ton of traffic for your site.

Read the rest of this entry »

Hacking Google Spell Checker for Fun and Profit

Google, Hacks, Programming 35 Comments »

Try it out!

 


A few days ago I was researching ways to integrate spell checking with the search engine for a project I’m working on similar to the way Google does. I figured Google, being Google, must have some legitimate mechanism for accessing their spell checker (this is Web 2.0, after all).

After scouring the Internet for some time all I could find was a deprecated SOAP web service that used to be available as part of their SOAP search API. Unfortunately they stopped issuing API keys for the SOAP Search API on December 5, 2006. The ajax search API that replaced it doesn’t seem to provide spelling corrections. Bummer.

Just as I was about to give up I stumbled across an interesting blog post that describes a publicly available (but undocumented and apparently not very widely known) RPC endpoint that Google uses to provide spelling corrections for the Google Toolbar. The URL is https://www.google.com/tbproxy/spell.

Neat. After a few minutes of tinkering I put together a small class in PHP that provides easy access to the service. The class requires SimpleXML and CURL. It defines two static methods, SpellChecker::Check() (which returns true if the query you pass as an argument is spelled correctly) and SpellChecker::Correct() (which returns Google’s suggested spelling). You can download the source here (plaintext version), or try it out with the AJAX spell checker I threw together (up top).

Here’s a quick replay of a typical request/response (I wrapped the XML, but in theory it shouldn’t matter):

POST /tbproxy/spell?lang=en&hl=en HTTP/1.0
MIME-Version: 1.0
Content-type: application/PTI26
Content-length: 125
Content-transfer-encoding: text
Request-number: 1
Document-type: Request
Interface-Version: Test 1.4
Connection: close 

<spellrequest
  textalreadyclipped="0"
  ignoredups="1"
  ignoredigits="1"
  ignoreallcaps="0">
    <text>gogle spel</text>
</spellrequest>

HTTP/1.0 200 OK
Content-Type: text/xml
Server: DocumentSpellcheck
Cache-Control: private, x-gzip-ok=""
Date: Sat, 07 Apr 2007 14:11:57 GMT
Connection: Close

<?xml version="1.0"?>
<spellresult
  error="0"
  clipped="0"
  charschecked="10">
    <c o="0" l="5" s="1">google    Google  goggle  giggle  Gogol</c>
    <c o="6" l="4" s="1">spell       spiel   spelt   spew    Opel</c>
</spellresult>

The suggestions are tab-delineated. The ‘o’ attribute is an offset from the start of your query to the misspelled word. ‘l’ is the length of the misspelled word. ’s’ is the confidence of Google’s suggestion (presumably higher is better, but I’ve only gotten 0 or 1).

Copyright © 2007 - Mike Malone / Icons by N.Design Studio
Entries RSS Comments RSS Log in
no image