Why I’m Not a Windows Phone Developer [Updated]

by Joey deVilla on April 6, 2013

SharePoint: When 24GB and the Fastest i7 Won’t Cut It

For some people, there’s no thing as having too much hardware. I know a few guitar players who’d salivate at the chance to get their mitts on this beast:

12-neck guitar

12-necked guitar created by Yoshihiko Satoh.
Click the photo to see the full story.

It may be the same case if you’re a SharePoint developer. Here’s an excerpt from an article written by Sahil Malik titled Upped My Main Dev Machine, where a developer talks about what he did to speed up some painfully long build times (with some formatting and emphasis added by me):

Last Friday, I was busy compiling a big project in my consulting life. I realized, it takes a good 5-10 minutes for the project to compile and deploy.

scumbag sharepointOn my main desktop, I was pimping 24G of RAM and a Core i7 930 processor.

The problem wasn’t those 5-10 minutes, the problem was, I got distracted, started watching funny dog videos on youtube, and well – lost time, lost track of what I was doing. Quite unproductive.

So, I got in my car, drove to a local hardware store, and bought new computer parts. 3 hours later, I have my new rig running.

I now have a gigabyte x79 up4 motherboard, Corei7 3930K processor, and 64G of RAM.

I can understand needing that kind of setup for computationally intensive work — weather simulations, AI, protein folding, controlling the flight of SpaceX ships — but for compiling  Sharepoint applications? We’re not talking about multidimensional matrix math, Fourier transforms, or Watson-style artificial reasoning, but building the sort of applications that SharePoint was meant to host: web applications and sites, document sharing, blogs and forums, and list management.

Requiring such big iron to build relatively mundane applications is like requiring all the architecture, engineering and construction teams behind the Burj Khalifa in Dubai to renovate your kitchen.

elliott electronic computer

It shouldn’t be surprising that many people have started looking for alternatives:

box sharepoint billboard

Click the photo to see it at full size.

Why I Don’t Develop for Windows Phone

Since I was once a Microsoft developer evangelist specializing in Windows Phone and a designated Windows Phone Champ, I’m occasionally asked why I don’t do Windows Phone development anymore.

One of the reasons is quite simple: I can’t. I’d need new hardware. Even more so than SharePoint developer Sahil Malik. At worst, he has to wait ten minutes for each build. I can’t even do that.

Here’s my best Windows machine at the moment: a late 2008-era Dell Latitude E6500 with 8 gigs of RAM, with a Core 2 Duo P8700 running at 2.5 GHz. It’s hardly top-of-the-line, but when it was used as a developer demo machine at Microsoft, it had no problem building Windows desktop apps, web applications with ASP.NET MVC or Windows Phone 7 apps. Later, after it was given to me as a fabulous parting gift, it proved to be a fine machine for building PHP, Rails and CoffeeScript apps under both Windows and Ubuntu. Even though it’s not my main development machine, it still performs yeoman service at my home office.

dell latitude e6500

My other Windows machine is my living room entertainment/casual hacking box, a 2009-era HP IQ526 TouchSmart touchscreen all-in-one with 4 gigs of RAM, powered by a Core 2 Duo T6600 processor. I used a similar machine at Microsoft to demo Windows Phone 7 app and Android app development.

hp iq625

Both of these machines are powered by processors that don’t support SLAT — Second Level Address Translation. The current version of Windows’ Hyper-V virtual machine, on which the Windows Phone 8 emulator runs, requires SLAT. i3, i5 and i7 processors have SLAT, but not the older Core 2s. My Windows machines may not be new, but they do a fine job running 64-bit Windows 8, the current edition of Microsoft Office, Adobe CS6 applications and more. Oddly enough, I can develop Windows 8 desktop and tablet apps with them; I can even develop Android and BlackBerry apps. I just can’t use them to develop Windows Phone apps. And I’m not the only one in this boat.

Beside my HP Touchsmart is this 20″ iMac that’s even older — it’s from mid-2007 and sports a Core 2 Duo T7300 processor. I’ve maxed out its RAM beyond the advertised 4 gigs; it turns out that you can take it up to 6:

2007 imac

This machine came out almost six years ago. That’s around the same time as the original iPhone and three years before the iPad. In spite of its “age”, it runs the current version of MacOS (10.8, a.k.a. “Mountain Lion”) as well as Xcode and JetBrains’ AppCodesimultaneously (that’s AppCode 2 you’re seeing on the screen right now). Along with being a fine Rails, Django, and all-those-crazy-JS-frameworks dev machine, it does a fine job of building iOS apps for present-day devices, whether via Xcode, Xcode + AppCode, Appcelerator Titanium, RubyMotion or what-have-you. It’s also a nice Android development machine.

And Then There’s the Market

stop trying to make windows phone happen

If my hardware problem wasn’t a big enough barrier, there’s also Windows Phone’s standing in the market. Here’s a chart that was published yesterday in a Splat F article, Microsoft’s Mobile Comeback Isn’t Happening:

microsoft mobile comeback not happening

Click the graph to see it at full size.

In spite of the fact that Windows Phone is outselling the iPhone in Elbonia, there just isn’t enough demand, either in terms of quantity or quality. Windows RT’s prospects are even worse.

I’ve decided that the best mobile development self-education approach for me is: teach myself iOS development first, Android development eventually, perhaps Appcelerator, and barring any dramatic changes in circumstance, don’t bother with anything else. I’d love to learn how to develop for all the mobile platforms, but I just haven’t got the time.

Update: I added the graph from Splat F, which David Janes pointed me to. Thanks, David!

{ 9 comments… read them below or add one }

1 David Janes April 6, 2013 at 5:47 pm

“Microsoft’s Mobile Comeback isn’t Happening”. link.

Honestly, the last straw was the incompatibility between 7 and 8. Just constantly f-cking people over.

2 Colin April 7, 2013 at 8:41 am

Booooooo :)

3 Philip April 7, 2013 at 6:25 pm

What will be interesting to see in the not too distance future, will be the sudden drop in the Android market.

When Samsung release their new OS mobile devices and move away from Android the overall percentage will be under 17%. What do you do then. Continue to support it, or move on to the new shiny Samsung OS.

This move can only be good for Apple as the market will eventually be fragmented even further.

4 Guy Barrette April 7, 2013 at 7:34 pm

Core 2 Duo machines only? You must be joking.

5 Joey deVilla April 7, 2013 at 8:36 pm

Guy Barrette: I do have an i7 machine; it’s this one:

6 Guy Barrette April 8, 2013 at 7:22 am

Why don’t you dual boot on your Mac?

You know what’s nonsense? The fact that developing Windows Phone 8 apps require Windows 8 PRO. That’s nonsense!

7 Joey deVilla April 8, 2013 at 11:00 am

Guy Barrette: I was under the impression that Visual Studio 2012 doesn’t work under dual-boot for various voodoo-like reasons. I’ll give it a try…

8 Guy Barrette April 8, 2013 at 12:15 pm

On my Macbook Air, I use VMware Fusion to run Windows 8 and VS 2012 without problems. Fusion’s Unity mode brings all your Windows apps right into your Mac desktop.

Here’s a blog post explaining how to set Fusion, Parallels or Boot Camp on your Mac so that you can do Windows Phone 8 development:
http://blogs.msdn.com/b/interoperability/archive/2012/12/21/how-to-develop-for-windows-phone-8-on-your-mac.aspx

9 John October 8, 2013 at 10:24 pm

Love the guitar photo haha! I agree on most points but I think windows has a few things up there sleeves still. I’m still getting use to SP 2013…
Cheers!

John.

Leave a Comment

Previous post:

Next post: