NoApple

I’m sorry if I don’t share the wild enthusiasm about the broad direction Windows 8 is taking – as far as I can see, Windows is increasingly being reimagined in iPad’s shadow, and I believe Microsoft is explicitly or implicitly doing so at the expense and minimisation of the traditional desktop experience. Eventually, I think this ongoing narrow super-optimization of Windows will be pushed down onto all end-users no matter their use-scenario and that’s going to hurt us all.

iPad/iOS Reimagined

Let’s first establish just how similar is Windows 8’s reimagining to that of iPad/iOS combo:

  iPad / iOS Win 8
Facts    
Apps run in full-screen / chrome-less mode Tick Tick
All apps are installed, versioned, and stored independently Tick Tick
One has to source apps from a single curated App Store (* for the most part) Tick* Tick*
The OS is exposed using native libraries – Cocoa Touch Frameworks, WinRT Tick Tick
Apps are not compatible or enabled in the traditional desktop environment Tick Tick
All apps are isolated, and don’t share direct access to each other Tick Tick
Plugin-free Browsers (to protect the App Store model) Tick Tick
OS and Apps are Touch-Centric / Touch-First experience Tick Tick
Two broad-modes available for developing apps – Native and HTML Tick Tick
Provide/allow abstractions to enable multi-language use – .NET, MonoTouch etc. Tick Tick
Desktop Environment for Traditional Applications (* only the x86 platform will feature backward compatibility)   Tick*
Opinions    
The general drift is towards building tightly controlled / closed systems Tick Tick
There is a systematic effort to enable a generational vendor-lock in Tick Tick
First-party apps/services favoured above similar third-party apps/services Tick Tick

Obviously, there are small/big implementation, technical, and user-experience differences between the two – and to be fair Windows 8 is offering the traditional desktop environment in addition to the touch-first environment. That is the big/critical differentiator between the two; one Microsoft is obviously hoping will give them a catapulting strategic-advantage over Apple. Now, I absolutely don’t fault Microsoft in going after this market, iPad and broadly touch-first experience is an existential threat to Windows and Microsoft’s overall dominance. However, I feel Windows 8 tilts the balance too far; in that it is doing so at the extreme expense, almost neglect, of traditional desktop applications – the same one that has been its bread-and-butter for ages.

Touch-First Experience Realized : An example

With the understanding that Windows 8 is still not even a beta product, and things will most definitely change – have a look at what is involved in putting the computer to hibernate using a mouse based approach:

Step2 Step3
Step4 Step5

Now, to my counting that’s like 7 explicit steps involving three clicks, three separate menus/panels, and requires moving to two extreme ends of the screen. Just to go through the motions – step 1 involves moving to one specific corner of the screen, step 2, wait for the menu to slide-in and then move to the settings menu item, step 3, click on the settings menu, step 4, wait for the slide-in settings panel and then move to the power menu button, step 5, click on the power menu, step 6, wait for the popup menu and then move onto the hibernate option, and finally step 7, click on the hibernate option.

AllSteps

Contrast this with one, the fact that most mobile/tablets are not often shut-down and, two, most of them feature a hardware button that puts the device to sleep – which in some respects rationalizes the logical and spatial layout of the power-down functions. However, mouse based devices are left with the short end of the stick.

Worse still, to my knowledge, there are no keyboard steps that allow you to power down a Windows 8 machine – the other day, my Bluetooth mouse went south and I couldn’t get to the power option. Good thing, I knew the command line argument to restart a computer; but still that points to the fact Windows is being optimized away from the mouse-keyboard combo.

Downgrading the Desktop Experience

It’s not just about the UI, which admittedly is still in flux, but everything from exclusivity of Metro design language within the new immersive experience, exclusivity of the new Windows RunTime (WinRT) again to the immersive experience, and the cosmetic improvements to the traditional desktop side (wohhoo, explorer with ribbon) speaks to the implicit downgrading of the desktop experience. If bullshit walks and money talks – then follow where all the resources are being put into.

You can’t re-imagine windows and leave the desktop experience behind – even though there is a ton of legacy burden to carry forward. For example, the Metro design-language, could equally be applied to the desktop applications, but how many Metro-style desktop applications did we get to see? Rather than Microsoft leading with tools, controls, and examples the enthusiasts’ community is showing us what’s possible:

Live Mail Concept (By Clindhartsen) 
MetroMail1 
Windows 7 Cued Twitter Desktop App

Further, Microsoft holding off the entire WinRT platform from desktop-applications is a crying shame; especially in light of its infamous proclamation of “our strategy has shifted”. So after the big reveal at Build, what new options do desktop applications gets – well, none new, just more of the same, .NET, Silverlight, and the usual native stacks. There might be some technical reasons not to support desktop applications, but my guess is it’s mostly political or business for that matter. So it seems, after all these years and lots of playing-coy, Microsoft’s desktop UI strategy will remain in the same mess/disrepair it was pre the Build event – @##%!

Perspective

Couple of months ago Steve Ballmer was belittling the size of the tablet market v/s the PC market size – 20m v/s 350m units (as of last year). And yet, here we are couple of months down the line, and Microsoft is putting the tablet experience at the heart of its flagship. So what just happened? Putting in the tablet experience is not the problem; it’s the relative demotion of everyone else that needs some perspective.

I fully understand and appreciate the value of tablets (personally, I’ve even been accused of evangelizing them), but it has its specific place/use vis-a-vie the traditional desktops – even as we get touch screens the big 20+ inch monitors are here to stay too, especially in the production environment. The so-defined “metro apps” seem out-of-place and forced to me when used in full-screen only mode – in this respect, I think Apple (again) got it correct in Lion, their full-screen mode works relatively seamlessly when paired with a trackpad and also goes around their traditional window-management weakness(es). The critical differences in Apple’s approach being, for one it is optional, second it is designed for pointer based applications, and lastly it feels additive (not exclusive) as with just a simple swipe you can escape the immersive embrace, as it were.

MixTab Full Screen App

Similar perspective is needed on WinRT – I personally think it’s a validation of Silverlight and .NET’s model. Apart from the managed environment needs, WinRT follows a similar packaging-model, metadata-model, access-semantics, asynchrony approach, designer-developer’s separation approach, multi-lingual model etc. laid down by both Silverlight and .NET. Further, WinRT is being sold as native-native to Windows, well, to me both SL and .NET could/should also have been such native-native platforms; the difference was basically that they were not as good/deep as an implementation as WinRT, they perhaps tilted too heavily on the productivity side, and had multi-platform support constraints that created too high of an abstraction with perf implications. And unfortunately too, Microsoft didn’t have the appetite to fix the issues – so they ran for a greenfield approach. However, given that WinRT comes from the Windows’ team and they seem to be tied to a 3 years cadence, whereas iOS, Mac OS X, and Android all sticking to around a year’s release cycle – will Windows / WinRT be able to keep up? I donno.

I See Green

Windows8Green

Credit where credit is due; Microsoft deserves some huge kudos for the big and bold steps they are taking, and even more so for the technical improvements they are bringing to bear at the OS level. Moreover, on the tablet front, after years of struggling they now seemingly have a technically competent platform, plus they and offering improvements beyond the markers already laid down by Apple – that will make them competitive, but then again they are adopting the good with the bad! And, in the big picture, especially when you consider they are betting (and/or exploiting) their biggest strategic assets (Windows) they should be more mindful of carrying the entire ecosystem forward not just a particular segment. I think they are swaying way too heavily to counter iPad, leaving behind their hereto market of desktop applications. That’s a folly and I think it will come back and bite them, just as letting the smartphone market to auto-pilot did; today though, a lot of Microsoft’s decisions makes sense from a specific prism, but that prism is tinted green in Apple’s envy.

Apple

Posted by Rishi on 20-Sep-11 1:22 AM, 95 Comments

Categories: General, Technology, Other, Opinion

For the Mix10K smart coding challenge, I've create an application runtime that hosts, manages and runs cloud-based applications. The runtime is called Cloud Light, and per the rules of the Mix10K challenge the code and visuals weighs-in less than 10KB. The runtime environment also features an online application store from which you can download and install applications.

Cloud Light ScreenshotView the Cloud Light in the Mix 10K gallery and please vote for it.

Runtime Overview

  • Provides basic window management capabilities like opening, closing, activating, minimizing and restoring of windows
  • Allows you to install applications directly from the web
  • Installed applications information is persistent, with the applications themselves downloaded when the runtime starts
  • Allows you to uninstall applications with a single click
  • You can also install Cloud Light as a Silverlight Out-of-Browser Application (right click and choose "Install Cloud Light.." from the context menu)

Title Bar Overview

The Title Bar shows the active application's title and also show the current date-time. Additionally, it features four buttons on the top-right corner that enable full-screen toggling, showing/hiding of the application store, minimizing of the active application and closing of the active application.TopBar

Applications Store Overview

The online Application Store lists all currently available application in the Cloud. To install any application just click on the entry title, and the application is downloaded and installed - once installed, it should appear in the Application Bar. Going further, more applications will be available through the store.

InstallableApplications

Application Bar Overview

The Application Bar hosts all the currently installed applications, each application getting an icon for itself. The icon also with a highlight represents a running application, and each application can only have one instance running at a go. A single click to an application icon starts the application, if already running it activates it, if previously activated it minimizes it, and if minimized it maximizes and activates it - really simple, right. Also if an application is open, Shift+Clicking the icon closes it and by Ctrl+Shift+Clicking on the icon you can uninstall the application.

AppBar

Extensibility

Apart from the limited applications selection available in the Application Store, you can also create your own applications and install them using the Console application. In a separate post I will detail how you can create your own custom applications and install them.

InstallAppCommandLine

Another simple point of customization is setting the wallpapers, again through the console - so something like "setwallpaper -url:http://adsoftheworld.net/download/windows7/winwall7057_23large.jpg" will change the background into:

CloudLight3

And in addition to the built-in Commands, you can also create custom Console-based Script Commands, and have them automatically register with and be availed through the Console Application (see Silverlight Console).

Summary

So for 10KB worth of c# code and xaml, I think we have a surprising functional runtime that is both extensible and light thanks to Silverlight. It in some-ways can be seen as a prototype for a managed Cloud OS that relies on the Cloud but provides applications in the form we know them today. And in terms of the design it speaks to the simplicity and discoverability that iPhone brought, something that I think needs to be embraced in desktop-applications' designs.

View the Cloud Light in the Mix 10K gallery here
and please vote for it if you like it.

Acknowledgements
Default Grass Wallpaper by Radoslaw Rokita [vathanx@live.com]
Application Icons by Judge

Posted by Rishi on 13-Jan-10 7:38 PM, 39 Comments

Categories: Code, Silverlight, Technology

Ok firsthand, let me qualify the title that this is "part of the vision". Now, you might have seen this great video of Microsoft's Vision for 2019 of what software and hardware might look like, and how we might interact with it in the future. It is really fascinating stuff, especially for a technology and UX enthusiast like myself. Anyway so, I wanted to create a demo app for my shiny new framework (which you can read up on other posts), and I kinda thought the kind of interactivity in the video is what my framework is all about - so I went out to replicate the UI using my little framework called nRoute.

Here are a couple of snapshot of the original UI, I referenced:MicrosoftVision2010
Snap1
 Snap2

I created the demo app with Blend 2 and Visual Studio 2008 (no Illustrator or Photoshop) in about 2 days - faster than I though I would. However, my work is rather preliminary, as I want to really develop on these concepts with Silverlight 3 and all the goodness that it brings. In fact, with the Silverlight 3 version of this app, I plan to feature much more of visuals shown in the original video (hello perspective 3D and multi-touch). Below are some grabs of my interpretation:

nRouteFutureDesktop1
nRouteFutureDesktop2
nRouteFutureDesktop3
Currently the application is very light on content, as it was primarily designed to showcase the technical marvels of the nRoute Framework ;) but given some time and inclination I think we can have a little piece of the future rather soon.

To run the demo click here (uses Silverlight 2) and for the source code visit http://nRoute.codeplex.com. BTW, I call this app the "Future Desktop".

UPDATE: for those technically inclined, this post goes over the nRoute-related features showcased in this demo app

Posted by Rishi on 02-Apr-09 2:24 PM, 53 Comments

Categories: General, nRoute, Technology

(Real World + Semantic Knowledge + Internet) * Cool Technology = Awesomeness, have a look..

I love these broad concepts of the semantic knowledge, communal knowledge, user-empowerment all mixed with the web and real-world using "human-oriented" technologies.. It's the future, and we are already on that road with things like twitter (chatter), touch, wikis, semantic-web, xml, google etc. What is also interesting and relevant is how we are gonna bridge the gap between structured and un-structured information. It is all so fascinating stuff, but for now let me unceremoniously put it under the "cool" tag..

Posted by Rishi on 15-Mar-09 1:37 AM, 20 Comments

Tags: ,
Categories: Technology, Cool