Metro and iOS – One Goal, Two Approaches

I want to touch on this subject once more, because I think it deserves some more attention. I imagine Metro is getting overplayed a bit, but as almost anyone will point out, Metro is essentially Windows Phone 7's interface writ large. Or put another way, where WP7 was a revolution for Microsoft, Metro is the next evolutionary step from WP7, putting it onto the desktop in addition to mobile devices. Yet this isn't so very different from what Apple has been moving toward with various UI elements bouncing back and forth between iOS and OS X and then, earlier this year, the 'Back to the Mac' themed WWDC conference. The fact is both Microsoft and Apple are pushing toward a unified UI strategy. They're just taking different tacks getting there.

The Red Queen - Metro's New Look

I've mentioned elsewhere that I don't dislike Metro. I can't say I like it all that much either. It's definitely different, definitely featureful. I'm not looking forward to some of the support sessions I am no doubt going to be involved with when some of my clients end up with a new computer with Windows 8 installed and no clue how to operate the new UI. Still, I think there are a number of things Microsoft is doing right with Windows 8. One thing I've already mentioned that I think they're doing wrong is making too big a change in the UI too quickly. The shift from Windows XP to Vista and on to Windows 7 didn't involve large paradigm shifts in UI usage and even so there were some complaints for users who were used to the "way things were". But by and large, things have gotten better, folks got used to the new look and layout and things were more or less okay. Windows 8 looks to upend all of that by introducing what is, for all intents and purposes, a completely new way of doing things. Technically anyone who has a Windows Phone 7 device now is already exposed to the core principles. But that's a very small number of people really. I'm not trying to rehash my previous article, but I do want to point out that this whole hog approach is very purposeful. It's not an accident that Microsoft is doing this. I think they realize just how much risk this gambit involves and I think they are going about it with eyes wide open. The question is, why? I'll get to that in a bit.

The White Queen - iOS's Slow Play

Apple on the other hand is taking a slow approach. They introduced iOS, with UI elements similar to those on OS X. The expanded on those elements. Then over time, things have slowly begun to merge. With Lion, we now have the Launchpad to mimic iOS home screen functionality, the scrolling and scroll bars are behaving like they do on iOS, swipes are beginning to work similarly, full screen mode is being rolled out, though not pushed out... slowly we are seeing the iOSification of OS X which itself was the basis for iOS. The emphasis here is slow. OS X is still fundamentally OS X. Take someone who's only familiar with OS X 10.0 and sit them down in front of Lion and they'll still be able to do anything. The reversed scrolling will confuse the hell out of them at first, granted, but once you get them past that hurdle, they'll be fine. Put someone on an iOS device and, as has been mentioned elsewhere, the gestures and usage seem relatively intuitive. People pick it up easily and things work as you would expect them to. Yet as dissimilar as the two environments are, they are being brought together. How much further we have yet to go, I can't say. What I can say is that on the current course, it's going to be a subtle shift and I if the scrolling "controversy" is any indication, it will involve little fuss.

King's Gambit

So why then would Microsoft jump so quickly to unify their UI with a fast play that may involve more pain and more screaming from consumers? Simple. The iPad. If it weren't for the fact that the iPad is trouncing all comers in the tablet space, Microsoft would not feel the need to renovate their very non-touch-oriented OS for tablet use. Yes, Windows Phone 7 is already out and seems to be a precursor to anything in the Metro interface, intimating it was in the development pipeline before Windows 8. I'd be willing to bet that Windows Phone 7 was, in fact, a product of the effort to get Windows 8 out and available for desktop and tablet use. Moreover, I think they bet on the phone strategy because at least in the phone space there has been some indication of room to grow, with Android devices challenging the iPhone's dominance and leaving hope that Microsoft might be able to push some of these devices out rapidly. Of course, I can't know for sure. But tell me... if Microsoft really wanted to, couldn't they have simply held off on finalizing Windows 8 and making it operate on smartphones and done a simultaneous release? Surely the WP7 team knew about Windows 8 development. It seems they clearly wanted WP7 out in the real world for users to play with and get used to the interface before Windows 8 was out and available. And they wanted that momentum to carry them forward into deploying Windows 8 on desktops (a lesser concern) as well as new tablet devices now based on Windows 8 and standing a chance in hell against the iPad.

Microsoft is rushing their UI unification in order to take on Apple in the tablet space, with Windows Phone 7 as the vanguard of the UI makeover. I don't know how successful their gambit will be, but as I look it over, I think it's the only move they could make.


Google Dart Misses the Mark

Google has revealed they are working on a new programming language, Google Dart, which one can surmise will be targeted at web development, likely on both the back end and front end. The first indication was the release of the speaking schedule for the Goto Conference in October, where two speakers will be presenting the keynote concerning this new language. If it turns out that Dart is in fact targeted at replacing Javascript on the front end, regardless of any other platform targets it might have, it is not going to transform the client side development experience without more support than just Google's Chrome.

What is Google Dart Targeting, Really?

Based on an alleged leaked memo discussing a project codenamed "Dash", it seems that Google is trying to supplant Javascript in the browser in order to fight the "encroachment of other, less open platforms". This appears to be referring to native apps and in the case of mobile, iOS apps in particular. According to the "Dash memo", the plan will be to have Dash cross compile to Javascript in order to continue to support Javascript centric browsers until such clients are capable of natively running Dash. The intent, then, is to create a new environment, entice developers to jump in and use it, and use that momentum to move vendors like Apple, Microsoft, Mozilla and Opera to incorporate Dart VMs in their browsers. There are some problems with this approach though.

A Twenty Mule Team

Google is going to be pulling against several different, very powerful forces if they make an attempt such as they seem to be undergoing. To begin with one of the problems they cite as a reason to consider Dart, a multitude of frameworks and libraries to perform various functions, is also one of the reasons many developers will want to stick with the language as they have already invested time and effort in learning and deploying these frameworks. Moreover, Google points to the use of myriad incompatible design patterns. Based on this statement, it suggests they want to perform some sort of enforcement over which patterns might be used or perhaps create alternative frameworks which use a common pattern and provide them as a means to allow developers to use a consistent set of frameworks. This suggests Google is looking to create "the One True Way" for web development by fiat rather than by allowing for the development of a standard which other entities might have a say in. If they were truly concerned about asserting the homogeneity of the Javascript ecosystem they would proffer their own such frameworks using compatible design patterns.

Then there are the other browsers. If you take a look at the speakers list as well as the list of sponsors, you will notice some absences. Namely any other browser vendor. Barring a last minute surprise, it doesn't seem as though Dart has the backing of anyone but Google which means that the best we could hope for would be for Chrome to have Google Dart support out of the gate. Chrome is doing well, but Chrome alone will not be sufficient to convince the majority of developers to switch to its environment. What about the other vendors?

Microsoft has continued to release additional details about development on their upcoming platforms and it seems that it is going to focus on .NET and WinRS on the backend and for native code and use of HTML5/CSS/JS for UI development. It seems unlikely that Microsoft would have a great deal of concern for moving toward adoption of yet another VM for their front end functionality. Not to mention Microsoft has their own development toolchain which they want to see in use as opposed to a Google Dart based toolchain which would allow for more cross platform oriented development.

Apple, too, is focusing on HTML5/CSS/JS for support in their browsers and given the competition between iOS and Android, I wouldn't imagine they would want to provide a leg up for developers to create apps using Google Dart that would function equally well on either platform. On top of that, Apple has already dealt with another company who owned a toolchain which focused on cross platform development. Adobe still has yet to compel Apple to release a Flash compatible update on iOS and in fact has started making overtures to the HTML5/CS/JS crowd through their announcement of Edge as well as the recent changes to their Flash Media Server to deliver alternative content to iOS devices on the fly. Apple isn't going to let their major mobile competitor install a competing VM platform on iOS devices when that means that competitor will have a distinct edge in keeping support for it more featureful and up to date on Android.

Mozilla could possibly accept Google Dart as a native VM in their browsers, simply because they have the least to lose in such an arrangement. Unlike Microsoft and Apple, Mozilla as an organization is not pushing a competing development environment or toolchain, isn't competing in the mobile space and in fact is really only going head to head with Google with regard to browser market share. Still, that may yet be reason enough not to jump in bed with Google. Plus unless Google Dart is made part of a standard of some kind, it's possible that there will be even less traction in this space.

The same argument goes for Opera, perhaps even more so. Opera has a reputation for being one of the most standards compliant browsers available and again, unless Google Dart is made a standard, Opera may not wish to incorporate this VM into their product.

What's the End Game?

Google isn't stupid, so if it seems so obvious that uptake of Google Dart is going to be difficult to achieve, why bother? As the "Dash memo" points out, this is a high risk/high reward option. Given how many different projects Google has going at one time, creating a new VM to include in their browser and to make available for back end development isn't asking much in terms of time and money. The risk is in the reputation. Google is going to put their name behind this and try to get developer muscle to push it into other browsers. In essence it is going to test how much weight they actually have to throw around. If it succeeds, they will have grabbed a commanding position, providing a toolchain which can target apps on their platforms to their liking and which other vendors would need to tailor their systems around. If it fails, it will be a sign that while they are big, they can't yet force the other big players to play their game. High risk, high reward. I don't see a bullseye in the making.

Image by renjith krishnan

Windows 8 Metro Interface, The Wrong New Thing

Microsoft has been revealing more and more features about Windows 8, including the new Metro interface shown above. That is what the standard desktop interface is going to look like in Windows 8. You'll be able to click a 'Desktop' link to interact with older legacy applications (i.e. anything developed for Windows 7 or earlier) but clicking on the 'Start' menu is going to land you back in this tiled world. Microsoft is trying to add a breath of fresh air to their interface but I think they've simply introduced the wrong new thing.

Direction of Change

Introducing change to your UI is never a decision made lightly. Companies enter legal fights over 'look and feel' to make sure they have a unique design, something easily recognizable to anyone sitting down to use their product. Microsoft no doubt is hoping to make their UI memorable but I'm sure is nervous about how it will be received. In fact, they were so nervous about the upcoming changes to Windows Explorer in Windows 8 that they posted a blog entry about it. In it, they didn't just go into detail about the changes, they discussed the entire history of the interface, the commands most often used, and then ended with an attempt to convince us why we needed the new ribbon UI on a file and folder browser. Microsoft is anxiously trying to get the word out now before the product's release, likely to avoid any user backlash over getting used to the new way of doing things.

Part of their problem, though, is that they are introducing change in a way that most folks don't appreciate. Windows 8's Metro interface is essentially the Windows Phone 7 UI writ large. The problem is Windows Phone 7 hasn't been in use long enough nor by enough people for the interface to feel more at home to more people. In fact, Microsoft just recently announced plans to increase sales personnel to push additional sales. And now, before the public has really had a chance to become used to this new tiled way of doing things, they are attempting to push it into the new Windows 8 deployment.

At first blush, it would seem to be an attempt to steal a page from Apple's playbook. Recall Steve Jobs' "Back to the Mac" theme, where they discussed introducing iOS UI elements into OS X Lion? And in fact Launchpad is pretty much an iOS home screen with all of your apps and no groups. The difference is in the timing. Apple let the iOS experience percolate on iPhone, iPod Touch and then iPad before deciding to bring any elements back into the desktop. And even then, they didn't make a radical departure. Perhaps bigger changes are coming. In fact, I'm certain of it. But Apple made the right move by easing folks into the iOS way of doing things first before introducing similar changes to an interface OS X users are very familiar with. In any event, the Windows 8 Metro interface is going to receive some pretty critical pushback from their userbase.


Microsoft Is Watching You

The Guardian is reporting that a lawsuit was filed last Wednesday claiming Microsoft is tracking users of Windows Phone 7 devices even in situations when location information was purportedly disabled. In the article, and in the ensuing discussion about the case, Apple's name was inevitably dragged into the fray, focusing on the hubbub that was brought forth in April concerning the 'consolidated.db' file which stored timestamped latitude/longitude values, sometimes as far back as a year. As Josh Halliday at The Guardian puts it:

The lawsuit follows mounting concern about how technology giants, including Apple and Google, record users' private data. Microsoft, Nokia, Apple and Google were called before the US Congress in April to explain their privacy policies after security researchers uncovered hidden location-tracking software in iPhones. Google Android phones were subsequently found to gather location data, but required users' explicit permission.

There's nothing inherently flawed with the quote above. Yes, there was concern about the possibility of tracking by several large companies. Yes the aforementioned companies were called before Congress. But no further mention is made of how Apple closed things out. And I imagine things will be a bit different with Microsoft.

To begin with, Microsoft's declaration in their letter to Congress reads similarly to Apple's press release with regard to what each company states they collect. Essentially they both claim to only track approximate location in order to provide a better user experience. In both cases, a small portion of the entire database of known Wi-Fi and cell tower locations is sent to the phone in order to be prepared to quickly obtain a more precise GPS based location on demand. Both companies also state that they honor the disabling of location services by disallowing the dissemination of this information to apps on the device which make a location request.

The differences begin with how the outcry started in each case. For Apple, the existence of the database had long been known by those technically savvy enough to snoop around the iPhone's internals and figure out what they were looking at. It wasn't until Alasdair Allan and Pete Warden revealed an open source utility to fetch the database for your viewing pleasure that things were sent into damage control. Shortly thereafter, Apple issued their press release which stated, among other things:

7. When I turn off Location Services, why does my iPhone sometimes continue updating its Wi-Fi and cell tower data from Apple’s crowd-sourced database?  
It shouldn’t. This is a bug, which we plan to fix shortly (see Software Update section below).

It further added:

Software Update 
Sometime in the next few weeks Apple will release a free iOS software update that:

    • reduces the size of the crowd-sourced Wi-Fi hotspot and cell tower database cached on the iPhone,
    • ceases backing up this cache, and
    • deletes this cache entirely when Location Services is turned off.

In the next major iOS software release the cache will also be encrypted on the iPhone.

That was it for Apple. They would issue a free update that would cease even grabbing the cached data if you disabled location tracking, reduce the amount of cached data retained, cease backing it up if you did retain it, and delete the cache entirely if you disabled location tracking. Moreover, the next major iOS release encrypted it locally when it was stored. There were never any accusations of tomfoolery on Apple's part.

In Microsoft's case, the first sounding of the gong is the result of a lawsuit filed in Microsoft's own backyard so to speak. Not simply an indication of something a techie found that was subsequently addressed but rather someone essentially throwing down with them. Of course, frivolous lawsuit are filed all the time, but I don't see any advantage to be had here unless there is some truth to it. Even so, it's an interesting distinction in terms of how the starting gun sounded.

So now we're waiting to hear from Microsoft, to get their side of the story. Apple took 7 days to complete their response, and I imagine some of that time was spent with engineering, looking for the bug they spoke of. There was, I'm sure, time spent mulling over release dates, etc. We're still within the same 7 day mark for Microsoft's response, and they have at least indicated they will be responding though I figure that was a given. I wonder if they'll admit it was a problem and indicate how they'll be fixing it, or if they'll take a more defensive posture. I'm guessing the latter. Regardless, I'll be getting the popcorn and pulling up a chair. This ought to be interesting.


Windows Phone 7 Will Not Steal (Much) From iOS

Techcrunch is reporting that Gardner and IDC predict a 20 percent market share for Windows Phone 7 by 2015. Said to be a conservative estimate, it appears to be based on several factors:

  • HP dropping webOS, leaving potential developers to jump ship to another mobile platform
  • Microsoft pushing new product in Europe
  • Microsoft marketing to women and youth

Let's take a look at these. HP dumped webOS because of a change in direction by their new CEO. I won't go into why he chose to do this, but yes webOS is dead, or at least its twitching body is soon to be laid to rest, barring a last minute rescue at any rate. But how popular was webOS really? Wonderful as it may be, webOS never gained much traction in terms of actual rubber-to-road users. And like it or not, no matter how good your platform is, developers go where the users are. Where are the users? Not on webOS. So how much of a bump would Microsoft get if every single webOS developer suddenly migrated to developing for the platform? Not much. And that bump would be made smaller by the fact that developers on marginal platforms tend to cross develop to multiple platforms. In other words, webOS developers are probably already developing for other platforms including Windows Phone 7. While market share is zero sum game, developer share is another thing entirely. So I wouldn't expect many more apps to be added to the WP7 platform by webOS developers because many of them may already be there.

What about Microsoft's sales efforts in Europe? Currently Windows Phone 7 barely registers a blip on the radar. They have their work cut out for them, and releasing "hundreds" of salesmen into the market to try to "better demonstrate the product" might not have the anticipated effect. Certainly it can't hurt to have more professionals out pushing your product, but in reality you are far more likely to buy into a platform because of one of two reasons: you are used to it already and are simply jumping to new hardware or someone you already know and trust shows you how the new platform is better. Which is to say, word of mouth. And right now, word of mouth is working against Microsoft, not for it.

What about targeting women and young/first-time buyers? I can't speak to how or why WP7 might appeal to women in particular, though the claim is made. Still, saying it is particularly appealing to women speaks to a relative appeal between genders. It doesn't mean women are necessarily desiring WP7 phones more than other platform's devices. Just that women are more likely to want a WP7 than men. Again, assuming Achim Berg's, head of  Windows Phone marketing, assertion is true. As for first-time buyers, well, you can't buy cool.

Am I saying iOS is unassailable? Absolutely not. Look at Android. It has its problems, certainly, but Android has grabbed its own slice of the pie by differentiating itself from iOS. App availability is there, although the app store experience is, in my opinion, of lower quality. But it is theoretically far more tweakable than any iOS device. What exactly will WP7 bring to the table that is going to truly mark itself as being different enough from iOS to warrant grabbing market share there? Because that is what they are going to have to do no matter who they want market share from. They need to be different enough and in a good way, if they want to be picked from a lineup that includes some of the most popular phones currently produced. Even carrier availability is disappearing as a viable means of differentiation as iOS devices are beginning to appear on more networks worldwide.

No, Windows Phone 7 is not going to steal much, if any, market share from iOS, certainly not based on the information available today from Mr. Berg and the analysts down the hall.