I'm playing around with Google Spreadsheets as a platform for backend application reporting and its quite promising so far. They key to it are special functions that you can use in a spreadsheet cell to import data from XML, CSV, RSS or even a well formatted web page with HTML tables or lists.
=importXML("URL","query")
=importData("URL")
=ImportHtml(URL, "list" | "table", index)
=ImportFeed(URL, [feedQuery | itemQuery], [headers], [numItems])
Full documentation is here.
From what I can tell, every time you open the spreadsheet it reloads all the files. It does not seem to update the spreadsheet real-time with new data as you are editing it - but I think that's probably for the best.
Lets face it, most of the important data from our website activity and logs ends up in a spreadsheet at some point. The data is needed by the CFO for reconciling expenses, recording business metrics and generating future projections. Operations needs to monitor the health of the system.
In many companies, however, these requests are fulfilled by separate database admins and programmers because the CFO is not empowered to get the data himself. There is lots of, "I'm waiting to get that data back from the Reporting department." Not only does this slow things down, but causes the CFO and other decision makers to ask fewer questions. Asking fewer questions is bad! Being able to easily ask lots of questions is very good!
When something is fast and easy, you can try 10 different combinations and see what's best. When something is slow and painful, you try your best to get it right the first time. The first method seems to produce better results in my experience. It's usually better to iterate rapidly and allow for failures in the process than to try and get it perfect.
This is very similar to how email marketing tools evolved. In the beginning, the programmers for your application or website also wrote the content for the email messages it would send. Over time, the marketers took over control of the content. But then every time they wanted to change the content, they needed to go ask the programmers. While there are many other reasons to use an Email Service Provider (ESP), I believe this was actually one of the most compelling reasons at first.
So what I'm doing to start is creating a data feed of user activity. It's a daily snapshot that shows the total number of users, number of pageviews, advertising inventory generated, etc. This automatically becomes a spreadsheet in Google with a row for each day. Now the CFO can do whatever he wants with it from within the spreadsheet. Every once in a while he may have to ask the programmers to add a new column or data point to the data feed, but he doesn't have to go through someone else to get at the data and manipulate it.
Ideally, you would just dump all the raw data and logs into the spreadsheet. I haven't tested this to see how much data they will take, but I just assumed that wouldn't work. But the more granular you can get, the more the CFO can work independently without depending on others to program new reports. Rather than using a PHP or ROR charting package, you just use the spreadsheet. It's much faster and easier. You can make 2 different spreadsheets with the same data feeding into them to compare different theories.
I'm still just getting started with this and will post more examples and real-world usage data soon. If you try this out, I'd like to hear about your experiences.
I've asked some other people what they think about putting confidential business data on Google and most of the don't seem to be that concerned. Lots of people inside Google would freak out if they found out this was going on, and if it ever went public it would be a major disaster for Google.
Posted by: Joshua Baer | April 13, 2008 at 04:42 PM
Hey Joshua,
I've certainly seen a recent strong desire for CFO's/operations to have easier access to "dashboard" type info without requesting reports each time. But how many have the patience to wade through spreadsheets? I'm thinking they have to be much more visual and simple to really be effective...
Check this post out on Google's visualization API, maybe it could help? (It's a good blog anyway... 8-)
http://infosthetics.com/archives/2008/03/google_visualization_api.html
Here's another good dashboard blog I read that may offer some good inspiration too: http://www.enterprise-dashboard.com
Good luck, look forward to hearing more!
Charlie Nichols
Posted by: Charlie Nichols | March 31, 2008 at 07:34 PM
Just remember that Google has access to all of your spreadsheets... not to mention that it is still in beta.
I personally believe Google uses both this and Google Analytics to monitor the health and growth of Companies for potential purchases.
Posted by: Adam Robertson | March 27, 2008 at 04:44 PM