These postings are provided "AS IS" with no warranties, and confers no rights. You assume all risk for your use.
Paul LabergeDeveloper Evangelist
Frédéric HarperDeveloper Evangelist
Everyone knows how competitive the mobile space is. There are a wide range of platforms available for you as a developer to adopt and build your mobile app masterpiece, each with their pros and cons. So Microsoft introduces a new mobile platform (Windows Phone 7 and now the upcoming Mango update) which basically is a reset of the Microsoft mobile strategy and therefore started from scratch. In the many conversations I’ve had with mobile developers about why they should care about Windows Phone now and in the future, the most common questions I would answer revolved around the fact that Windows Phone was essentially net-new and therefore at a disadvantage from its competitor platforms.
Those types of questions are certainly fair and I’m sure many of you reading this post are even asking yourself the same questions. Hopefully by the end of this post, you’ll have a better understanding of Microsoft’s mobile strategy, why we are taking a long term vision approach to our platform’s success, how you as a mobile developer can take advantage of the fact that Windows Phone is for all intents and purposes “new” again and finally provide you with some resources to help you porting your apps from other platforms onto the Windows Phone platform.
Microsoft’s Mobile Strategy
Believe it or not, Microsoft has been in the mobile game for around 10 years. We started off with the Windows CE operating system and grew it from there. It was primarily seen as a business platform (strengths being email and calendaring) and Microsoft continued to evolve the platform along those lines. As smartphones became more consumer focused in the past 4 years, the popularity of the Windows Mobile (the old branding for Microsoft’s smartphone platform) waned. This decline created an opportunity for Microsoft to virtually set a completely new course and build a whole new mobile experience that focused on user experience. The result is what you see today: Windows Phone 7.
One of the key decisions that was made around this clean slate approach was how we work with partners in the new Windows Phone world. It’s a little known fact that Microsoft makes very little money from customers in direct channels; virtually all of the revenue Microsoft makes is through our partners. Clearly our partners, from OEM manufacturers to mobile carriers to app/game developers, were going to be front and center in our strategy. We have also learned very valuable lessons from our previous mobile platforms, specifically around what works and what doesn’t. At a very high level, this is what the Windows Phone team decided about going to market with partners:
What about Nokia? Nokia is a very strategic partner with Microsoft. You’ve probably seen the media coverage and official press releases from Nokia and Microsoft stating that Nokia will be ceasing to install their Symbian OS on their smartphones going forward, instead adopting Microsoft’s Windows Phone OS for their smart devices from now on. This is a key relationship for both Microsoft and Nokia and is significant in a number of ways:
Making it easy for developers building apps on Windows Phone
As I had stated above, one of the main goals and a key factor to the success of Windows Phone is to make it as easy as possible to allow you as a developer to build apps and games for the platform and to monetize them. This means making the tools easily accessible (read: free) and getting up to speed quickly. It also means making it easy to publish your apps and games on our Marketplace yet making sure that quality is maintained on the apps. Finally, it means making sure that you have the tools and opportunity to both understand how your app is trending in popularity and making it fair so that the best apps get featured.
Making the tools easily accessible and getting up to speed quickly
This is simple. Literally, everything you need to start building apps is on our App Hub. This includes the tools download page, tutorials, partner resources, and community support.
If you register as a developer (roughly $99), you get more than just the ability to publish apps and games to the Marketplace. You also have the ability to publish XBOX Live Indie games on the XBOX Live Marketplace (a great opportunity to cross-pollinate your game if you’re so inclined). We also provide you with a large number of tools to help you analyze the performance of your apps and games in the marketplace. We also provide extra tooling for you for free to help protect your code assets from reverse engineering and the like as well.
Finally, even though the tooling is free and everything you need to build apps and games is included in that tooling, you may be interested in our paid tools as well (namely Visual Studio Professional and above, and Expression Studio Ultimate). These paid tools provide a great deal of extra value to you if you are interested in native source code control right out of Visual Studio, enhanced testing tools (including load testing and the like), SketchFlow (rapid wireframing and prototyping) and many other features that may make your job a whole lot easier.
Make it easy to publish apps and games
As long as you are a registered developer on the App Hub, you can publish Windows Phone apps and games. To make it as easy as possible to get you from an app/game idea to published in Marketplace, there’s more than just great tooling that you need to make it happen. First off, all of our certification guidelines are publicly available (all apps in the Windows Phone Marketplace are certified by Microsoft before they are published). If you follow those certification guidelines, you are golden. However, if you do fail certification for whatever reason, we provide you with a detailed report outlining what failed and what certification guideline was violated in the process. The report will also give you a failure consistency statistic (for example “Failed 8/10 times” or “Failed 10/10 times”) so you know how reproducible the error is. (By the way, in case you’re wondering, app and game testing goes through both automated/machine testing and human testing.)
Determining how successful your masterpiece is in the Marketplace
Once you’re published (congrats!), you’ll be able to keep tabs on how well your app/game is performing in the Marketplace. We provide reporting analytics for you to determine downloads, usage statistics and even app failure reports among other things. That way you can take action based on the information and make informed decisions on how to promote your app next.
Speaking of promotion, we try to be as fair as possible with the featured spots on our Marketplace. If you have an app or game that is great and popular, we do give consideration to your app/game in one of the featured spots. While nothing is guaranteed, I know this is a question that gets asked a lot and the answer is if you build something awesome that lots of users like (by downloading and actually using the app), there is a better chance of getting some Marketplace recognition for your work.
But I don’t build apps for Windows Phone today – in fact I have apps on competitor’s platforms. How do I start?
I’m glad you asked. We recognize that our competitors make great mobile platforms that allow developers to make awesome apps and games. We also believe that your apps and games on those platforms would look even more awesome on our Windows Phone platform! To that end we published some content and guidance on how you can port your masterpieces from iOS and Android onto our platform – again, all for free! While there is no one single bullet (or tool in this case) that will automatically translate iOS and Android code to .NET code for Windows Phone, the resources below provide some great guidance on how to get from A to Windows Phone more quickly.
Calling all iOS Developers!
If you build apps for the iPhone/iPod, we have some great information for you on how to port your app to Windows Phone. Below is a list of these resources:
Calling all Android Developers!
If you build apps for Android, we also have some great information for you on how to port your app to Windows Phone. Below is a list of these resources:
There you have it. Windows Phone represents another channel for you to increase your app’s or game’s popularity across multiple platforms. You don’t need to abandon one platform in order to adopt another – this has been proven time and time again in technology. Clearly, co-existence can be a winner. So if you’re thinking of trying out Windows Phone as your next platform to adopt, hopefully the resources in this post can get you more than started.
Finally, if you are porting your app from another platform onto Windows Phone, let me know – give me a shout on Twitter!