Wednesday, September 15, 2010

Google AppEngine and Enterprise Support

The Real NORAD in Cheyenne, Wyoming

I just finished watching the Google webinar on their Python AppEngine:

Google Campfire One Python

It's a good talk and the best part is they spend most of the time showing actual source code and running applications.  It always annoys me when developers talk about their programs without showing the source code, or at best showing pseudocode, so it was refreshing to see a talk that was mostly source code.

The premise of the AppEngine is promising: outsourcing admin work and making the whole deployment process very fast and easy.  For small applications and few users it lets you get online with little fuss and no cost.  Where I would be a little concerned is when you start talking about large important applications where you need much more than the 500 MB of storage they offer, where you need 24x7 on-call support when the admin console isn't doing what you think it is, all the big hairy problems that a large enterprise application is known for.  This support aspect concerns me because that's what I've spent most of my professional life doing: supporting massive enterprise applications.  Given that Google is known for their crappy customer service and often non-existent support (as I found when I tried to use Google Earth professionally), I'm worried.

One way to alleviate some of these concerns would be to have a real customer support department at Google.  I'm looking for something like you'd find at Motorola for their public safety radio monitoring, the Big Board room in Schaumburg: I've visited it, or the EDS, now HP, service monitoring room, a NORAD-type facility where you can pay for good monitoring and in-depth support to fix critical issues.  It's relatively difficult to build this kind of organization, especially at Google where the culture of customer service is largely absent, so it would probably be easiest for Google to just buy an existing support company or partner with someone like HP that can provide this level of support.  It will be quite expensive, but the large organizations demanding it have deep pockets.




However even this high support level has the downside of being tied to Google administrative access to sensitive company data.  If I was trying to sell AppEngine to big corporate clients, this is one of the primary concerns I'd have to address, especially in the software and telecommunications field where Google is a primary competitor to many potential users.  Many executives simply won't allow sensitive data to be placed in the hands of a competitor, despite assurances, and there may be strong privacy concerns as well.  In some jurisdictions, storing customer mobile call data on Google servers may not even be legal.

Google could alleviate these concerns by providing infrastructure hardware and software for company-hosted AppEngine instances.  This would allow a company to run their own Google AppEngine in their own datacenter.  This is not without precedent.  Google has taken this approach with search, selling the Google Search Appliance as a stand-alone indexer and search provider for intranets.

Google Search Appliance

A Google AppEngine Appliance would provide the same level of customer control and assurances in the AppEngine space that is already found in the search space.  Furthermore it would build a revenue stream that Google normally wouldn't have access to, the datacenter budgets of enterprises.  Given that dozens or hundreds of AppEngine Appliances might be needed for a large application, or even several large clustered virtual machines hosting thousands of appliances, the potential is huge.

Let's hope we see a Google AppEngine Appliance in the future.  Then we enterprise programmers can start using this great python development tool in our everyday work.

1 comment: