A discussion with the folks at Microsoft got me explaining our technology choice on the cloud.
It led to an idea on how Microsoft should be positioning their cloud offering, keeping the lifecycle of a startup product company in mind :-
1) Most companies start on the cloud, with just an idea
Face it : when starting out, all you would want to build is your product and test that it works for your consumers. The cloud gives you the perfect platform to start with a 256KB machine for development, and to add nodes as you progress.
2) Most products are not OS specific
I cannot think of an application that "requires" Microsoft or Linux running in the background. Sure, Postgres and mysql have friendlier interfaces when used on Windows, but PHP / Python / Perl run brilliantly on any platform.
See http://langpop.com/ for a dip-stick on popular languages used - nothing Microsoft-specific here.
3) Yet the Microsoft prices far outweigh the costs of Linux
Go to Amazon or Rackspace, and compare the cost of a Microsoft instance vs a CentOs instance. There's at least a 20% difference between the two.
See Rackspace's pricing, one of the more inexpensive but brilliant cloud providers : http://www.rackspace.com/cloud/cloud_hosting_products/servers/pricing/
Given (1) [I'm just starting with an idea] and (2) [am not married to Microsoft], my cheaper decision is only on costs, so I would go for Linux.
4) Features, not platform, is top-of-mind
You've invested man-months of coding, you've launched a Minimum Viable Product. As your customers start snapping up your application, you receive a plethora of ideas & change requests from your teams. At this point of time, any product manager is going to want to focus on building functionality rather than thinking about the platform they are on.
5) Only when there's scale, manageability comes to mind
You've launched your product, you have a product roadmap, and you start wishing you could manage your servers with easy-to-use management and monitoring tools. This is perhaps where the beauty of the Microsoft OS comes into play.
Even today, I'm thinking of how MS SqlServer can help with the dynamic reporting we want, and how restarting a service is just a Remote Desktop plus right-click-restart away.
By this point of time, your product is a complicated system with many parts. There are integrations that have been done between multiple open source products, that you woud rather not touch. Everything is working fine, so why change the underlying infrastructure? If there's better management you want, along comes a management layer that works on top of your underlying Linux cloud infrastructure, at a price -> it's less traumatic to just license that layer than migrate to a different technology stack for management tools.
Which is the point to make ; unless Microsoft is content with the needs of their legacy customers, it needs to understand how start-ups typically think and grow, and use that sequence to its’ advantage when pricing it’s services.
Instead of charging start-ups for the Microsoft-advantage upfront, grab developers' interest early on with competitive pricing, and shift the rates to regular tiers as the business has proven itself and the value-add of Microsoft software becomes more in demand.