A few days ago, I had a nice long talk with an old friend who has been working for Microsoft on one of the Windows Phone 7 teams. The conversation eventually led to musing about what what a great product WP7 is, and what might help help it reach its potential. A few things came up, but one thing in particular really stood out for me which, after thinking about it more, I wanted to elaborate on further. The question was, how can Windows Phone compete more effectively against Android?
My view: Microsoft needs to eliminate as much friction as possible between Windows Phone 7 and the people who want to tinker with it, because that is in my opinion the ultimate reason why people go with Android - whether or not they realize it. It has a reputation for being "free and open" for people to do what they want with it. While that isn't entirely true, it is a reasonable way to describe the state of affairs with the only other relevant platform, the iPhone. When asked, even the most non technical people I know who chose Android mention something along these lines as being part of the reason they went with it.
With Android, any kid with a compiler can make games and show off to their friends. There is no $100 fee just to be a hobbyist, fan, and ultimately an advocate of the platform. This is essential to building grass roots support for the platform. People being able to "use their devices as they see fit" is a common theme I hear when they talk about Android, with an acknowledgement the carriers are still able to weasel their tendrils of control even here but at least the platform is an improvement over iOS where people have to resort to jailbreaking just to get their device to do what they want.
Obviously, the average Android user is just a regular, non enthusiast phone user who isn't the sort that would consider jailbreaking an iPhone. I think it is fair to say however that they are at least aware of how Android provides users more freedom than iOS will ever allow. This freedom is valuable to people, and when it is available on a platform, it is recognized even by non technical people as a benefit. This is what happened with Android. What people seem to forget is that this is exactly why the desktop version of Windows became so successful. Freedom for developers to make the platform great, with great support from Microsoft in the form of tools that make it easier to make great applications.
If Windows Phone wants to maximize its potential, someone at Microsoft needs to decide at a very high level that anything that might make any user or developer feel like the phone isn't entirely theirs needs to be eliminated. Make it possible for me to make the phone truly mine. If this becomes reality, I am certain the platform will gain more fans and success than anyone would ever imagine. It's a great phone, but the handcuffs need to come off. I'm not suggesting getting rid of the managed code space for most users because I feel this is an essential part of making the phone secure from malware, but everything else is on the table including allowing those users who want to expose themselves to native code to do so. Let people do what they want with their phone, but keep the default environment safe and secure as it is today. If people want to flip the switch and turn on the danger, that should be their call.
The bottom line is, whose phone is it anyway? If I can say "mine" then then I will be able to develop and tinker without additional cost as they do on Android. I will be able to update (and restore from backup) my phone OS when *I* want to, not when the Carrier mandates it (if they bother at all). If it is my phone, I will be able to do what I want with it. People like to have control of the things we buy. We don't yet have full - or at least as much as Android - control on Windows Phone 7. I am convinced if we had it, the phone would see tremendous growth and success in the marketplace.
Just my humble opinion.