Web 2.0 Blog reporting it to you

0 YouTube API Blog Launches

YouTubeOn Tuesday this week the official YouTube API Blog launched with their first post. No news there yet, but is surely a good place to keep an eye on if you’re developing with their API. We have updated our YouTube API Profile to include both the blog and the YouTube API Google Group. As of today we have 116 YouTube mashups listed at PW. Clearly this is an API lots of developers have an interest in. If you have any ideas about what would make the YouTube API better, they’re inviting API feature requests here. So far developers have asked for things like the ability to add and delete videos, an API for video responses, and hooks into the player. Speaking of those additions to the YouTube API profile: we’ve been enhancing our API profiles recently with some new data. For example, two new profile fields are API Blog and API Forum. This allows you to quickly see if a given API has an associated blog and some type of newsgroup or dedicated forum. More enhancements coming soon…

0 Google AJAX Feed API

Google Ajax FeedsGoogle this week announced the release of the Google AJAX Feed API. What is it? It’s a JavaScript library that lets you mashup RSS and Atom feeds entirely on the client, thus no need for server-side coding. In addition, one of the useful core features is that it can automatically map XML attributes to a JSON result format. To get a sense of what it can do, one of their example mashups has been added to our listings: the Google AJAX Tune Bar that lets you add iTunes RSS feeds to any page. If you’re familiar with JavaScript programming you’ll note that typically this sort of client-side mashup would have some limitations due to browser security constraints restricting data to only come from the same server a given page was delivered. But Google works-around this by having their servers act as a proxy cache for all feed requests made via the API. Which leads to a couple of other implications: “The AJAX Feed API, like Google Reader and the Google personalized homepage, caches individual entries within feeds and reconstructs feeds based on those entries. Consequently, feeds from the AJAX Feed API may not reflect the exact XML file from the URL you request. In many cases, you can request more entries from the AJAX Feed API than are currently available in the live feed.” It is also interesting that we’re seeing more JavaScript-based APIs from Google, including the AJAX Search API and the ever-popular Google Maps API. We’ll probably see more in the future given that they’ve introduced a new base url of google.com/jsapi and a generalized JavaScript API load process: “Loading the API requires two steps because Google is moving to a new model of loading AJAX APIs to make it easier to include multiple Google APIs on your pages. Subscribe to the Google AJAX APIs Blog for announcements as we start rolling out this new AJAX API loading mechanism.” This is one of those very useful but somewhat subtle APIs that has more power than may be initially apparent.

0 Google announces new AJAX Feed API

The Google AJAX API team has announced a genuinely useful Feed API that gives an Ajax developer the ability to access feeds, cached in the fast Google edge cache where appropriate, from across the web using a simple JavaScript API. This is a subtle service that does one thing that is currently a pain-point for developers of certain applications. Ajax developers now have a clean way to access public feeds on any domain, and get access to the content in a uniform way. Gone is the need for us to create a proxy on the server to access feeds from other domains. Gone is the need to have to deal with all of the feed types. RSS, Atom, RDF, we can now use either MIXED_FORMAT or JSON_FORMAT to use the uniform access. The full set of feed formats supported is Atom 1.0, Atom 0.3, RSS 2.0, RSS 1.0, RSS 0.94, RSS 0.93, RSS 0.92, RSS 0.91, RSS 0.9. The unified feed result elements are: title, link, description, author and a list of entries[]. The entries[] list has the following elements: title, link, content, contentSnippet, publishDate, and categories. XML and mixed formats allow you to also get access to the XML document itself, and then you can use standard DOM tactics to get what you want from that content (e.g. getElementsByTagName). You would want to use XML if you needed to grab out something specific from the feed, such as the digg:count. RSSBling Redone Funny story. Ben and I created Ajaxian.com as a place to host RSS Bling back in 2005, as you can see via the Wayback Machine. It was only later that we started the blog. RSS Bling was an offline RSS reader that we create as an example of doing offline and Ajax before it was cool. We got a lot of mileage out of doing presentations and unplugging the net and seeing that it still worked. One of our problems was getting access to feeds. We could have created a proxy to feeds, but instead we used bloglines as the proxy, and got the data from there. With the new Feed API we can go directly to the feeds itself. We ported RSS Bling to use the API, and you can view it here. Once you load the Feed API, you can grab a feed using google.feeds.Feed, passing in the feed URL, setting any values on it (e.g. the mode to use, how many entries you want in the result size, etc.), and then calling load(callback). The callback allows the API to grab the feed asynchronously, and holds the result itself. Here is an example from RSS Bling that loads a feed and shows the entries in the main window:
JAVASCRIPT:
  1. new google.feeds.Feed(feeds[feedId].feedUrl).load(function(result) {
  2. if (!result.error) {
  3. var html = "";
  4. var feed = result.feed;
  5. html += '<div class="titlebar">';
  6. html += '<div class="title"><a xhref="' + feed.link + '">' + feed.title + '</a></div>';
  7. html += '<div class="description">' + feed.description + '</div>';
  8. html += '</div><div class="entries">';
  9. for (i = 0; i <result.feed.entries.length; i++) {
  10. var entry = result.feed.entries[i];
  11. html += '<div class="entryTitle"><a xhref="' + entry.link + '">' + entry.title + '</a></div>';
  12. html += '<div class="entryText">' + entry.content + '</div>';
  13. }
  14. html += "";
  15. document.getElementById("feedContent").innerHTML = html;
  16. } else {
  17. showError();
  18. }
  19. });
I am really looking forward to seeing how the API is used. For more infomation you can visit the Ajax Feed API home or check out the FAQ. RSS Bling Feed API version

0 Google Developer Day

Google APIsIf you’re interested in developing with any of the many Google APIs, you may want to mark May 31st on your calendar. That’s when Google is hosting their Google Developer Day 2007 in ten cities around the world. It gives you a chance to meet the Google developer product teams, maybe learn more about GData, KML, or, just tell Google what you want. Highlights by location include:
  • In Beijing: Guido Van Rossum, creator of the Python programming language, now Google engineer
  • In London: Chris DiBona, Google open source programs manager
  • In Tokyo: Google engineering manager and Apache Software Foundation chairman, Greg Stein
  • In Madrid: Google data APIs technical lead Mark Stahl
  • In Sydney: Google Maps senior engineer Lars Rasmussen

0 The Value of Google Gadgets

GoogleYesterday’s post highlighted some widget-related links but here’s another one worth checking-out: The Value of Google Gadgets, a fascinating dose of metrics from Adam Sah of the Google Gadgets team. Besides noting that developers have created nearly 4000 gadgets created in a year (we have one), Google now shows you alongside each gadget the approximate number of page views each gadget receives in a week. The volume some of these get is well into the millions per week — see some example stats collected by Brady Forrest over at O’Reilly Radar.
Next Generation Ecommerce Software & Web Store Platform > Fast, Simple, Friendly Stores
RSS
Stores  Features  Blog  Archives  About  Contact       © 2006 Web 2.0 Stores