Skip to content

{ Yahoo“” } Search Results

Updates to Yahoo! Pipes (from Dec 2007)

While finishing my book, it wasn't possible for me to keep up with all the changes that were happening with the many web applications I track in the book.  One such change came in Yahoo! Pipes:  Pipes Blog » Blog Archive » New "Fetch Page" module and nice web path enhancement….

I have to try the Pipes Fetch Page Module to do some scraping of HTML pages. Also one can start using nicer URLs for various pipes.   For instance,

http://pipes.yahoo.com/pipes/pipe.run?InputURL=http%3A%2F%2Fwww.nytimes.com%2Fservices%2Fxml%2Frss%2Fnyt%2FInternational.xml&_id=cInT4D7B3BGMoxPNiXrL0A&_render=kml

can now be substituted with

http://pipes.yahoo.com/raymondyee/locationextractor?InputURL=http%3A%2F%2Fwww.nytimes.com%2Fservices%2Fxml%2Frss%2Fnyt%2FInternational.xml&_render=kml

Tagged

The further development of Yahoo! Pipes

I currently have an example of how to use Yahoo! Pipes in Chapter 4 of my book. Pipes continues to advance quickly beyond the point I last took a close look. At the start of its life, Pipes dealt only with acepting inputs and creating outputs that are RSS or Atom feeds. Now, it seems to be able handle a broader range of inputs: XML documents in general (I think) but also JSON. When I last looked, the output is still primarily feeds — though KML is now one of the outputs of Pipes, allowing for the generation of mapping data that can be plotted directly on Google Earth and Google Maps. I'm looking forward to being able to produce a broader range of outputs as well as being able to plug in third party filters and transforms.

For an engaging talk on the subject by the creator of Pipes, see it on Google Video.

Let's see whether I get heard on the Yahoo DN suggestion board

Yahoo! Developer Network Suggestion Board is taking suggestions from the community. Let's see whether mine get heard:

  1. Fix error in the getCollection documentation
  2. bring out an API for the Yahoo calendar, which was announced almost a year ago.

I use the getCollection method in an example on how to create maps out of collections of interesting places compiled through the Yahoo local interface.  Not having to document an error in the official documentation would make for a nicer narrative in my book!

Learning about JavaScript libraries using the Google Ajax Libraries API

In Chapter 8 of my mashup book, I wrote

    Ideally there would be one obvious choice for an excellent JavaScript library, and everyone would use it. The current situation is that there are many JavaScript libraries, and it is not at all obvious how they compare.

I was hoping that in the course of writing my book, I would have had an opportunity to do my in-depth study of various JavaScript libraries (of which there are many, judging from the table in the Wikipedia entry Comparison of JavaScript frameworks). I raised the question of how to choose a JavaScript library during a panel on OpenAjax as a way of studying the implications of such initiatives as OpenAjax — that is, does OpenAjax make it easier to figure out what JavaScript library to choose — or does it allow one to pick and choose the best parts from a whole range of libraries? These are questions I plan to raise in my spring 2009 Mixing and Remixing Information course.

At any rate, I recently had a chance to take a closer look at AJAX Libraries API – Google Code, which is "a content distribution network and loading architecture for the most popular, open source JavaScript libraries", which at present, include:

  • jQuery
  • jQuery UI
  • Prototype
  • script.aculo.us
  • MooTools
  • Dojo
  • SWFObject
  • Yahoo! User Interface Library (YUI)

From a pedagogical point of view, the Google AJAX Libraries API, by providing a single common library call (google.load) simplifies getting set up with each of the libraries, which otherwise, would require a different setup. Of course, there are reasons that you might not want to depend on Google to host JavaScript libraries you use — but not having to take care of hosting these files yourself helps beginners jump right in.

I'm pleased to see that The Yahoo! User Interface Library (YUI) recently became part of the Google API. I use that library in my course and in my book. The post on Google AJAX Search API Blog announcing this inclusion gave a short code example on how to use YUI with the Google AJAX Libraries API — it did not actually show any visible in the user interface. Here I show to elaborate the example slightly to actually show something visible in the UI.

To do so, you should take look at the YUI docs for the calendar widget and understand a bit about what the YUILoader (Yahoo! UI Library: YUI Loader Utility does. One thing to note is that google.load('yui', '2.6.0'); creates an instance of a global YAHOO object. Secondly, YUILoader takes care of loading the pieces of YUI required to use the widget that you want to use — see Getting Started for more details. You will also want to load in the default CSS to get started (through the line <body class="yui-skin-sam">). The modified code I came up with is:

<head>
  <script src="http://www.google.com/jsapi" type="text/javascript" charset="utf-8"></script>
  <script type="text/javascript" charset="utf-8">
  google.load('yui', '2.6.0');
  function init() {
    var loader = new YAHOO.util.YUILoader({
      require: ["button", "calendar"],
      base: "http://ajax.googleapis.com/ajax/libs/yui/2.6.0/build/",
      onSuccess: function() {
        // start playing with buttons and calendars!
        var cal = new YAHOO.widget.Calendar("calContainer");
        cal.render();
      }
    });
    loader.insert();
  }
  google.setOnLoadCallback(init);
  </script>
</head>
<body class="yui-skin-sam">
  <div id="calContainer"></div>
</body>

which you can run at http://labs.mashupguide.net/doc/2008/11/google.ajaxlib.yui.eg.html

Notelets for 2008.05.20

AIM announces winners of the Open AIM Developer Challenge. Some coverage:

OUseful Info: An OpenLibrary API Handshake With Yahoo Pipes cf my PW post (Open Library API: Cataloging 13 Million Books)

BTW, I just created a record in OpenLibrary for Pro Web 2.0 Mashups, my book.

About the Technical Reviewer

John Watson is a professional freelance software developer and has been creating web-based software since 1994. He is best known on Flickr for fd’s Flickr Toys (Bighugelabs.com), a popular collection of free photo manipulation utilities that use various APIs from Flickr, Google, and Yahoo! John is married and living happily in southern California with his wife and two young children. You can find out more about John and his recent projects at http://watson-net.com.

Speculating on future trends for online maps

The online mapping arena is changing so quickly, and I obviously am not able to cover the details of all these changes. Nonetheless, it's helpful to speculate on what I believe to be the long-term trends in this area as a way of priming yourself for future changes.

  • I think that you'll see a migration of many features found in typical full-fledged GIS system — e.g., shading of layers — into programmable web applications. (e.g., Pushpin Multi-layer map server)
  • Not surprisingly, we'll see the platform players (such as Google Maps) incorporate functionality started off as extensions to the platform into the platform itself. For example, sites such as mapbuilder.net provided a user interface for building Google (or Yahoo!) map before Google made it easier to build a Google Map via its "My Maps" functionality. Google's My Maps doesn't exactly duplicate mapbuilder.net but it's bound to win a major audience by virtue of its tight integration with Google Maps.
  • Google Mapplets are little applications that embedded in the Google Maps directly. (Note the contrast to the main Google Maps API allows Google Maps to be embedded in third-party websites) Again, because mapplets are located right in the context of http://maps.google.com, users can take advantage of increased functionality without having to go to a third-party website. Google Mapplets are to Google Maps as Google Gadgets are to iGoogle, Google Desktop, Google Page Creator. They are extension mechanisms for different part of the Google Platform.
  • We will see increased merging in 2D and 3D representations of the globe. Signs of such activity include

KML adoption beyond Google Earth

KML has moved beyond its use in Google Earth alone. For instance, you can display KML files and export search results and one of your "my maps" from Google Maps in KML. Other applications are beginning to support KML: For instance, you can get KML coming out of Yahoo! Pipes. There is support for KML in Feed Validator KML is being shepherded through a standards process: Paul Ramsey: KML @ OGC. Google is advising people to use KML so that its geo–search can index KML — in KML 2.2, there is an attribution element. Google apparently will also index GeoRSS.

Mapstraction and OpenLayers: abstraction layers for mapping APIs

In Chapter 13, I cover how to use some of major mapping APIs: Google Maps, Yahoo, Mapquest, and Microsofts'. It would be convenient to be able to not worry about the differences among the maps and easily switch among the various maps. That's the promise of a mapping"abstraction" library such as Mapstraction (http://mapstraction.com). We'll have to see how and whether it is widely used to gauge the library's effectiveness.

Along a different vein is OpenLayers (http://www.openlayers.org/), which is:

    a pure JavaScript library for displaying map data in most modern web browsers, with no server-side dependencies. OpenLayers implements a (still-developing) JavaScript API for building rich web-based geographic applications, similar to the Google Maps and MSN Virtual Earth APIs, with one important difference — OpenLayers is Free Software, developed for and by the Open Source software community.

You can try out OpenLayers in FlashEarth. Go to the site and select OpenLayers. You might have to zoom out sufficiently to see any tiles (e.g., http://www.flashearth.com/?lat=38.417308&lon=-122.271821&z=9.9&r=0&src=ol)

Mashup tools to look at

In Chapters 9 and 11, I analyze service composition frameworks, tools that make it easier to create mashups, for "design patterns" among mashups. That is, if some tool offers a template, it's likely that there is a design pattern behind that template. If time allows, I'd like to study at the least the following frameworks. openkapow is one such system. I want to look at the ones highlighted in John Musser's recent presentation at Web 2.0 Expo. See Open APIs Talk at Web 2.0 Expo and specifically the quote from Digg floats API, phishing mashups to come:

    "The tool space is going to explode, both for developers and nondevelopers," Musser said. Of particular note were data mashup tools such as Yahoo Pipes, RSSBus, and Grazr; scraping tools for making structured data from unstructured data, such as Kapow and Dapper; and visual development tools, including JackBe, Teqlo, Bungee, and IBM's QEDWiki.

I'm already studying Yahoo! Pipes, Kapow, Dapper, and QEDWiki but have yet to look at:

How well do these tools work? We'll see.