Top

Windows Phone 7 Anticipation

April 3, 2010

I am definitely looking forward to developing for Windows Phone 7.

After the absolute humiliation that comes with developing for the iPhone (or, more to the point, passing through Apple’s brain dead review process), I almost gave up on mobile development.  That’s a shame, because it isn’t hard to see that mobile devices are going to be our main connect point, if they aren’t already.   Don’t get me wrong, I hardly expect Microsoft to get everything right.  But they sure as hell can’t do any worse than Apple did.

Now, whenever I say something like that, I get a bunch of comments and emails from people about how Apple’s app store was a huge success (for Apple), how I’m just complaining because I failed to succeed on the app store, or how so-and-so made a million bucks so therefore the app store was a success.  Here’s the thing: I made a LOT of money on the app store in the past year.  It still sucks.  Apple still sucks.  Developer after developer offered suggestions, then begged for changes, then complained, then pleaded, then ultimately lost interest and abandoned the platform and Apple didn’t appear to care, if they heard it at all.  From a developer’s point of view, the app store was a miserable landscape.  Yeah, you could make some money there (if you were one of the lucky ones), but at what cost?  Your dignity?

And yes, what makes the app store bad for developers makes it bad for consumers.  150,000 apps, and most of them utter garbage.  The marketplace was so hostile and controlled that ultimately exited developers either scaled their ideas down to almost nothing in order to justify the effectively mandatory $.99 app price, or abandoned their ideas completely because the risk was way to great.  I saw great apps completely fall flat, while apps with names like “SUPER BOOBS” made it to the top 10.  How do you sit down with a paid team of developers and put any kind of effort into a project when you know that your odds of failure are huge, while an app that takes a day to put together (if that) can rake it in?

I have bigger gripes though.  Objective-C.  From day one I expressed my utter disbelief that this odd little language was the only way to develop for the iPhone.  “But Objective-C is great!” people said.  “Learn it, stop complaining, it’ll take you a day or two” they said.  For the most part, they were right.

After a year of working with Obj-C, the problems for me are still vast.  Redundant code that makes you want to pull your hair out (declare variable, declare outlet, synthesize ARHGHDGHDH@!!!!).  There is practically no available code to pull from.  With Java or C# you’ve got MASSIVE amounts of code to drop in.  What exactly is out there for C these days?  Ever seen a C library for the Facebook API? Or Twitter?  Any good C game libraries or Obj-C sound/music libraries?

What excites me about  developing for Windows Phone 7 is C# and .NET.  I finally get it — where they were going with .NET — and — most impressively — XNA.  When I first started learning C# I couldn’t imagine releasing a product that required .NET.  I still am pretty hesitant about it.  When I started digging into XNA, I loved it.  But while I liked the idea of using it to develop for the 360, I panicked when I looked at distributing XNA games for Windows.  But now with Windows Phone 7, it makes sense.  It makes perfect sense.  Phones and mobile devices are going to have .NET and XNA by default, so distributing is going to be a snap.  Because C# is a fast language to code in, and XNA handles so much, developing games for Windows devices is going to be fun and fast.

I’ve already joined the developer program, and put together a few test apps.  So far, so good.  I like what I see.  I hope Microsoft has been paying attention to Apple.  Microsoft has always had the philosophy that happy developers mean more Windows users, and I hope that won’t change with Windows Phone.  Apple practically loathes developers, and that’s why this one is jumping ship as soon as the first Windows devices hit the market.

Bottom