to Support Google Universal Gadgets

Is the team working on support for Google’s universal gadget manifest format? You can’t load a Google gadget manifest yet, but there are signs that it’s not far off. If I’m right (and I’m sensing that I am) you should be able to use any of the plethora of gadgets available at on your or Windows Live Spaces page not too far down the road.

Actually, we’ve known for a while that running Google gadgets on was possible. I wrote a proof of concept about a year ago in which I was able to load and execute the Google “Eyes” gadget (back then Google called them “modules”). I never released an actual product of this, as it was just an exercise for myself. Since then, I have wondered whether the guys at Microsoft were working on a way to do this too, and it looks like they are.

But what’s behind the decision to add this functionality to and why now? I believe it is because Microsoft has fallen behind Google in the number of gadgets available for their respective formats (less than 300 compared to Google’s nearly 2000 gadgets). Its a battle for users that reminds me of the VHS/Betamax war in the early ’80s. As we all know, Sony’s Betamax lost out to JVC’s VHS format even though Betamax was technically superior. VHS won out with consumers because there were simply more VHS videos on the shelf.

Microsoft doesn’t want to be the Betamax of the gadget world. Like Sony, Microsoft’s format is technically superior to the competition. When writing a Microsoft gadgets, the developer must abide by the Atlas framework; meaning JavaScript classes, initialize and dispose methods, bindings, inheritance and interfaces. Google went with a flexible format more like a traditional web page and therefore more familiar to web developers. For the most part, if you can write a web page, you can make a Google gadget; not so with Microsoft’s. There is only a small school of Atlas savvy fish swimming in an overwhelming sea of web developers. Therefore it’s simple: fewer Atlas developers means fewer Microsoft gadgets.

Microsoft prides itself on bringing new, better and more sophisticated platforms and tools to the development community. I defend and applaud the platform but some developers have been vocal about this “sophistication” on (a developer community site). In response to a posting titled “Building a simple gadget for“, one developer commented “I’ve just finished writing a Google Personal Homepage module. Then I thought: “what the heck, let’s write one for also”. Adding a gadget to is much more complex then it should be…“. To which another developer responded “I agree… creating a Gadget is very complex and relies on age old web dev skills like JScript (gosh!) – there should be an easier + better way to develop gadgets if is to succeed“.

Does this mean the death of the format gadget? Not at all. Speaking as a developer, it’s not going away, it is just being used by a smaller proportion of the community. I’ve written more Microsoft gadgets than I can count, compared to only a handful of the Google variety.

When will this supposed new functionality be rolled out? Only the team can say for sure. I would expect that we should see Google gadgets running natively on within the next one or two releases cycles.

*** Update ***

While I can’t get the user interface to accept a manifest to a Google gadget, I can force the Microsoft gadget engine to run a Google gadget directly. For example, click the link below to run Google’s clock. Note that all of the work to read the manifest and render this Google gadget is being done by Microsoft code.

You can substitute a different manifest URL to run any Google gadget as long as the gadget’s manifest is not set to render_inline=”required in the <ModulePrefs> tag (as is the case with the Google Eyes gadget).