Tim Sneath

Musings of a Client Platform Guy

February, 2007

  • Tim Sneath

    WPF and Orcas

    • 15 Comments

    (No, that's not a whale reference...)

    Today we released a fresh CTP of the next release of Visual Studio (codenamed "Orcas" - it's one of the San Juan islands that are a bit further out from Redmond than Whidbey Island...). I wouldn't normally take the time to note this third or fourth CTP release, except for the fact that this is the first release that has WPF tools support baked into it (yay!).

    "Orcas" has a ton of new features for WPF development over the releases that we shipped as extensions for Visual Studio 2005. It's got true WYSIWYG support for XAML code edits, it's got the new Property Editor checked in (shared with Expression Blend), it has far better Intellisense support for XAML, and it's much better for layout.

    I haven't used this new build for long enough to judge stability, so I can't put my hand on my heart and say that you should switch to this as your WPF development tool of choice. There's still a place for Expression Blend as part of a developer's toolkit, since "Orcas" won't contain in-depth support for animation or templates, but the combination of the two should give anyone a good toolset for constructing awe-inspiring WPF applications.

    The "Orcas" CTP is shipped as a Virtual PC image - download Virtual PC 2007 from here.

  • Tim Sneath

    WPF Chat Transcript #2 Now Available

    • 1 Comments

    Thanks to the 120+ of you who showed up for the second technical chat with the WPF and Expression Blend teams. We really enjoyed hosting you all; the chat transcript is now available here.

  • Tim Sneath

    Great WPF Applications #11: Areva e-terravision

    • 0 Comments

    I've been trying with this series to satisfy the desire we all have for instant gratification by including plenty of applications that you can download and try out with just a couple of clicks. But of course, not every application fits into that category: there's a number of really important WPF applications that have more complex setup needs or are deployed internally within an enterprise. I'm going to highlight a few of these applications through this series: hopefully they'll be interesting to you even if you can't run them locally on your own machine.

    One customer who stepped up early in the development cycle to adopt WPF is Areva, a multi-billion dollar global enterprise. They needed to build the next generation release of their energy management system, which provides a view into the transmission of electricity between power stations and across the network, and allows operators to analyze current energy output and predict short-term needs. I hardly need to highlight the mission-critical nature of this operation: having access to the right data and being able to see trends and patterns is essential to avoiding brownouts and keep the network operating efficiently.

    A screenshot will never do true justice to this application: it's intended for use with high-resolution, multi-monitor displays. But the two images included in this post highlight some clever ways they've used WPF to add value to their application. The image above shows a user interface technique called data lensing that allows you to see several areas in more detail at once whilst retaining a view of the broader picture. The application allows an operator to create multiple lenses and overlay them over the map by rubber-banding an area of interest. The vector-based model in WPF takes a lot of the pain out of implementing this; this article shows how you can get aspects of this model for free with any WPF application using the Magnifier accessibility tool.

    The second image shows how even 3D can be brought in to an application like this with sensitivity to allow the overlay of yet more data. A simple animation rotates the canvas into a 3D plane and then overlays a bar chart with additional information about the electricity network.

    One thing that you can't see from any static image is the level of data binding at play here. When this application is running, electricity flows are represented by moving arrows: the speed, color and size of the arrows are all used to represent different dimensions of data. The application becomes pretty intensive when there are hundreds or thousands of these animated arrows on the screen at one time; they use a per-frame update to minimize the load on the system.

    Although this video dates back a while and the application has come on a long way since then, probably the best way to see this in action is to check out this two minute snippet of a Channel 9 video from when Mike Hackett (one of the development leads for the application) came into our labs here in Redmond for a development week. It highlights many of the features I've mentioned above in more detail.

    Areva got a lot out of WPF. Here's what the e-terravision product manager, Gennaro Castelli, had to say about their choice of technology:

    "We like the data binding, layout, composition and the built-in ability to represent the UI in markup. Without WPF, our UI would've been much less ambitious. In particular, we wouldn't have attempted some of the 3-D features. The styling and layout features of WPF also made it possible to do more iterative prototyping of the UI. We could show stuff to our customers and change the things they didn't like."

    The application is currently in open trials with Areva's customers, with the final version due this quarter. For more information on this and several other WPF applications, check out this new article from the MCP Online magazine.

  • Tim Sneath

    Great WPF Applications #10: Daily Mail, Seattle P-I, forbes.com, New York Times

    • 34 Comments

    I've been holding off from highlighting the New York Times Reader as one of the applications in my portfolio for a few weeks, even though it clearly is a polished example of how WPF can transform user experience. Today, we can finally reveal one more little secret, with the announcement of three more amazing news reading applications: from the Daily Mail in the UK (owned by Associated Newspapers), forbes.com and the Seattle Post-Intelligencer here (owned by Hearst Corporation).

    From the early days of Avalon (as it was then known), we made a pretty hefty investment in improving the text reading experience. You can see this at every level of the stack:

    • In ClearType, we implemented sub-pixel positioning and y-direction smoothing. Studies done by the University of Texas show that ClearType increases reading speed by 5-7% with no reduction in comprehension.
    • Within the rendering stack, support for OpenType features such as ligatures, contextual alternates, traditional numerals and swashes improve readability and allow for greater freedom of expression by designers.
    • At the document level, the implementation of flow content allows semantics to be applied to text such that it can automatically reflow across multiple columns and pages, with embedded headers and footers, figures, floaters, tables, lists and formatting and support for dynamic resizing of the containing element.

    Combining these three capabilities together provide a major set of enhancements over traditional web-based interfaces: instead of a fixed column of text with fixed pagination and limited font support, you have tremendous flexibility, control and customization over the reading experience. As a simple example of this, click here if you have .NET Framework 3.0 on your machine - this is simply a loose XAML file and two PNG images - no code, nothing beyond regular XAML markup. That's what the platform provides out of the box in WPF.

    When we started to work with the New York Times, it was clear that we could go still further by creating a client-side Windows application that applied these technologies. And so we collaborated with them to build a full reader application that supplements the above services with ink and text annotations, advertisement support, offline synchronization, integrated search, dynamic retrieval of new articles from custom RSS feeds, and smart templates. We launched the New York Times reader together last fall, and it remains available today free of charge from the New York Times website.

    What most people didn't realize was that this wasn't a one-off application; we've been working ever since to turn that same reader code into a more generic toolkit that any web content publisher can use to create their own custom reading experience. The launch today of these new reading experiences demonstrates the flexibility and attractiveness of the toolkit; even a cursory examination of the four readers side-by-side shows how each newspaper has been able to tailor the reader application for their own brand and needs.

    The Daily Mail is presented in a tabloid format as a newspaper, with oversized headlines and a different reader demographic to the high-brow New York Times. Compared to the other two newspapers, their stories are typically somewhat shorter and photos play a greater role: as a result, they have a different template. The Seattle P-I newsreader has a distinctive typeface and a template closer in style to the New York Times reader; a couple of innovations they've implemented include an archival capability that allows you to read news from previous editions, as well as a Windows Vista sidebar gadget that shows the latest stories and acts as an entry point into the main application. All four readers share support for offline reading and integrated search.

    This is just the start: at the moment the toolkit is in a private beta, but in a few months time we'll be releasing the reader SDK more broadly so that anyone can build a similar customized application. Once you've implemented support for RSS feeds with custom extensions to support the reader functionality, it's a relatively short step to getting an initial application up and running. Expect to see many more similar news readers appearing over the next weeks and months.

    Download links:

    I shouldn't forget to highlight IdentityMine, who customized the forbes.com and Seattle P-I readers, and Conchango, who worked on the Daily Mail eReader. These are two great WPF partners who did an excellent job on all these applications.

  • Tim Sneath

    Virtual PC Museum 2007

    • 19 Comments

    As Mike Swanson mentions in his blog, Virtual PC 2007 was released this week as a free download. This isn't a revolutionary release, but it's notable for its support for Windows Vista as both a guest and host OS, as well as x64 architecture host support.

    Some of you know that I have a side-interest in collecting vintage editions of Windows. In the same way as many people see their histories as being framed by the music of each era, my professional career and interest in computing is set against the soundtrack of different Windows milestones. My first experiences of PC computing included Aldus Pagemaker running on Windows 2.x; Windows 3.0 represented my first experience of setting up a network of PCs; my memories of Windows 3.1 are dominated by learning almost every entry in win.ini in order to pass my first MCP exams. I remember the excitement and pain of installing each Windows 95 beta release on a 386 PC; the embarrassment of taking out an important server for two days with a failed Windows NT 3.51 upgrade that I hadn't properly prepared for; the agony of Windows NT 5.0 Beta 1 and so on. Now I'm turning into a thirty-something curmudgeon, I look back with some nostalgia at those days when life was simpler and you could truly know a Windows release to a depth that is impossible today.

    For a few years now, I've been keeping a little "museum" of old Virtual PC images on my machine as a way to remind myself of these old Windows releases in all their warts and glory. My collection goes as far back as Windows 1.03, a release that typically ran on a 4.77MHz 8088 machine with dual 5¼" floppy drives and no hard disk. Virtual PC was clearly not designed first and foremost as an archival environment, but it's actually impressive in its compatibility with these older releases. I was a little worried that the 2007 release might have broken many of the vintage images, but to my satisfaction everything that worked on Virtual PC 2004 continues to work without change on the latest release, as the following screenshot demonstrates:

    A few releases have never worked, sadly: Windows NT 3.1 fails at the second or third reboot with a fatal warning that doesn't come to mind right now. Microsoft OS/2 1.31 gets most of the way through the floppy-based installation before locking up the virtual machine. And Windows 3.0 hangs in 386 Enhanced mode (you need to run win /s from the command line to start it in the 80286-compatible standard mode). But it's good enough to satisfy my nostalgia.

    One obvious benefit of running in a Virtual PC environment is the ability to easily run so many releases side-by-side. It's possible to see the subtle transitions that took place between point releases (ooh - WfW 3.11 introduced fax support!), and identify amusing idiosyncrasies (Notepad didn't gain Find and Replace support until as late as Windows NT 4.0). One day I'm sure I'll look back at Windows Vista with similar nostalgia...

Page 1 of 3 (15 items) 123