Big Changes Coming in Windows 8

At the 2011 Build conference taking place this week in Anaheim, CA, Microsoft provided the deepest view yet of what looks like a radical departure from past desktop OS designs. As part of the presentation, the company showed off a developer preview of Windows 8 and also gave members of the press a preview of an as-yet-unreleased x86-based Windows 8 tablet PC.

Microsoft described Windows 8 as a "reimagining" of its operating system, although the tile-based UI looks a lot like the one seen in the Windows Phone 7 mobile OS. The resemblance isn't a coincidence. Microsoft is pressing developers to create "Metro-style" apps, which are going to be based on HTML 5, JavaScript, or XAML. These Metro-style apps will port from x86 metal to Windows 8 running on the ARM platform, which is a new platform for Microsoft's flagship desktop OS.

"If you use HTML 5, JavaScript or XAML, it just runs on ARM," said Julie Larson-Green, corporate vice president of Windows experience, at a Build press event. She noted that there's a large existing install base of x86 software out there, but Microsoft isn't necessarily working to port it to ARM. The hardware is different, so while ARM may enable great power management, porting an x86 app to ARM might just drain the battery.

The ARM devices for Windows 8 are still being developed. No ARM demo was shown at the press event. However, "all of the apps for ARM will be Metro-style," according to Steven Sinofsky, president of the Windows and Windows Live Division, in response to a question.

Larson-Green described classic x86 apps as "desktop apps," explaining that they're different from Metro-style apps. Microsoft will still enable those desktop apps to run on Windows 8, and they'll still have the same familiar controls through mouse and keyboard, with chrome borders, buttons and standard menu systems. Microsoft has also promised that any Windows 7 app will be able to run on Windows 8. However, Metro-style apps will have a different look. They will fill every inch of the screen and will typically have no chrome borders at all.

Metro-style apps are fully touch-enabled and users can even use a pen device, which Microsoft is reviving with Windows 8. If you swipe your finger toward the right, it brings up the "charms," which are five icons (Search, Share, Start, Devices, and Settings). The charms appear to be all that's left from the Windows 7 "control panel" approach. Microsoft standardized one place to change the settings both for the OS system and for applications, making things easier for users, according to Jensen Harris, director of program management for Windows experience.

Windows 8 for IT Pros
Microsoft added a huge perk for IT professionals who routinely find themselves reprovisioning machines. Windows 8 will have two features that accomplish these IT routines in a short amount of time. One feature is called "reset," which will restore the machine back to its original factory settings. It goes back to a clean state where everything is working. It may skip any service packs that were applied, though.

The other feature that IT pros may like is called "refresh." Refresh will take all files, data and personalization on a machine, lift them up, pave over the OS and deliver a fresh copy, according to Gabe Aul, partner director of program management for Windows fundamentals. Refresh goes back to the original personalization of the OS and is useful for users who share their PCs with others.

Microsoft added a "Windows To Go" feature in Windows 8 that enables the OS to run off of a USB key. If the memory stick is pulled out, the OS will catch back up if replugged, according to Iain McDonald, partner director of program management for Windows. He also noted that Microsoft added Hyper-V to the Windows 8 client OS. Hyper-V can help IT pros with testing different environments, but Microsoft mainly added it to help developers, who often have to test their apps on four versions of OSes, McDonald said.

Applications typically run concurrently on Windows 8. When they aren't active on the desktop, apps will run "suspended," which appears to be a new approach by Microsoft. If users really want to kill a running app, they can use the Task Manager, which retained a non-Metro chromed look in the demo.

As for system resources, Microsoft said it made a commitment to support the same requirements in Windows 8 as supported by Windows 7. System boot up and shut down times have now been reduced to a few quick seconds. Microsoft added a new "connected standby" state that helps conserve energy.

A new "secure boot" feature uses trusted signed certificates in the boot path to protect against malware, such as those that may be housed on USB memory sticks. Antimalware programs are now allowed to load early upon boot up. There are also SmartScreen Web protections and a new layer of defense called "App Reputation," which can block malware from running. App Reputation will also block executable files in e-mail attachments. Users can look at Windows 8 processes, and a right-click on one will enable Web searches to find out its purpose. Passwords can now be set up as a pattern of swipes across the screen, without using any characters.

Apps can share any part of each other in Windows 8. These parts are described by Microsoft as "contracts." There are several contracts, including a "sharing contract," which will work across various apps seamlessly if a user has signed up for Windows Live. There's a "search contract" that helps with finding things like photos across the PC and at social networking hubs. The "recognition contract" can work with the pen tool to help translate handwriting into text. Microsoft is also putting emphasis on file sharing through its SkyDrive cloud-based storage space. SkyDrive is a case in point of the sharing contract use, as various apps can tap SkyDrive as a resource.

Windows 8 for Developers
Windows 8 introduces a new API surface called "Windows runtime APIs," which are part of the OS' services, according to Aleš Holecek, distinguished engineer for the Windows developer experience. Holecek said Microsoft wants developers to access these APIs, which are written in native C++ code, through various languages.

"Developers will be able to make a choice based on the best technology," Holecek said. "We don't want anyone to go and learn an esoteric language."

Microsoft is putting XAML and HTML/CSS on an equal footing in that regard, he explained. He added that Microsoft "will preserve all of the investments" in platforms like Silverlight. He did note that the API surface isn't good for some things, such as building drivers. It's mostly there to benefit application developers. 

The programming platforms needed to build Windows 8 Metro-style applications include C++, C#, Visual Basic, JavaScript, and HTML/CSS for x86, x64, and ARM machines. Visual Studio version 11 provides templates that represent fully functional Metro-style apps that support these various languages. Converting XAML apps into Metro-style apps is easy to debug, Holecek contended, after copying the XAML code into a C# template. He said developers just need to look for three categories of errors involving namespaces, networking code and browser navigation to make the conversion.

Microsoft also has been working with the Worldwide Web Consortium to improve Web apps via adding gradients, SVG filtering, grid and flex-box layouts, and column-text layouts, as well as local storage, Web Workers and WebSockets, Holecek said. The canvas element is being used to create freehand graphics on Web pages, he added.

Creating a sharing contract in an app using JavaScript took just two lines of code to do, according to a demo performed by Holecek. A developer might use this technique to share the content of a canvas element to whomever might request it.

Holecek showed off some of the controls enabled in Microsoft Expression Blend, noting that "it is important to note that we are making all of the controls available to the XAML and JavaScript communities."

The various form factors used for Windows 8 can be found in Expression Blend. Developers don't have to purchase various devices to test their code. Developers also get some support within the Windows Store certification process. Microsoft added a link to the Windows Store directly from the start menu in Windows 8, allowing users to find and buy apps.

Apps submitted by developers to Windows Store are run through a series of tests, which demonstrate their technical compliance.  The Windows Store also has an application dashboard that shows the number of app downloads. This dashboard also provides telemetry data to developers that may be useful for debugging their apps, Holecek said.

Microsoft did not describe the Windows 8 release cycle. It's thought that the OS could hit the market as early as April 2012 or as late as 2013. The complexities of the ARM port are expected to impact the release.

Featured