pyehouse
20Sep/110

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.

16Sep/110

Contracts, Where Windows 8 Gets It Right

I've mentioned before that Windows 8 Metro is going to be a very disruptive UI switch for most Windows users to make and is likely going to cause some headaches for Microsoft due to customer backlash. The timing is off, though Microsoft is making an effort to get the word out early and work to make the interface as knowable as possible well in advance. Only time will tell if they succeed well enough to avoid the complaints. That said, I should make something clear... I don't oppose or even really dislike the Metro concept. The most visible change in Metro, and the one that I think is most likely to draw the ire of those who complain, is that of essentially devoting the entire screen to a single application at a time, a concept most mobile device users are already very familiar with. It's only on the desktop where this paradigm becomes less common. In any event, one interesting concept in Windows 8 that I like in particular is the concept of "contracts".

In Windows 8, an application can expose features through a contract. The contract details what the offered feature needs to work and what it will produce. Think of it like the input/output paradigm in Apple's Automator but able to be tapped into by any application on the system, not just through a single central authority like Automator. More importantly, these features can be tapped into seamlessly, the user never having to leave the current application but still being able to tap into the full functionality present on their device. In the Metro interface, where only one application has the screen at a time, this will be a boon to developers and users alike, working to increase the usefulness in situations where one app owning the screen at a time is necessary.

Move Over Bacon, There's Something Better ( in Windows 8 )

Sharing features between apps is of course something that's been around for awhile. Even the earliest operating systems allowed applications to talk to one another by opening connections between apps and sending data cross. Over time, protocols were established to be able to send higher level data across instead of having to reconstruct data manually on the receiving end. By the early 90's, Microsoft released their OLE (Object Linking and Embedding) technology, allowing the sharing of complex features between various applications. This required considerable effort to do well, though. OLE is not the only such technology though. There are many to choose from. But it seems as though the focus here is more on how it will affect the end user and less on how to integrate apps. It may seem like one and the same, but the focus drives the implementation. Here, Microsoft got the focus right.

Absent on the list of IPC protocols is OpenDoc. OpenDoc was a consortium created in the 90's after OLE became popular and gave Microsoft a big advantage with Office. It tried to unite a number of vendors to create a standard that would rival OLE's capabilities and allow them to offer a comparable feature set without having to bend to Microsoft's will. Microsoft began using their OS dominance to full advantage by requiring certain compliance criteria for OS verification of an app that resulted in practically requiring use of OLE as opposed to OpenDoc. After awhile, OpenDoc went away. Why mention a dead protocol? Because Apple was a major driver behind OpenDoc and didn't seem to learn much from it.

We see some of what Apple came away with in Services on OS X, Apple events, and a few other supported features. Automator touches on this concept of feature sharing though it's really just a workflow tool. We don't see any sort of attempt by Apple to nail down a standard method of allowing one app to provide full featured functionality to another app to be called out at will. As I said, Services touch on this concept, but not to the extent that OLE or Windows 8 Contracts provides. And that's the shocker. Heck, iOS lacks even these more basic elements, allowing only the registration of a URL type and the ability to send a simple string to that URL as the only means of sending a message to another app. And that ends up causing a full context switch, pushing the user out of whatever app they were in, and doesn't provide any means of dynamically finding feature availability. Apple should have learned more here. I imagine they're listening though.

On the desktop, I don't see this as as huge a deal as it will be in mobile. As far as I know, no mobile devices currently have this level of integration between apps and if it ends up working nearly as well as the hands on demos indicate, it's going to be a nice feather in Microsoft's cap.

13Sep/113

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.