Thursday, June 21, 2012

WINDOWS PHONE 8 … YOU MEAN 7.8? NOPE …

Microsoft is letting a very interesting group of cats out the bag these days. First the news of its tablets (Surface) and now the news related to a new phone: Windows Phone 8.

You may be probably thinking that is not a new phone after all but a whole rebrand of an existing phone packed with a future update. If that is the case, you would be wrong. So wrong in fact, that you missed the lines that explain/claim that:

  1. The phone will be bundled with a new OS, which require a more powerful hardware than the one existing on WP7 devices,
  2. Windows Phone 7 devices will NOT be receiving this new OS but an update (to version 7.8), which will help to reduce the UX-gap between phones, and
  3. The new devices will allow devs to use native code and do native calls. Yes, C/C++ …

Let us talk about each of these points for a moment. Shall we?

(I) The new OS

To keep the story short: if Windows 8 will be out soon, what else could you expect?

Now, the long explanation …

Microsoft is trying to extend the success around the XBox 360 console –yes, despite the RROD problem- to other platforms in order to unify the user experience on the multimedia front to compete with others big players for their marketshare, like Apple and Google. And the new OS is a step in that front.

A broad set of hardware will be powered by the Windows 8 OS in the near future (PCs, tablets, …, consoles?), which in turn will help MSFT to position as a strong provider of a unified multimedia experience. So, providing a new OS branded with the number “8” for window phones is something one could have been expecting some time ago.

Will its strategy succeed? Well, that leads me to the discussion of the second point.

(II) The “Old” Phones

In my previous post, I briefly mentioned the doom of a device that seemed promising by the time it came out: the Zune HD.

Let me be clear here. The first Zune devices had nothing to offer against their “i” counterparts. But that was not the case for the Zune HD: neither in hardware, nor in software.

The Zune HD device opened the door for the Windows Phone and also influenced, to some extent, the look’n’feel of both, the current 360’s dashboard and the UI of the “8-based” OS. And yet, it was left behind in the dust …

Now, if the “old” 7 phones will be receiving an update in order to let users experience a taste of what the new OS will offer, why mentioning what happened to the Zune, then?

Because users (customers and devs) could deem this behavior as a tendency, as if the were treated as mere beta testers of MSFT’s experiments with mobile hardware: Zune, Zune HD, the infamous Kin, developer WP7 devices, and eventually retail WP7 devices.

Not to mention that this may represent a slap in the face to one of its newest and major partners, Nokia, which recently released into the market a new line of WP7 devices!

One can understand that a new OS may require new hardware to enjoy the full set of features it might offer, but rushing and or pushing things into the market this way, in a track-record of “no-more-support” deeds in a short period of time, could only become eventually a winning move if MSFT shows a strong commitment from now on to support its upcoming devices, for a reasonable minimum number of years.

Make no mistake, I am a MSFT supporter, but it does not prevent me to chime in and do a wake-up call when I see a warning signal.

As usual in life, time will tell …

(III) Native Code

“Developers, developers, developers …”

Allowing native code on a Windows Phone is a fantastic move!!!

But stating that by allowing native code it would be easier to port existing frameworks to the windows-phone environment is, imho, vague. It depends on a combination of factors: how many platforms you want to support, the techonologies you use to develop apps, and or how sensitive you are to fragmentation of code (since this feature will not be available to WP7 apps), to mention just a few.

Now, does this mean that you must use native languages for WP8? The answer is “No”. You can still use managed ones like C# (specially if you want to create apps and games for both, WinPhone 7 and 8 devices).

Does this mean you can still use XNA to produce games for WP8 devices? In spite of the fact that more and more it seems that XNA will be no longer updated –and no other official managed solution would take its place, the answer is “Yes”.

However, the answer for XNA-based games seems to be “No” for other platforms like the new “Surface” tablet and Windows 8 on ARM (on desktop mode you could still use it), unless you switch to unofficial solutions like Monogame or ANX.

Personally, I do not care whichever languages/techs a dev picks to develop apps and or games. But I do care about using the same languages/tech for the most amount of target platforms out there to economize resources. That is why solutions like Unity3D are so popular these days …

So I hope MSFT eventually returns to the dream of “The N Screens”, allowing for all its devices with the less amount of key differences (that is, on what can be used/called/consumed), both, native languages and also native calls from managed code, so that devs can pick the right combination for their needs and or preferences …

To wrap it up, some may be in favor, some may argue about pros and cons, and some may complain, but let us be honest and recognize that interesting times lay ahead.

The only news left behind –at least, for now- is related to the rumored XBox 720. But who knows? Maybe we will receiving some official words from MSFT sooner than we expect …

Cheers!
~Pete