Tuesday, September 9, 2008

Mashups and APIs:

The Lullabot Podcast no 63 - A Very informative Podcast!

Summarizing the Podcast - the main topics covered:

1.RSS feeds and Atom Feeds ->
Is a request for a file on another server.
RSS feeds can be generated using Views and can be aggregated on a Drupal site using the Core aggregator module.

2.SOAP - Simple Object Access Protocol (services API)
and XML RPC

Ways to call a function in another server -> add a new blog post or any specific functionality in another site, programmatically interacting with other sites You connect to the server and ask for a command (method based) calling a function and you can expect a response (what you want to do?)


These are messaging protocols that can talk between webservices!

The Services module provides for these features.

A standardized solution of integrating external applications with Drupal. Service callbacks may be used with multiple interfaces like XMLRPC, SOAP, REST, AMF. This allows a Drupal site to provide web services via multiple interfaces while using the same callback code.


3. REST - noun based, object (which object, what you want to do?)

REST APIs more efficient as with REST there is no XML conversion involved. On calling a specific URL all the parameters are passed by Get request. For exchanging a large amount of info this is not good.

Ficker, Amazon provide such APIs for us to use their services. Though they open out their APIs they still do not loose their clientèle. In fact contrarily, it helps them widen their reach.

4. JASON APIs – Packets for exchanging information, array full of data. JavaScript used to access the information. No XML, easier to send back the format that can be directly used.
Google mail exchanges information in this manner.

5. AAHA ( get HTML) JavaScript running to get HTML
AJAX ( get XML) only for complex stuff!! Client side parsing of the XML and converting it to HTML

6. RDF is single resource description format. A way of storing chunks of information, like RSS or custom XML packages. Standardize information exchange using micro formats.
Protocols used - XMLRPC, Jason, …
Format of the info - RDF or RSS
RDF is a very generalized format.

7. Drupal and Mashups: How do we use these concepts in a Drupal site?

What we can do is to take data from different websites and present it on our websites, then it is called a Mashups!

8. Gmap.module is used for displaying spatial data on Google Maps.

View Demo at: http://www.chicagoancestors.org/

For more discussions on ‘The State of Geo spatial in Drupal’ join: Groups.drupal.org/node/12485

9.Amazon module, Amazon associate toolsare some modules that help us use the Amazon APIs

10. For an entire list of Mashups and integrations visit the modules repository for 3rd Party Integration. There are over 300 modules for doing these integrations.

11. A tip for module developers while creating these integrations is to provide as much access to the APIs, even if it does not have helper functions to use the same.

The Lullabots also presented a neat example of a Mashup during the Podcast:

A web page of your twitter updates that are linked to Google maps based on where you are posting the twitter update and also to your flicker under the same location as classification!


I truly enjoyed this Podcast. It was a very current and detailed podcast. Not only did it cover the technical details of Mashups and APIs but also brought in relevant examples and application into it. It brought a perspective as to where Drupal fits in the scenario as well.

No comments:

Post a Comment

Search This Blog

Chennai Drupal Community

drupal.org - Community plumbing

Shyamala's Drupal SEO