I read this last night, and it was definitely an interesting read if only for the insights it gives in Amazon's sudden change from an online reseller to a web services provider.
Google seems a bit haphazard and infantile in many of its endeavours. Google Apps is a good example; it's a promising product with oodles of potential, but they don't seem to know what to do with it, and having migrated our email over to the platform, I now live in the subtle but underlying fear that Google might get bored of it and pull the rug from under our feet.
Anyway, I digress. The idea of building products as a platform is certainly a sound one, where the product can be marketed as such. But it's not easy to just "build an infrastructure" for something.
It takes planning and investment in both time and money to build a "platform" before you even start building the product you want to sell. And until you have that product, you don't have the "killer app" that will help sell your platform.
It's probably not the best example, but imagine building a faceless version of Wars which just contains the logic and ability to manage multiple arbitrary unit types over terrain. Instead of saying: "well, I've got 10 known types of terrain, so I can hard code some bonuses for those" you're thinking "I need to figure out what properties people might want in an element of terrain, and produce a system which can flexibly store a multiplicity of different terrain types"
You may well have done this anyway, which is why it's not a good example. But building a platform and then a product is a very, very different way of thinking.
We've done it with an E-Commerce platform- the idea being to create a "platform" which will take into account all the nuances you could possibly want in an online store. The problem being, that no matter how much we think we've covered, a user of the platform will always find an exception and it ends up growing organically in unexpected and unwieldy ways.
Platforms are hard!