A month ago, Microsoft announced Windows Phone 7 Series at Mobile World Congress in Barcelona. Since its announcement, the newly-rebooted platform has been polished to a state where it's now ready for developers to take charge and start making applications. Almost everything we've suspected has turned out to be true; Phone 7 Series will heavily make use of cloud services such as Xbox Live, and enable huge amounts of code re-use for game and software development with XNA and Silverlight. Microsoft has learned from the success of other platforms how important ease of application development is to platform success, and at MIX10, the emphasis is entirely on developers. Or rather, "Phone Developers" as Steve Ballmer rather humorously suggested:

Phone Developers are Critical

Additional platform details have been announced, including disclosure about both the development framework, tools, and probably most importantly the app marketplace structure for Phone 7 Series. Development will happen atop Microsoft Silverlight 3.0 and Microsoft XNA platforms, leveraging tools like Visual Studio 2010 for Windows Phone, Expression Blend 4 for Windows Phone, and XNA Game Studio 4.0 for Windows Phone. As we suspected earlier, these two frameworks (Silverlight and XNA) lie at the core of Phone 7 Series. Microsoft has been adamant that both Silverlight and XNA developed applications are fully hardware accelerated, and while there's still lag in some applications, the software they've shown thus far is clearly better optimized than it was at MWC.

Microsoft is wasting no time giving developers already familiar with XNA and Silverlight the tools necessary to immediately start building software. The SDK is available and ready, complete with an emulator and support for testing on hardware as soon as it starts shipping. All three of the development tools (Expression Blend, XNA Game Studio, and Visual Studio) are being made available immediately for free at http://developer.windowsphone.com/ . For all intents and purposes, software development for the platform begins now.

Microsoft is taking a two-route approach to application development. They're hoping that the vast majority of productivity, office, and otherwise non-gaming applications will be developed in Visual Studio 2010 or Expression Blend 4 and run atop Phone 7's Silverlight framework. The entire Silverlight 3.0 platform is included and running atop hardware, including a small handful of Silverlight 4.0 features.

A different subset of gaming applications or programs that leverage 3D or require "twitchy response" (like FPS titles), however, will run atop XNA. Once a developer chooses to develop software in one of the two camps, it sticks there for its development cycle. With time, Microsoft plans to bring down these barriers between XNA and Silverlight, but launch this upcoming holiday 2010 is slated to employ this two-camp mode.

This strongly parallels the route that Palm is taking with WebOS, using a basic SDK for most applications, and a "Plug-In Development Kit" (PDK) that allows closer to metal code to run for applications that require better performance and leverage 3D strongly. This model is an interesting balance between both trains of thought; beginning developers looking to make simple applications fast can easily develop with tools like Expression Blend 4. Programmers looking for a closer to metal framework or porting existing Xbox 360 and PC games can choose to use XNA Game Studio.

Probably most interesting, however, is just how much of the code can be shared between PC, Xbox 360, and Windows Phone 7 Series platforms. Microsoft claims 90% or more is more than possible. They demonstrated a title designed in XNA Game Studio 4.0 developed in just 3 weeks called The Harvest which runs almost identically on all three platforms. You can see the game in action for yourself:

I had some concerns about the performance of The Harvest demo and asked a number of Microsoft Game Platform Strategists and XNA tools developers some questions. Although the game clearly stuttered in a few points and had a somewhat variable FPS at times, I'm told that this is not representative from a performance standpoint; obviously this isn't a shipping game. For one, the demo uses the same artwork and textures as both the desktop PC and Xbox 360 versions. For two, the entire demo was developed in just under 3 weeks. Third, I'm told that that the display link (Joe Belifore used a USB link for presenting the display during the keynote) might also be a culprit. Either way, it's reasonable to expect performance to improve drastically.

Microsoft's App Store... Er... Marketplace
Comments Locked

24 Comments

View All Comments

  • Guspaz - Tuesday, March 16, 2010 - link

    Ultimately, XNA is still .NET, meaning that it's analogous to Java apps on Android. The performance is quite good, but it's probably not AS good as native code would be.
  • medi01 - Tuesday, March 16, 2010 - link

    JIT compilers theoretically are producing faster code than native compilers.
    But android's Java VM has no JIT. I wonder if MS W7 has it.
  • PsychoPif - Wednesday, March 17, 2010 - link

    It is the .Net Compact Framework, so yes, JIT compiler.

    But don't quote me on that.
  • pjladyfox - Tuesday, March 16, 2010 - link

    This is the one big thing that will make or break any phone running this OS for me. I currently have an iPhone and, while the phone is great and I do love it, I can't STAND the fact that I have to have a frigging data plan tied to the phone. You couple that with the fact that most places where I would use any "data" feature I wind up switching over to wifi, either at Starbucks or Borders, mainly due to the lackluster 3G coverage and signal in the Bay Area.

    You give me the ability to get a phone running this OS without having to have a data plan and I'll get one in a heartbeat. Otherwise, I'll stick with my original plan by switching over to a iPod Touch and a basic cellphone when my iPhone contract is up later this year.
  • CSMR - Tuesday, March 16, 2010 - link

    Of course. Microsoft isn't just manufacturing one model of the phone. You will still get bundling of some phones with contracts, unfortunately not an illegal practice, but you will be able to buy unlocked phones just as you can now.

    However data connections are pretty useful, if you don't like contracts fair enough but I would try to find a pay as you go provider.
  • pjladyfox - Tuesday, March 16, 2010 - link

    The problem is that even if you get an unlocked phone most providers will force you to sign up with all of the data plan baggage that goes with it. I was considering unlocking my iPhone about a year ago but I spoke to AT&T and Verizon and they both refused to let me sign my phone up without it.

    I even went so far as to try asking them both if there was a smartphone that you could get WITHOUT signing up for an expensive plan and both said no giving some bunk answer about "x phone needed it" which considering the ones I would choose would have wifi enabled on them I was'nt buying it. My guess is that, for whatever reason, the handset maker in cahoots with the providers setup the phones in such a way that they "phone home" every so often setting up the "need" for the data plan.

    If these companies want smartphones to take off they need to either make the data plans cheaper or give us the ability to turn off the "phone home" feature so we can use the phone as a phone without an expensive data plan. -_-
  • kmmatney - Tuesday, March 16, 2010 - link

    You can always get a basic phone plan using a cheapo phone, and then swap over the SIMS card. I'm able to swap my SIMS card between a basic nom-smart Samsung phone and my iPhone.
  • strikeback03 - Tuesday, March 16, 2010 - link

    Verizon has recently started requiring a $10 a month data plan on non-smartphones which didn't used to require a data plan, so obviously they are just looking to collect as much money as they can. I have heard that on business accounts the data plan is optional, but I do not know for sure.
  • braveneworld - Tuesday, March 16, 2010 - link

    Developers, developers, developers, except for developers that don't want to share their code with MS or use the app store!

    Seriously, this is one of the main reasons the enterprise uses win mobile; you can create and install your own software without getting 'approval' from big brother MS.

    In addition, if you use an app that you made that provides your company a competitive advantage, why in the world would you want to share it with your competitors? Not all software developers write software to sell!
    They are going to drive many customers straight into RIM's and Google's, or even Palm's arms.
  • zicoz - Tuesday, March 16, 2010 - link

    Paul Thurott seems to have some good news for you.

    "And this summer--I'm thinking around the time of TechEd 2010 in June--Microsoft will announce that businesses can deploy internal Windows Phone applications privately using an as-yet unnamed "common distribution system." (I'm guessing this means WSUS or System Center Configuration Manager.)"

Log in

Don't have an account? Sign up now