Skip to Content

Windows Phone’s Secret Weapon: Easier App Making

Developers say iOS is easier to code for than Android, but Windows Phone may be the most developer-friendly platform of them all.
October 27, 2011

There is a non-zero chance that Windows Phone will eat the mobile market. Sure, it would require some major unforced errors on the part of Apple, but the fact that this is even in the realm of all possible things is notable.

Morfo is one of a handful of hit iOS apps that was developed for Windows Phone first

The reasons are straightforward. First, the first Windows Phone handsets appear to be a “better than good enough” option for smart phone users. Given Microsoft’s existing market penetration, that could easily mean rapid growth in the market for these handsets.

But here’s the one you probably haven’t heard of: It turns out that when you’re making cutting-edge apps using the tools offered by Microsoft and Apple, Microsoft comes out ahead – way ahead.

Or so says Mike Dussault, one of the programmers behind the hit iOS app Morfo, and formerly a developer at Valve, where he worked on everything from Half Life 2 to Portal. Dussault cautioned in an email that this is only true for programmers who are “directly using the toolset put out by Apple and Microsoft (XCode and Objective-C vs Microsoft Visual Studio and C#).”

That’s a big “if,” given that many developers are using tools like Appcelerator’s Titanium platform in no small part because they enable cross-platform development.

But for developers like Dussault, whose background is in building the 3D engines that power today’s first person shooters, there simply isn’t any substitute for getting as close to the platform as possible. This should be true of any game that hopes to push the capabilities of newer phones or needs to be optimized for older models. (Morfo’s 3D face-warping technology being a perfect example of this.)

Here’s Dussault’s complete rundown of why he prefers to develop using Microsoft’s toolchain first, and then port it to iOS. (Which is no small task – he told me it took him as long to port Morfo to iOS as it took him to build it for Windows Phone.)

Advantages that I see in Microsoft’s stuff vs Apple’s:

•WP7 uses C#, and C# compiles practically instantly, making for more rapid iteration times. Objective-C and C++ compile very slowly by comparison.

•Visual Studio’s debugger is unmatched in performance, features, and stability. XCode’s is an unstable, slow thing built on top of the arcane gdb.

•WP7 games are based on a framework called XNA that Microsoft includes. XNA takes care of a lot of the low-level headaches of graphics, audio, and input processing. On iOS, you have to write a bunch of (relatively) low-level code to get anything working.

•IME, WP7 required a lot less optimization to get things running quickly. As an example, text rendering performance was a complete nonissue for Morfo under WP7, but on iOS I had to write a lot of custom code to cache the rendered strings in OpenGL textures just to get the performance to match.

•The way iOS handles API versioning is really dangerous. Many functions throughout their SDK can just crash the program because they don’t exist on older OS versions. You have to check which functions you do have available, and it’s very easy to have things test fine on all the devices you have, then you ship and users out there with OS versions you didn’t have get crashes.

Of course, Microsoft’s developer-friendliness didn’t save Windows tablets when Redmond tried to introduce the iPad form factor long before the iPad existed, and it’s no guarantee that Windows Phone will flourish, either. There are still only 1 percent as many apps for Windows Phone as for iOS, and developers report working all-out just to keep up with Apple’s platform. But it’s early days yet, and if the handset makers Microsoft is partnering with can create handsets that people want, the developers will follow.

Keep Reading

Most Popular

Large language models can do jaw-dropping things. But nobody knows exactly why.

And that's a problem. Figuring it out is one of the biggest scientific puzzles of our time and a crucial step towards controlling more powerful future models.

OpenAI teases an amazing new generative video model called Sora

The firm is sharing Sora with a small group of safety testers but the rest of us will have to wait to learn more.

Google’s Gemini is now in everything. Here’s how you can try it out.

Gmail, Docs, and more will now come with Gemini baked in. But Europeans will have to wait before they can download the app.

This baby with a head camera helped teach an AI how kids learn language

A neural network trained on the experiences of a single young child managed to learn one of the core components of language: how to match words to the objects they represent.

Stay connected

Illustration by Rose Wong

Get the latest updates from
MIT Technology Review

Discover special offers, top stories, upcoming events, and more.

Thank you for submitting your email!

Explore more newsletters

It looks like something went wrong.

We’re having trouble saving your preferences. Try refreshing this page and updating them one more time. If you continue to get this message, reach out to us at customer-service@technologyreview.com with a list of newsletters you’d like to receive.