Tuesday's PDC keynote is all about Windows 7 and to a lesser extent Visual Studio 2010 and the .NET Framework 4. Senior Vice President Steven Sinofsky introduced Windows 7 and Julie Larson-Green provided various demos. The new UI features in Windows 7 were loved by the enthusiastic US audience but they left me cold. All I can see in this bucket of UI bells and whistles is yet more years of working out how to disable Microsoft's new feature to 'help' me that simply succeeds in getting in my way. Each feature depressed me even more. So I was in need of some cheering up. And along came Windows 7's support for multi-touch. I love this feature. This is basically all of the work that went into Microsoft Surface now available in Windows 7. Existing applications (e.g. Word, Excel, .NET applications) can be used with the basic touch support without any modification to the applications. However, Windows 7 includes a multi-touch API that you can take advantage of. Multi-touch aware applications enter a whole new world of functionality and potential. Scott Guthrie later showed a WPF application that was multi-touch aware. The application, a canonical photo viewer (we really need to move on from the photo viewer WPF demo), allowed photos to be re-sized, dragged, opened and closed all using touch, just like you've seen on any Microsoft Surface demo. Armed with a copy of Windows 7 you can try this out yourself today using an HP Touchsmart (the cheapest I've seen at the time of writing is ?550 inc. VAT and delivery).
Here is a collection of other notes I made about Windows 7:-
- Windows 7 uses the same kernel as Windows Server 2008 and Windows Vista so all of the drivers that had to be rewritten for Vista should work fine with Windows 7 and we should not suffer the same driver-compatibility shock we did with Vista.
- Windows 7 includes support for up to 256 processors. As parallel computing and virtualization become more common place this makes an increasing difference.
- Windows 7 allows USB sticks to be encrypted using Bitlocker.
- Windows 7 allows you to create virtual hard disks (VHDs) from within Disk Manager (instead of using Virtual Server, Hyper-V or Virtual PC). In addition Windows 7 can boot from a VHD.
- Windows 7 makes it easier to set a custom DPI size for your display. Whereas most people in Europe and the US won't need this feature it will make a difference to CJK (Chinese, Japanese, Korean) fonts where the DPI is sometimes increased to make text easier to read.
- Windows 7 allows you to customize the shut down buttons actions so that you can change the shut down button to actually shut down (instead of merely going to sleep).
- Windows 7 allows you to specify what messages should pop up from the tray icons to alert you to all of the trivia that goes on on your computer. I like this feature as it allows me to treat trivia as trivia and restrict my notifications only to things that I really am interested in.
- The Windows 7 UAC can now be configured as to how intrusive it is. Previously it was either on or off but in Windows 7 you have a slider that you can use to indicate how much you enjoy being interrupted when you are busy doing real work.
- Windows 7 includes the latest version of the .NET Framework which in the current pre-beta version is .NET Framework 3.5 SP1 but this will probably change before the operating system is released.
- I'm not sure whether this applies only to pre-release versions of Windows 7 or whether this will be true for the final released product but each window in Windows 7 has a button that you can click to provide feedback about that window. The report that is sent to Microsoft includes contextual information that Microsoft needs to file the report correctly. This helps all of us as it makes providing feedback so simple and easy that we are much more likely to make the effort.
- Windows 7 includes new versions of Paint, Calculator and WordPad. Sadly they all use the new ribbon now so any previous knowledge you have on how to use these applications goes straight out of the window.
Two more features stood out for me and it's interesting how often the tiny features are the ones that are most attractive. Pressing the Windows key and the "+" key now activates an enhanced version of the traditional Windows magnifier to zoom in to the current mouse pointer where the magnifier follows the mouse cursor (and Windows "-" zooms out). As such this provides the same functionality as Zoomit and NLarge (but without the drawing functionality). I suspect that I will continue to use Zoomit though as this will give me consistent functionality across all operating systems. The second feature is the pressing the Windows key followed by "P" brings up the output display dialog that allows you to send the computer's output to a second monitor for presentations. In addition this provides a real time change as you move from output option to output option so you can see the effect of your selection without actually making it.
And, of course, the most important question as always is when will we get it ? The version of Windows 7 given away to PDC attendees is a pre-beta that is not feature complete. There will be a full beta "early in 2009" with the final product being released "3 years after the Vista ship date".
Scott Guthrie demoed Visual Studio 2010, the .NET Framework 4 and WPF with multi-touch support. Visual Studio 2010 now uses WPF for its UI (although not everything has been converted to WPF yet in the current CTP) which is a wonderful step forwards and a useful seal of approval from Microsoft that they are prepared to use it for their own products. Visual Studio 2010 also supports multiple web.config files (and presumably other types of files as well) for different scenarios so you can have a base web.config plus variants for debugging, staging, deployment etc.. A useful feature of the .NET Framework 4 is that it supports side by side execution of the CLR 2 and CLR 4 (at the same time) which will guarantee backwards compatibility.
On the subject of current technology:-
- Various new controls (DatePicker, Calendar, DataGrid, Ribbon) for WPF will ship this week as well as the Visual State Manager that has previously only been available for Silverlight.
- The Visual Studio intellisense file for jQuery shipped on 28th October 2008.
Nick Lansley (Head Of New Technologies at Tesco) and Paul Dawson (Conchango) showed off their new WPF application for the Tesco's shopping cart which looked excellent. They also mentioned that they are making the API for their service available to developers.
All in all there was enough here to recommend watching this keynote online. Enjoy.