|
During the Q&A period after one of my sessions at the iPhone Developer Summit last Thursday, there was someone there from Microsoft Competetive Intelligence. She asked myself and some other folks who were lingering nearby to describe, in our unbiased opinions, what we thought was wrong with Windows Mobile.
Talk about a can of worms. My unbiased opinion is actually pretty close to my biased opinion. I've written Compact Framework applications for Windows Mobile and Pocket PC 2003 and have written Embedded VB and Embedded C++ apps for Windows CE, and I've even written applications for Palm OS ($%#@!#@! endian conversions can bite me!). The Compact Framework makes developing for Windows-based mobile devices brainless, easy, and extremely productive. That said, Windows Mobile is fugly.
My response to her was that Windows Mobile is a crippled, shrunken version of Windows. By this I mean that when you are using Windows Mobile, you do not ever, at any point, feel as though you are in the middle of a user experience designed for mobile users and mobile devices. In fact, what you really feel like is that you are mired knee-deep in a bastardized Windows desktop experience that has been hacked, slashed, cut, and mangled until it is nothing more than a limbless victim bleeding out on the mobile device battlefield. Granted, even cut and slashed as it is, its an extremely powerful OS rich with capability. But that's the problem: it has capability, but it has a terrible experience.
Why does a mobile device need a Start menu and/or button? Basically what you are left with is the feeling that someone thought (quite erroneously) that since all mobile device users are at some point Windows desktop users and said users are stupid and incapable of adaptation that Windows Mobile must look and feel as much like what those users are familiar with on the desktop as possible. This is stupid and this is why no one actually wants to use Windows Mobile! Think about it, when was the last time you, as a windows mobile device owner, actually felt pleasure while using your WM device? When was the last time you said "Awesome, I'll just whip out my WM device and we'll check that (insert query) online!" Probably never. In fact, the conversation usually goes something like this:
Buddy: Hey, when is (movie) playing?
You: Hellifiknow.
Buddy: So get off your ass and check it online.
You: Dammit. No laptop nearby.
Buddy: Don't you have net access on your phone?
You: Yeah, but its Windows Mobile.
Buddy: f**k. Well, I'm gonna go get a coffee while you check.
You: Dammit. You check.
Buddy: You check.
... and so on
20 minutes later someone has suffered through IE on the mobile device or, if they're lucky, they have a movie time application that they use that they also suffered through (only less so than with IE)
What's the moral of the story? Windows Mobile devices are a means of last resort. A last ditch effort. A necessary evil. People use them because they have access to corporate e-mail, some of them play music, and they have access to a plethora of ugly-ass applications with a few gems hidden in the endless sea of available shareware/freeware apps. When a WM owner needs to check something online using a browser, it involves cringing, sighing, or just giving up.
Developers writing WM applications need to exert tremendous influence and effort on the lowest level functionality to avoid and escape the terrible experience and provide something that users actually enjoy using. Windows Mobile was not designed from the ground up to be a mobile experience. Using WM feels kludgy, slow, unproductive, and alien. If you are going to build a mobiel device that people enjoy and people want to use, then the first step is to actually design an experience that fits the mobile form factor and the mobile digital lifestyle. Anything less is a hack. The only reason why WM has so much proliferation is because it is the defacto standard for corporate mobile devices. It is like the phone company of the days of old. Service sucked, support sucked, prices sucked, but people used it because they had to. Once people had other options (VoIP, voice-over-cable, cheap cellular, low-cost competitors) they took them and they took them in droves.
What will happen to Windows Mobile once people have an alternative that is both pleasant to use and works with both their corporate and personal lives? Adapt or die. At some point Microsoft must rearchitect Windows Mobile from the ground up to be a compelling mobile user experience.
- Anyway, this has been a verbose description of my own two cents. Your mileage may vary :)
I wonder how bad windows mobile will start to suffer now that Apple bought
the ability to access exchange servers directly from the iPhone.
I've tried to love WM, I really have. I've used it since the first
smartphones came out (even had one of the Compal test devices), wrote apps
for it in CF, even became an MVP for it for 5 years or so.
I too have really tried to love WM. Back when I was actually working on
.NET I did some compact framework work - sounded like a great idea. Writing
C# to run on pocketpc devices in the same visual studio etc. I had no end
of hell with the devices, they really, really do suck!
Kevin, you say it is incredibly easy to develop apps for WM. From what you
have seen of the iPhone SDK, and without going into NDA stuff, what is your
opinion on developing apps on iPhone? Could the easy of use, plus ease of
development be a slam dunk for iPhone (and it's users)?
Go get the free iPhone SDK and get it now. Don't write another line of
Compact Framework code unless forced at gunpoint. Given who I am and my
background, I think this should give you some insight into where I am right
now :)
You could just as easily argue the same about Vista.
I fully agree with you that windows mobile seems to carry to much of
windows baggage which is simply not required. I referenced your blog in my
recent post on my blog.
As I said, the .NET Compact Framework is a huge, massive pile of features,
functionality and has tremendous power. You can do a great deal of things
with the CF that make mobile devices running WM extremely powerful. That
doesn't change the fact that the OS is a horrible mess :)
You still haven't explained why the WM OS itself sucks so much. If you
don't like having a Windows Start button, OK, *whatever* - it doesn't
bother me. That's a UI issue. There's no technical reason you couldn't
have an iPhone workalike sitting on top of Windows Mobile.