Google wants to make the web programmable because the one application can be extended by another to create new applications. That is how they open their post on the Google code blog. In this post they explain how they enabled #v144# for Google alerts.
With the enabling of this protocol developers can " write web applications that process newly relevant search results as they become available". Roughly translated: Google alerts can now send notifications real time.
The PubSubHubbub-protocol (who ever came up with that name?) is not just about mash ups. It's more advanced. Google for example gives the Wave Robots API as an example of a wat to give "developers the power to enhance and modify the behavior of Wave in new ways that no-one has envisioned."
The protocol "provides web-hook notifications when Atom and RSS feeds are updated, delivering web applications near-real-time information about what's new or changed" and is open source. Simply stated: it speeds up the time it takes to get a feed found by several sources.
“Think of it as an AJAX search API that tells *you* when it finds new results. Acting upon these notifications your app could update your website, email friends, send an SMS — the possibilities are endless,” Google states on the code blog.
The protocol in a nutshell according to Google:
An feed URL (a "topic") declares its Hub server(s) in its Atom or RSS XML file, via <link rel="hub" ...>. The hub(s) can be run by the publisher of the feed, or can be a community hub that anybody can use. (Atom and RssFeeds are supported)
A subscriber (a server that's interested in a topic), initially fetches the Atom URL as normal. If the Atom file declares its hubs, the subscriber can then avoid lame, repeated polling of the URL and can instead register with the feed's hub(s) and subscribe to updates.
The subscriber subscribes to the Topic URL from the Topic URL's declared Hub(s).
When the Publisher next updates the Topic URL, the publisher software pings the Hub(s) saying that there's an update.
The hub efficiently fetches the published feed and multicasts the new/changed content out to all registered subscribers.
In the last weeks Google already added the protocol to other Google services like FeedBurner, Reader shared items and Blogger.