Windows 8 Developer Preview

Windows 8 Developer Preview

Summary: Windows 8 introduces a new interface, Metro, with an 'immersive' look-and-feel that's designed to scale from smartphones to desktops. It's still pre-beta, but developers now have the tools to start creating applications and services to exploit it.


Windows 8 and the Cloud
Microsoft has built many of the Windows Live services into Windows 8, backing up state and settings into the cloud, along with user tiles. After logging into a Live ID, you can immediately start downloading settings to a new machine.

A new Live Mail client provides Exchange support, as well as for web-based mail applications. It's a very similar tool to the Windows Phone 7 mail client, with a two-pane view of your mail. You can tap to open folders, while the Calendar application will aggregate views from several calendars, including shared calendars.

If you use the People hub on Windows Phone 7, you'll find the Windows 8 People application very familiar. A connected service, it uses the social connections built into Windows Live to give you one place to see everyone you know — along with their social media status updates. There's no need to worry about networks, as it's all handled by the Live service platform, with links for instant messaging and for photo libraries.

Microsoft has finally integrated its SkyDrive cloud storage tools with Windows, and applications will be able to use the service. Users will see SkyDrive in the Share charm, and will also find applications using it to handle sending large files — sharing photos, for example. The SkyDrive service will also now show connections from other PCs, letting you connect to your work PC with no need for additional authentication or tools.

Developing for Windows 8
There has been much speculation over the Windows 8 development model, and Windows developers will breathe a sigh of relief to discover they won't be forced to develop all their Windows 8 applications in HTML5 and JavaScript. Instead, a new set of APIs will let them build Metro applications using familiar tools and technologies, with Silverlight and HTML5 two optional user interface technologies that will work on both ARM and Intel platforms.

You can still build traditional desktop applications in Windows 8, but Microsoft is encouraging new development to focus on immersive Metro-style applications. In order to deliver these applications, it's releasing a new set of APIs on top of the Windows kernel. A set of C++ Windows Runtime APIs, WinRT, will give you comprehensive access to the OS capabilities, exposing them to managed and unmanaged code, and to JavaScript. The underlying development model builds on the familiar model-view-controller design pattern, with HTML5 and XAML used to deliver views as Metro-style user interfaces.

The bundle of sample applications in the Windows 8 Developer Preview includes a conference planner for the BUILD event where Microsoft unveiled Windows 8 and its development model. Applications like this can be built using HTML5 grid layout tools quickly and easily, with JavaScript links to Windows

A new version of Visual Studio (currently codenamed "Dev 11") provides plenty of Metro project templates, with JavaScript now a first-class citizen alongside C# and Visual Basic. Some of the templates are fully functional applications that can be quickly customised, while others just put the Metro framework in place and let you do the rest. If you're producing an HTML/JavaScript application, this includes setting up the base JavaScript libraries and CSS files.

HTML Metro applications use the same rendering engine as IE 10, so you get all the benefits of its GPU acceleration and standards compliance. That also includes its CSS support, and the new layout standards for grids and flexboxes. With support for WebSockets in Windows 8, applications will be able to connect to data sources and services, as well as taking advantage of Web Workers for background processes. Touch comes for free with the Windows 8 controls, and it's also easy to add contracts to your application using WinRT APIs.

Designers can take Visual Studio Metro code and use a new version of Expression Blend to style user interfaces. Blend will support HTML and JavaScript, as well as XAML and Silverlight, with tools for quickly adding and editing Metro features and tooling, plus interactive editing for styles and layouts. A tool library lets you drop control elements onto a page, with HTML elements offering the same features as Silverlight XAML elements. Silverlight developers will be able to finally deliver Windows Silverlight applications, outside of the browser — although this does mean namespace changes. Tools in Blend will help style controls for Metro, and you'll need to write new code to work with WinRT. It is possible to use compilation symbols to produce source code that can be compiled for web, phone and Metro, although this can result in overly complex code.

The Windows Store
Windows 8 will introduce Microsoft's new application store. Similar to the Marketplace developed for Windows Phone 7, the Windows Store is integrated into the Start screen and into the Windows 8 developer tools. This makes selling and distributing applications just another step in the application development lifecycle.

Developers publishing applications to the store will have to fill out application metadata, and then choose a licensing model (with the option of free trials), and a price. Once uploaded, a page shows an application's progress through the certification process, from security tests to technical and content compliance. Versions of the tests are included with the development tools, so you can run them yourself before submitting an application, which should speed up the submission process. Once an application is in the store, developers will be able to see telemetry from installed copies, allowing them to debug and fix applications, before posting fixes and updates to the store. The store is a Metro application build using HTML, JavaScript and CSS, with themed groups for applications. A spotlight section is curated, with the rest of the sections being automatically generated. The store itself won't be part of the developer preview.

Microsoft's Building Windows 8 blog has already shown some of Windows 8's performance optimisations, with the aim of producing an OS that runs on the same hardware as Windows 7, while offering efficiencies. A new Task Manager has a clean Metro look-and-feel, with a new process management view that owes a lot to Sysinternal's Process Explorer. You can use it to see a heat map of resources in use, as well as getting an application performance history for Metro applications. As an added bonus, a right click on a process name launches a web search, helping track down details of unknown processes.

The pre-beta developer preview already uses less memory that Windows 7 on the same hardware, and coalesced system times and new lower power state tools have improved overall performance. The new kernel hibernation-based boot is extremely fast — faster than a monitor's resolution detection and switching! Some functions, like a new low power connected standby mode, only work with ARM architectures at present, handling saving application state for rapid power-off.

As Metro applications are designed to be shut down at any time, they can enter a new suspended state, not scheduling processor time, which helps to deliver multitasking on CPU-constrained machines like Atom netbooks. A set of performance contracts let you write code that won't be suspended or shut down, so you can write applications that carry on using network connections or play audio in the background.

Windows 8 also brings deduplication to memory pages, consolidating memory used by shared libraries and common data. It's a process that only works when memory pages are identical, but can save several megabytes of memory on a busy machine. It's a lazy process, periodically scanning memory and combining where possible.

Security in Windows 8
Like other recent Windows versions, Windows 8 has been built using Microsoft's security design lifecycle methodology. It also adds new security features to the OS, including a secure booth that works with UEFI BIOSes to sign the boot process and only trust those signed processes. If a PC is booted with a compromised OS it won't start, reducing the risk of installing rootkits and other low-level malware.

The boot process also loads anti-malware early — even during fast boot. Microsoft will bundle its own anti-malware suite, an upgraded version of Windows Defender, but OEMs will be able to install their own anti-malware solutions. Windows Defender will add full antivirus, with run-time, network filtering and web protections — protecting you from compromised devices and drive-by web attacks. Windows' reputation-based defences are getting an upgrade too, with SmartScreen now supporting applications installed from more than just the web.

System management
Windows 8 makes it easy to re-provision and manage machines. If a system has a recovery image, all you need do is hold down the Windows key when you restart, and choose the reset option to fully format the hard drive and reinstall Windows, ready for a new user.

If you're having problems, a refresh will reset the OS, replacing your applications, settings and data, so you can carry on working — with only a five-minute wait

An alternative option allows you to refresh the operating system. Choose the refresh option and your PC will take your files, data and personalisation, save them off, and then reapply them to a refreshed operating system. It's a quick process, and can help recover machines that may have had system files corrupted or replaced by third-party applications.

Windows 8 and business
Although much of Windows 8's new user interface seems targeted at the consumer market, it also contains many business-specific features — especially when used in conjunction with Windows 8 Server.

One important new feature is Windows To Go, which runs Windows 8 from a USB stick, secured with BitLocker. It's an interesting alternative to VDI (Virtual Desktop Infrastructure) for smaller organisations, where implementing a shared storage system and running VDI servers can be expensive. All you need to do is issue staff with Windows To Go USB sticks, and they can plug them into a machine and reboot to launch their personal Windows environment. If a running copy of Windows is accidently unplugged, you just reinsert the key and the system will automatically restart and resync, leaving you where you were when the USB drive was unplugged.

Windows 8 has full VDI support too, using RemoteFX. Users will be able to see a catalogue of remote applications on their desktop, accessible with full fidelity — with touch support too. There's also support for multiple remote desktops, and for using Hyper-V on Windows 8. Virtualised Windows on Hyper-V is a debugging tool, and developers can use it as an isolated debugging environment.

The future of Windows?
Windows has changed completely many times — the jump to Windows 95, to XP, to Vista and to 7. However, none have been as dramatic as the changes in Windows 8. The new shell and the Metro user interface model are very different ways of working to the familiar WIMP (Windows, Icons, Mouse and Pointer) paradigm. That's not a bad thing: PCs are changing, and Windows needs to change in order to support the next five years of hardware.

It's challenging to develop a user interface that scales from phone to TV, via slate, notebook and desktop PC. But Microsoft seems to have nailed it. Metro's immersive look and feel works well on a range of different PC hardware, is easy to learn and a lot more informative than the old start menu and task bar. Change like this is good, and although it can't be a big bang that disenfranchises current Windows users and developers, Windows 8's desktop-as-application model makes a lot of sense as a tool for backward compatibility, while encouraging development of new Metro applications.

The pre-beta code we've seen is buggy, and not ready for prime time. However it is ready for developers to build and test new applications — and with the new Visual Studio and Expression Blend tooling, Microsoft is giving them what they need to get started. It's going to be an interesting few months as Microsoft fine-tunes Windows 8 for release, and as developers learn to build applications and services that make the most of it.

Topics: Windows, Operating Systems, Reviews, Software

Simon Bisson

About Simon Bisson

Simon Bisson is a freelance technology journalist. He specialises in architecture and enterprise IT. He ran one of the UK's first national ISPs and moved to writing around the time of the collapse of the first dotcom boom. He still writes code.

Kick off your day with ZDNet's daily email newsletter. It's the freshest tech news and opinion, served hot. Get it.


Log in or register to join the discussion
  • Personally i've not been happy with the Windows 7 move away from the "Windows, Icons, Mouse and Pointer" paradigm, to me it worked like an expert system guiding you to what you needed, the new Metro approach may have merit on mobile devices, but on desktops my gut feeling is it'll get in the way of productivity, and I suspect guzzle resources. That said I'm keen to get a chance to play with it and be open minded. Are MS anywhere near releasing a beta Windows 8 for developers to play with?
  • @AndyPagin,
    Windows Developer Preview downloads:

    Link thanks to the the Guardian Tech Page, I should add.
  • I agree with you, I tried Windows developer preview(Windows 8) and I cannot get anything done with the Metro UI, I've heard that Microsoft will include the option to disable the Metro UI for desktops, though for desktops it should be disabled from setup. It is counter productive, you have to access the Control Panel from windows explorer, newly installed programs will have to be accessed directly through it's installation folder by clicking on the executable. IE10 is nice, it has a spell checker for those who need it, and it's fast, super fast. Other than that Windows Developer preview is crap, if only I had took precautions before I accidently let it overwrite my Windows 7 installation.
  • @AndyPagin Actually on my other test machine, a standard core i5 business laptop, Windows 8 and Metro use around 2/3 of the resources of Windows 7.

    Also, on a keyboard machine, just type to find and launch applications. The whole Metro UI is the Windows 7 search. No need for icons and pointers at all!
    Simon Bisson and Mary Branscombe
  • I can't get any of the metro apps to work. Tweet@rama, news, weather, stock...and all other built in apps give me this green screen all the time( the same green screen i get when IE10 crashes) . What am I doing wrong? How do I get them to work?
  • FYI: HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer
    Change RPEnabled to "0" to disable Metro.

    Metro gone simple as that.......I think the whole touch thing is a transitional phase on the road to distance gesturing or holographic touch. The fatigue level of touching a laptop or desktop screen for prolonged periods I think will be surprising. The Metro UI works very nicely with the scroll wheel of a mouse.
    roger andre
  • @ Rashed

    It would appear that most of the Tiles are just dummies at this point in time.

    If you know your way around Regedit, your best bet is to follow the advice of Roger Andre, repeated below.

    Go to 'HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer' and change RPEnabled to "0" to disable Metro.

    To run regedit, type 'regedit' into the explorer address bar. Refer to the original article for an explanation of how/why this works.

    One problem which I haven't resolved yet is the installation of a programme, please don't call it an App, which first extracts to the temp file before proceeding to the actual installation. The installation just died.
    The Former Moley
  • plz help guyz
    i cant access metro apps
    on attempt to run them say socialite it gives error
    error webauth broken and you r not connected to internet
    whereas i m connected to internet
  • @moley, @rashed - The tiles are live, and work well for me - I suspect you have a failed install. Try running an environment refresh, it'll reset the OS and take about 5 minutes.

    This is pre-beta code and there are definite issues on some hardware.
    Simon Bisson and Mary Branscombe
  • @ Simon Bisson and Mary Branscombe

    I know why I'm experiencing lack of functionality with the tiles. I did not install Windows 8 using a Live ID since I've had a problem with my password and haven't bothered to resolve the problem or create a new Live ID.

    Regarding the registry entry which changes the desktop from Tiles to a normal Windows 7/8 desktop, do you know if there is a way of making this change without directly editing the registry each time?
    The Former Moley
  • @Moley, i haven't found a way to make the change yet. Paul Thurott from the Super Site For Windows has blogged about it, but I haven't read the post yet; the net is soooo big!
    roger andre
  • @ Simon Bisson and Mary Branscombe

    I set up Windows 8 Preview without a Windows Live ID and consequently can't use the Tiles.

    I'm wondering if you, or anyone else, can tell me how to set up Windows 8 with a Live ID without resorting to a clean install.
    The Former Moley
  • @ Roger Andre. The previous trick to disable the Metro UI (Go to 'HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer' and change RPEnabled to "0" to disable Metro.) does not work in the in the Windows 8 Consumer Preview.

    Anyone know how to revert to the Windows 7 Desktop?

    By the way, I did find out how to arrange it so that I could have either the Metro UI or the Windows 7 Desktop without constantly editing the registry. Simply have two Users and log in to one with Metro and the other with the Windows 7 Desktop. Of course, you can't share documents or email across the the two users.

    On further consideration, I'm going to abandon the Windows 8 Customer Preview until and unless the Windows 7 Desktop choice is restored. There is the Vistart program, but it's not quite the same as it is function limited.
    The Former Moley