Thursday, February 18, 2010

The New(?) Microsoft Give Us a Three-Way Horserace

For the last few months, my personal party-line has been that the cell phone OS wars are over: it's now iPhone and Android phones, with all other OS'es (BREW, Symbian, Windows Mobile, etc) playing the role of Dead Man Walking.

I had heard of the "Zune Phone," of course, as well as "Project Pink," "Windows Mobile 7" and a dozen other working names out of Redmond. However, like everyone else, I had made the mistake of counting Microsoft out of the game. They're old. They're slow. They have crappy marketing. Everyone hates Windows Mobile. (I mean, a stylus? Seriously? Who uses that?)

That was stupid not only on my part, but on all the Apple Faithful out there who have been taking joy at the iPhone's trouncing of the mobile market. I don't blame them, I blame myself. I'm 900 years old, you would think I would have learned by now: Microsoft iterates towards a goal line. They take the criticism, the market hostility. And they wait and they watch and they learn. That's what they do. That's what they have always done.

They watched Atari and Commodore, and they built MS-DOS (tricking the Great IBM into both paying them to write the OS and allowing the proto-MS to keep it for themselves). They watched Apple and Atari and Commodore create GUIs as a new interface paradigm, and they slowly iterated their way into it with the horrible Windows 1.0, 2.0, 3.1 (all of which were just interfaces on top of MS-DOS), while the world laughed. Then Windows 95 showed up, and people stopped laughing. They watched as Sony and Nintendo duked it out with console game stations, and then they showed up with the XBox. What does Microsoft know about gaming and hardware? Apparently, a tremendous amount.

What's happening now is a renaissance for the company - again. Blaise Aguera y Arcas, an architect at Microsoft Live Labs (who is both a physical embodiment of the apparently hip, new crowd occupying One Microsoft Way, and representative of the "new thinking" going on there) garnered a standing ovation at the TED conference last week when he demo'ed the new Bing-based augmented reality maps. In the space of 15 minutes, Google Maps seemed old, stale and decidedly MapQuest-ish. This bears repeating: a hip, handsome, charismatic, non-nerdish, young Microsoft architect was given a standing ovation.

And then, back to my main focus here, there was this little ditty from the Barcelona World Mobile Congress: Windows Phone 7. The Zune phone. Project Pink. The thing that had been the behind-the-back snickering at every mobile gathering I've been at for the last 2 years. There it was...and it was...

  • ...not damned by faint praise in the press.
  • ...not thrown out for ridicule.
  • ...not considered to be "too little, too late"
  • ...not requiring you to use a stylus
It is, by all videos and hands-on experiences and advanced reviews I can get my hands on, gorgeous. Intuitive. Fast. Easy. And, here's the kicker: undeniably hip. Hip? From Balmer's Boys? Really?

OK, so the remnants of Microsoft of the last decade are there: "Windows Phone 7"? Seriously? Wake the eff up, Microsoft Marketing. Hire someone who didn't come from the enterprise software marketing world to name your software products. Hell, just walk down the hall to the hardware guys who named XBox, XBox 360, XBox Live, Zune... they could have called the Zune "Windows Media Portability 1.3," but they didn't. The world does not respond to the formulaic:

(Company Name) (Product Category) (Revision Number)

It's effing bullshit, we hate it, and its killing your reputation. Just stop it!

Lame-ass marketing aside, everything about this combination of redesigned phone OS (Microsoft is wisely killing off the prior versions of WinMo OS'es, and starting fresh here - bad news for the developers, great news for everyone else in the world) plus strict OEM guidelines for phone construction screams that there's something new going on in Redmond.

Comparing this phone to it's competition, it has also taken a completely different approach to its architectural philosophy: where the iPhone and android are application driven architectures, the Windows Phone 7 (dammit! OK, let me try "WP7" and see if that's easier) is data driven. It's not a new philosophy, it's actually quite old - going back to the 70's. The idea surfaced a few times in a couple of consumer products, most notably the original Palm Pilot and the Apple Newton, the latter of which dubbed this architectural concept as data soup.

As opposed to an application driven architecture, which relies on file transfers, data pipes and object passing at the OS level, and "copy and paste" exposed at the user interface level to move information from application to application, information on data-centric operating systems lives together, with all applications sharing the same underlying "like" data structures.

How this manifests itself to the user is the most beneficial on portable devices where the user is often in a crowded environment, or harried. Rather than opening up a contacts entry and then locating a person's twitter name, Last.FM neighborhood and phone number, the workflow on a data-centric device is more fluid. You may be listening to streaming music in the Zune marketplace on the WP7 device, and notice that a friend who likes the same music is online at XBox Live and so you tweet her about her gaming choice. It's all together, live and connected all the time.

This sort of user workflow isn't for everyone, and some people will not want to adapt to it - but the point here is that it truly breaks the paradigm that we are all used to. Actually, the paradigm that we have been taught (by Apple, Google, Nokia and others) is the way it has to be: that there is an app for that. It's new, it's different, it is often more intuitive to a handheld device - and, most impressively, it comes from stodgy old Microsoft.

So, I'm changing my personal party-line sightly: the mobile OS wars are over, but now it's a three-way race: iPhone, Android and WP7...uh, WM7....uh, Windows Phone Mobi....Jesus...and that phone from Microsoft.

UPDATE: March 4, 2010. Sigh, bamboozled again. OK, this little piece of data doesn't obviate my contention that Windows Phone 7 makes it a three-way horse race, but it does kinda crap all over my assertion that Redmond has it together. I had assumed that when WP7 comes out, that all other phone projects from MS were sent to the land of misfit toys. Not so if today's post from Gizmodo is true: Confirmed: Project Pink Lives. Steve, Steve, Steve (no, not THAT Steve, the OTHER Steve)...what are you guys doing? Combine Pink and WP7 or whack one of them - when has marketplace confusion ever worked?

Monday, February 15, 2010

Hey - 2, Maybe 3 Years Late is Better than Nothing

Back in 2008, and again in 2009, I was all hot and bothered by the potential for OLED and MEMS display technologies for both roll-up color displays and low power color eReaders. Well, both years didn't pan out, and so - like a bad gambler - I took my chips off the table for this year's predictions.

Well, great. The rollup, flexible displays aren't to market yet, but the Qualcomm MEMS tech looks poised to make it to market this year. Watch as Qualcomm's marketing director, Cheryl Goodman laughs at me not sticking it out with a prediction:



Read more about this coolness at the LA Times.

Tuesday, February 9, 2010

Tales of the Sync Demon: Getting Android, PCs and Macs to Give It Up

If you're like me, your life is an amalgam of mobile devices, laptops, operating systems, and "clouds" (or whatever the effing buzz word is today). You've also got a job - maybe two - and a personal life - or, maybe not. (Sorry man...but you know who you are.) You aren't on your phone 100% of the time, and you aren't on your Mac or PC 100% of the time - yet you want your information on all devices.

My world consists of androids, iphones, macs, PCs and ubuntu boxes - so this conversation is confined to those worlds. It's the flip-side to the closed ecosystem argument: dictatorships make the trains run on time, but openness requires diplomacy. However, since Apple, Microsoft and Google hate each other with the passion of 1000 white hot burning suns, diplomacy isn't the easiest thing to come by...

So, after an evening of experimentation at the expense of my sanity, here's the deal for reliable sync'ing between google apps, exchange, android, and exchange clients for BOTH the PC and the Mac. (I've left the iPhone and Windows Mobile out of this conversation since once your PC or Mac is sync'ed as described below, the iPhone and WinMo devices will just work properly. I left Blackberry's out of this conversation because, well, what the hell are you doing with a blackberry?)

So, boiling it down to just android, macs and PCs, here's what you want:

  • ...to be able to use the native applications on the Android phone to interact with exchange for work, and google apps for personal work, and have all information available to all client applications - yet remain separated.
  • ...everything to happen in the background and over the air (OTA)
  • ...all three platforms (Android, PC and Mac) to sync within a reasonable time.

And, here's the problems with just setting things up using OEM supplied applications:
  • ...exchange sync for Android only works reliably for email, not for contacts. There is no calendar exchange sync for the Nexus yet (although there is for the Droid, since Motorola modded the exchange sync app)
  • ...other Android sync solutions (such as Touchdown) replace the email, calendar and contact apps on the handset, which blows enormous chunks
  • ...Google Apps to Exchange server direct sync'ers require additional software on the server side, and since most people have IT organizations who will laugh at you if you suggest modifying their exchange servers, you probably don't have that as an option.
Here's the solution methodology I decided to employ (yes, I said "solution methodology"):

The idea here is to have Google Apps, NOT exchange, be the propagation root for calendar and contact information, while email is harvested directly from the exchange server. This way, the Android phone is NOT the source of the sync - which is desirable. However, since we do not control our own exchange servers, the calendar and contact sync is reliant on the PC and Mac client applications. This means that the syncs can only happen when either the PC, Mac or both are on and connected to the internet. However, in practice, you'll see this isn't such a big deal.

If you are using, say, a PC with Outlook when a meeting request comes through and you respond, the PC will sync with Google calendar immediately and it will appear on your phone. If your PC is off, and you are just using your phone and a meeting request comes through, it will arrive as email on your phone's email client. You will accept the meeting and it will be placed immediately into your phone's calendar client, and therefore into your Google calendar. It will not sync to your PC (and back to exchange) until your turn your PC on, but who cares? The only downside here is that no one else will be able to see you have a meeting at the time you accepted until your PC is turned back on. (The same scenario I just described works for the Mac as well.)

What you need on each platform:

On the PC:
  • microsoft exchange (available for $1B from http://www.microsoft.com/)
  • gsyncit ($15 at http://www.daveswebsite.com/software/gsync/) *
On the Mac:

  • iCal, Address Book, Mail.app (I could not find apps that worked for Entourage or the far superior Thunderbird)
  • SpanningSync * ($25 at http://spanningsync.com/)
On the Android:

  • Exchange for Android (for reliable exchange mail) - It is important for offline calendar sync'ing that you use Exchange for Android and not IMAP for your email if you want to have the email-calendar interaction
* both gsyncit and spanningsync allow for sync'ing to specific google calendars and contact groups, allowing you to keep work and play separate.

To set everything up:
On the Android:
  • install Exchange for Android. This comes with Android 2.0 and above, and is available at Android Market for free for Android 1.5 and 1.6
  • set up Exchange for Android to point to your exchange server

On Google Apps:

  • Optional: Separate your calendar and your contacts into separate work and home groups

On the PC:
  • Install Outlook
  • Install gsyncit
  • Optional: have different outlook calendars and contact groups pointing to the correct corresponding calendars and contact groups on google apps
On the Mac:
  • activate iCal, Address Book, and Mail.app
  • install SpanningSync
  • optional: have different outlook calendars and contact groups pointing to the correct corresponding calendars and contact groups on Google apps
...and that, as they say, is that.

Now your phone, google apps online, your PC and your Mac will all be in sync within a delta measured in minutes. (If one or the other of your laptops is off, the delta is measured in the time it takes you to turn on your laptop(s).) If you also use an iPhone or WinMo phone, just set them up normally, and everything should work just fine.

Also, please be careful: a change in one object (say a contact) will quickly propagate through everything you do. You can seriously whack out your information.... Outlook is the easiest to back up, of course, since you just copy the OST or PST file around. However, until you are comfortable that everything is working well, you should engage the sync's one at a time until you are convinced they will do what you need them to do.

Anyway - that oughta do it. When Google fixes their exchange sync application for android, we'll all be able to turn off the 3rd party sync'ers (Actually, I'll leave gsynchit running, since one of its unintended consequences is to back up my personal contact info and calendars.)

This has been a public service announcement from your friendly IT department.