First hand report on Windows 8
Indeed. Windows 8 is reimagined from underlying Chipset to Charms. The more we get hands-on with Windows 8, the fact is even more overwhelming that this next-generation Windows OS has undergone a lot of thought and too many good things have gone into it. Win8 is still Pre-beta and Developer Preview stage. The RTM version is rumored to hit MSDN by April 2012. Yes, that’s a long way to go. However, the wave this touch-first OS has brought is amazing and we thought of bringing you some details into its features and explain them as much as we could. Readers would find tons of features, and the UI gimmicks about windows 8 in many websites now. Our intention, rather, is to throw light on a Metro Style Applications, the context, architect, process-life-cycle and characteristics of the Metro style applications re-introduced along with Windows 8 OS. Though the Metro style is not new, for those who are used to Mango or Win Phones 7.
Chipsets to Charms
When we meant Chipset to Charms it is reimagined to the core, windows 8 development means it. Windows 8 is targeted to run on Intel based processors and newly added to the bandwagon is ARM based processors. Windows developer preview is still not available for ARM based processor. However, Microsoft claims that there will be a full-fledged equivalent windows 8 version that runs seamlessly on ARM based processors. For the readers, ARM based processors like Qualcomm’s Snapdragon is one of the most popular and powerful processors in the Tablets and Mobile devices world. Windows 8 masks the underlying processor architecture and provides similar functionalities across the different processor families.
Metro Style Apps
In short, it is a new UI standard for how the application should look like. Windows 8 introduces the new Metro style interface, which shows the information that is important to the end-user, embodies simplicity, and gives user the control. The new interface, built for touch, is a personalized layout with clean typography and animations to make interacting with your PC fluid and intuitive. The new Start screen puts all of your apps in front of user for immediate access. Windows 8 is optimized for easier navigation so moving around the operating system is effortless with touch interface or Mouse and Keyboard.
‘Charms’ are the standard fundamental contracts that bind Metro Style Apps with System UI and also with other Metro Style Apps. Charms are displayed on the Right-corner of the touch enabled screens and left bottom on a Mouse based screen. There are can be many contracts defined for Metro Style Apps. Search, Share, Devices, Picker & Settings is some of the fundamental ‘charms‘ contract defined in the Windows 8. Imagine an application about list of RSS Feed; the app can expose a Search Contract. A Search for this app is about searching RSS feed. When User clicks on ‘Search’ charm, without leaving the application, a search overlay panel is displayed on the right side of the screen. The search can behave differently, based on this contract each application has exposed. Search on Windows will be on Apps, whereas Search on Internet Explorer can be defined to that of BING Search and similarly, a search on Socialite application can be searching on Facebook Social Site. However the contract exposed as part of Search Charm is common experience across Metro Style applications.
Touch-first: What’s the big deal; it’s just an articulation of mouse operations on an UI with touch screen. It is much more than mouse orientation with touch senses. A lot of pre-defined meaningful gestures add the spice to the usability factor of this OS. The touch-first is designed with multi-touch functionality everywhere. Did I say touch is not only for tablets but soon into Desktop? Yes, days are not far when Desktops too have touch screens. By the way, Windows 8 is One OS for all form factors. It’s not only for Tablets but also for Desktops, Large Screen display machines as well! It is the same OS that provides the seamless touch experience on all. Apart from Touch as UI input method, Vision of Touch-first experience is to introduce a language for touch. It is lot more than moving a mouse pointer with fingers. For instance, how do we visualize Right click using touch? Right click is replaced with press & hold gesture on touch paradigm. The Touch-first experience brings in a whole lot of defining a windows touch language. That language has to simple, consistent, fast, based on limited gesture set and avoid timed gestures as much as possible, reversible and directly manipulated on the UI elements. Refer to the touch language picture below, most of them are familiar to us and few are new gestures. Remember, these gestures are not just for Windows 8 Start screen but also for all those Metro style applications that developers write using WinRT with not much of additional code for touch-first plumbing.
Metro Style apps are different from Desktop applications that run on Windows 7. Desktop applications are allowed to continue running on Windows 8 for backward compatibility. Refer to the architecture diagram below; Metro Style Apps are completely built on top of Windows runtime. WinRT is a One-window API application model with full-fledged APIs on the foundation.
Process Life Cycle
Where’s my close button on the top right corner of the application? First of all, Metro style Apps do not have Windows or Chrome. Second, User does not need to close the applications they open. What are we talking? When do these Apps get closed? When will the CPU & Memory utilization come down? The Answer is AUTOMATIC, OS takes care. When the application is no more in the front view (after losing focus), and no background running is required, the OS will move the process to Suspended state. For people who have used iPhones or Androids, the Suspended state of application is not new. The Suspended state helps in reducing the resource consumptions (like CPU or memory) and improves responsiveness of other applications. There are some applications which try to run at the background even after losing focus, like Windows Media Player, will signal OS that they should not be suspended. When OS pushes an application to Suspended state, the App has 5 sec to save session state, in response to the event to mark suspended state. Similar to Suspended state, when app resumes from Suspended state, the app is notified of the state change. However, No event is notified when App is moved to ‘Terminated’ state. It is imperative to mention that Developers have to additionally take care of these App/process life cycle events, as well, to ensure they work consistently within Win8. By the way, if you desperately want to close an app, you always have the task manager.
Visual Studio 11 Developer preview
Before we close on, for all those .Net lovers, Visual Studio 11 supports development with .NET 4.5 framework. However, that is not significant when we talk about Metro style which is based on WinRT rather.
Architecture, Process Lifecycle, Languages representations are from Slides prepared by Jensen Harris & Scott Dickens, at the Build conference