« August 2009 | Main | June 2011 »

September 6, 2010

Moodle, OAuth, and Google Fusion

Convergence is a strange and reoccurring theme, and it's happened again from me over the last few months with BI reporting, Moodle, OAuth, and Google.

I've looked at a few BI (well SAP, Business Objects, and Pentaho) implementations over the years, and one of the things that I have always found frustrating/off putting is what I consider the huge startup costs for such implementations. This has usually been characterised by expensive infrastructure implementations in both hardware and software coupled with the difficulty that most businesses have in visualising what data they need to have access to, and how it should be most effectively presented.

I've found this dilemma more accute in the Moodle world, as the so many of the customers involved are on a very tight to non-existent budget, yet their requirement to analyse Learning Managment System performance data is still there.

A year ago, I concluded that Pentaho was my first choice, for the twin reasons that it's OpenSource (specifically no license fees), and that it has sufficiently good data modelling tools to enable a suite of reports customised to Moodle to be delivered. While this reduces the cost of delivering a flexible reporting solution for Moodle, it still falls short on a couple of points:

(1) Most people who implement Moodle are not Data Warehousing, or Modelling experts so they are unlikely to be able to sufficiently accurately determine what their requirements are in advance (actually a common business problem, not unique to the Moodle community).
(2) Pentaho, while reasonably straight forward to install, is still another complex piece of software to host - a major barrier to entry for most Moodle implementations.

What I started looking for then, was a set of visualisation tools that could be integrated with Moodles PHP environment - atleast users would then be able to do more complex reporting and analysis. What I found exceeded my expectations, in the form of a Labs project from Google called Fusion Tables.

Fusion Tables is shaping up to be Business Intelligence reporting with the twist of collaborative, and Geo encoding capabilities. The basic mode is that CSV files of data can be uploaded into a flexible storage engine, datasets can be joined and merged, automatically Geo encoded, and then consumed through a good set of graphical presentation tools. Datasets can be shared and collaboratively edited.


As Luck would have it that this service is firstly free, and secondly exposed via an SQL-like API integrated with the standard Google OAuth mechanism. This makes it attractive as a generic data analysis and reporting tool for a low cost operating environment like Moodle and the education sector.

To test out the theory of all this, I've implemented 3 things:
* OAuth integration for Moodle including a site, and secret registry
* A generic Fusion Tables data proxy for Moodle
* A Gradebook export module that enables the export of the standard gradebook data to Fusion Tables

For the curious, this can be found at Gitorious -moodle-local_oauth.

Posted by PiersHarding at 7:06 AM