Susan IbachTechnical 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!
You use Facebook/Google+ to connect with your friends and Twitter to tell the world about what’s on your mind. But what do you use when it comes to connecting with industry professionals and looking for future career opportunities? LinkedIn is a business-oriented social network, where you do just that!
I’m pleased to announce that we opened the official Canadian Technical Students group on LinkedIn.
Join us in discussing the latest in the technical student space, find out about the latest resources and share some of the stuff you’ve been working on. You can use the group to connect with the Microsoft Canada Developer and Platform Evangelism team for all concerns and questions. We are scouting the space on a regular basis and look forward to engaging in your discussions.
See you on LinkedIn!
If you find you aren’t busy on Tuesday, August 23 and Wednesday, August 24, you may be interested in attending free an online training event that will bring you to speed on how to build Mango apps. If you’re new to building apps on the Windows Phone 7 platform or a veteran looking to understand the new and exciting features of Mango you can add to your app, this training event will be worth your while.
The event, Building Applications for Windows Phone Mango Jump Start, is literally a premier deep dive training event that is yours for the taking. It’s being run by two of the most renowned Windows Phone 7 developers in the world, Rob Miles and Andy Wigley. You may know them from the previous course they ran, the 19-Part Windows Phone 7 Jumpstart Training course which is available here on-demand for free. This new course, however, is more than just a rehash and update of the content found in that first jumpstart. This event will provide you with net-new material that will teach you how to build start of the art Windows Phone applications and games using the new features found in Windows Phone 7 Codename Mango. Sounds interesting? Well, here are the details:
Day One — August 23, 2011 | 8am-4pm PDT | Live online training
Day Two — August 24, 2011 | 8am-4pm PDT | Live online training
Despite this new training being free, you do need to register to attend, so be aware and register here. Also, if you aren’t able to attend the live broadcast, don’t worry because it will be recorded and available on-demand after the fact. I will create a follow up post when the on-demand content is available.
So why should I attend this online training (or watch the event on-demand)?
Well, one of the things that I and my colleagues have heard over and over again is that Windows Phone is the easiest platform to build for. I can attest from my conversations with the Windows Phone product teams and engineers that that this is not by accident – making the easiest platform to build amazing mobile experience on was a significant goal for the team. What this means is that you can get up to speed really quickly on building awesome apps and games on the Windows Phone platform and training courses like this one will allow you to leverage the unique features of the platform that you may not have even known existed and implement them in your app or game very quickly.
Enjoy the training!
What do Microsoft Visual Studio 2010 Professional Edition and Windows Phone 7 Marketplace registration have in common? They both cost money. Money that you, as a student, don’t have to pay!
As a reminder, DreamSpark (http://www.dreamspark.com) is your number one stop when it comes to getting great stuff at no cost. Simply verify your student identity through your school email and you’re all set to get free stuff including Windows Phone 7 Marketplace registration fee waiver. And guess what? After your fee is waived, you are free to monetize on the apps that you publish with no restrictions!
Aside from free stuff that you can get as a student, keep in mind that SDKs for pretty much anything that you want to build are always free!
The Windows Phone SDK gives the complete toolset required to begin developing for Windows Phone 7. In fact, right now you can also get the BETA SDK to test your Mango apps before the official release of Mango. And the best part, the two SDKs can be installed side by side so that you can continue your development with both streams. For those of you who develop games with XNA, keep in mind that XNA Game Studio is included with the SDK package.
The Windows Azure SDK will get your development up in the cloud fast! The SDK includes the tools for Visual Studio, Visual Web Developer 2010 if you choose not to use Visual Studio, ASP.NET MVC, and more. Also included in the package is an emulator that can be used to test your cloud app without actually having to deploy it to the cloud.
WebMatrix is a neat little tool that is designed to get your web project going minutes after installation. WebMatrix offers complete support for web development from project creation to deployment. You have quick access to the latest version of your favourite web applications including WordPress, Joomla! and DotNetNuke, Once you are ready to deploy your web project, you can do it directly from WebMatrix. To make the publishing process even easier, a hosting gallery is provided to help you find a hosting provider that is guaranteed to run your site smoothly.
And there you have it. Great resources and tools designed to accelerate your development. Oh and, don’t bother pulling out your credit card as they are all free!
A week and a half ago, we announced that Windows Phone 7 Codenamed “Mango” RTM’ed (RTM = Release to Manufacturing). This is great news for a number of reasons because Mango represents a very enticing update to Windows Phone 7 that in essence puts it at least on par with our competitors from a phone capability and experience perspective and even exceeds our competitors in a number of areas.
Some of you may have put Mango on your phone already (if you weren’t aware you could do this, check this link out as it provides some details around this process – just be aware that you need to be registered as a developer on the App Hub before you get an invite to the Beta program).
Below is a refresher of some of the great end user features that Mango introduces to Windows Phone 7:
There’s a whole lot more that users will love and that you as a developer can leverage, but you get the idea.
So what exactly does the Mango RTM mean?
Basically, the build for Mango has gone gold and has been sent to OEM manufacturers to test and prepare their phones with the build for general availability to the consumer. We have also sent this build to our carrier partners around the world so they can certify the build and prepare their infrastructure for Mango so that their Windows Phone 7 customers can download the update when the carrier is ready. We are working very hard with both our OEM and carrier partners to make sure that Mango is available to consumers quickly and so far everything is very much on schedule so I’m pretty confident that anyone that wants Mango on their phone will be able to get it in a very reasonable timeframe.
For those of you wondering when Mango will officially launch, there is no one answer as we will be launching Mango via the carriers and each carrier will have its own timeline (and before you ask, I don’t have any info as to when that will be for Rogers, Telus and Bell ). The general target we are all looking at globally, however, is later in the 2011 calendar year.
By the way, any phone that has Windows Phone 7 on it today will be upgradeable to the Mango update. And the update is free.
As a developer what can I do?
If you have apps in our Marketplace today, you may want to take advantage of the new features that Mango introduces to make your apps more attractive to your users. Mango will be delivered to phones around the world soon, so if you want to take advantage of the new Mango features in your app by the time Mango is available to the average consumer, implementing some new functionality in your apps today would be a good idea.
If you don’t have an app/game in the Marketplace today or you intend to build another app that takes advantage of Mango in time for launch, then I would suggest start coding your app/game soon!
If you are completely new to Windows Phone 7 and want to start from scratch, there are some Windows Phone 7 Developer tutorials listed in a post by my Microsoft colleague in Lebanon that teaches you how to build apps and games on the non-Mango platform. Please note that these tutorials are still relevant in the Mango world (they just don’t take advantage of the features new to Mango) and are a great place to start!
If you’re a seasoned veteran in creating Windows Phone 7 apps, then the you may want to take a look at the amazing list of resources that Larry Lieberman, a Senior Product Manager on the Windows Phone teamdocumented to get you started on Mango. You can check out his post but I’ve also reproduced it here in case you don’t want to leave this site:
Finally, if you’re building a Mango app or game right now – I’d love to talk to you! Give me a shout via the comments area of this post, use our contact page, or send me a note on Twitter!