Programming Windows: Alpha Tales (Premium)

Windows had a busy 2002 between Windows XP Service Pack 1 and the new Media Center and Tablet PC Editions. But enthusiasts were more concerned about the future of Windows, which we were told would now take a pitstop at Longhorn before moving on to Blackcomb. And there were many leaks, fakes, rumors, and even official releases with which to contend that year.

Today, personal technology is similarly consumed by leaks and rumors, but we don’t see a lot in the way of fakes. Instead, more technically capable fans create concept art of imagined future products from Apple, especially. And these concepts are often published on enthusiast blogs to help pass the time between actual product announcements.

The 2002 equivalents of these concepts, which I simply called fakes, were much less sophisticated. And because it was Microsoft, and not Apple, at the center of the personal computing world, they focused mostly on software, and not hardware.

Many were based on Steve Guggenheimer’s ill-timed demo of future MSN interfaces from late summer 2001, as it was widely misunderstood to represent the user experience Microsoft was creating for Longhorn. And many were laughably bad.

Interestingly, even the worst of the fakes were pointing in the right direction: with both MSN and Windows, Microsoft was wrestling with a new user interface convention called a dashboard or sidebar that would display notifications and live data in a pane on the side of the screen that would be visible at all times. It was essentially a front-end for web services. Consider, for example, this Microsoft Research project.

Because it was revised so often, this interface had appeared first in limited form the MSN 6 user interface via a My Stuff bar that included links to MSN Calendar, MSN Money stock quotes, MSN Communities, MSN Photos, and online weather. But in MSN 8, this interface was renamed to Dashboard, and it had been recast as “the open bar” that Guggenheimer had described a year earlier.

The MSN 8 Dashboard was an extensible interface, based on XML, that could be positioned on either side of the display, and it could be detached from the rest of the MSN 8 interface so that it appeared on-screen at all times.

And Dashboard components—called parts—would display live information and could provide a fly-out window with more detailed information.

Internally, Microsoft spent much of 2002 gearing up for the Longhorn wave, which would bring major changes to Windows application development for the first time since the initial release of .NET and Windows Forms. At WinHEC 2002 in April, the firm explained to hardware makers that Longhorn would offer a richer text experience with better font management and hardware acceleration. It would be based on ClearType, which to that date used software-based rendering techniques, but now with a “composition” pass in the display technologies that would render items on-screen.

This technology, which Microsoft called Windows Desktop Composition, would overcome the limitations of Windows display rendering, but it would come at a price: hardware-accelerated graphics required, well, hardware, in this case in the form of a dedicated graphics processing unit (GPU), a feature most Windows PCs did not include. But it would enable smooth, flicker-free animations, new rendering features and effects, and, for those systems with a GPU, it would be much more efficient than pushing all of the graphics through the CPU.

Put another way, Longhorn would push past the single-buffered GDI and GDI+ functionality provided by previous Windows versions and use the hardware-accelerated, Xbox-like Direct3D rendering pipe for the display. Surfaces would be “composed” to form desktop images using double buffering. Hardware makers left the show with a Windows “Longhorn” Graphics Bandwidth Requirements document that explained the hardware requirements in detail. These included 32 MB of VRAM, support for textures of at least 2048 x 2048, and much more.

Left unsaid was that Longhorn’s graphics requirements were really designed to leapfrog what Apple had accomplished with Mac OS X. Released the previous year, and months before Windows XP—which still utilized software-rendered GDI and GDI+ graphics—Apple’s modern new desktop platform featured hardware-accelerated graphics with transparent windows and menus, and a pretty, higher-resolution user interface called Aqua. Microsoft customers were demanding a response, but they were perhaps unprepared for the system upgrades it would require.

Meanwhile, Longhorn had quietly evolved into a big bet.

Originally designed as a less aggressive way forward than Blackcomb, Longhorn was turning into an aggressive release of its own. At WinHEC, Windows lead Jim Allchin stated that the “next big wave, which we’re working on very hard,” was called Longhorn and that it would arrive “beyond 2003,” resetting the launch timeframe even further into the future. This was a telling admission given the back-to-back releases of Windows 2000 and XP, and the three major releases—XP Service Pack (SP1), Windows XP Media Center Edition, and Windows XP Tablet PC Edition—that the firm would deliver in 2002. Longhorn would be so big that it required a lot more time.

My WinHEC briefings provided only a few more details. Longhorn, I was told, would feature next-generation communications and collaboration experiences, streaming AV functionality, integrated developer connectivity, simplified networking, and tools that would help Microsoft deliver on its connected home and mobility promises. And Longhorn Server would feature a new file system that would support “flexible queries” and a “heterogeneous [data] store.” It was a “big investment area.”

Granted, much of the show focused, as expected, on Microsoft’s 2002 hardware innovations, including the expected Media Center PCs and peripherals, Tablet PCs, and Microsoft’s first-ever line of wireless networking hardware.

That July, we learned more about Longhorn’s coming “composited” desktop graphics system when Mary Jo Foley reported that Longhorn would include a new application programming interface (API) framework, code-named Avalon.

“Avalon is the key to the new ‘inductive’ user interface that will debut in Longhorn, sources say,” she wrote. “The new UI will allow users to organize and share information more intuitively, most likely using some kind of ‘dock,’ a la Microsoft Office XP, sources say.” Foley’s report also touched on the new file system, which would apparently be part of the Longhorn client as well. “Files would no longer be displayed on their physical location but instead could be organized by context or in some other way set by users and/or administrators,” she wrote, correctly alluding to a feature that Microsoft did intend to deliver in Longhorn.

Alas, Avalon, like Longhorn, wouldn’t arrive until at least 2005. So we had a new date. “Until two weeks ago, Microsoft was talking about Longhorn shipping in 2004,” she noted. “Earlier this year, Microsoft officials said Longhorn was due in 2003.”

Later that month, Microsoft mentioned Longhorn again, this time during a “.NET Day” event that I’ll be writing about separately. Bill Gates noted that the work Microsoft was doing on a coming generation of .NET would take “two years” and “then after that is when ‘Longhorn’ comes along,” implicitly confirming the 2005 target launch date for Longhorn. The other Microsoft senior executives who spoke that day—CEO Steve Ballmer, plus Jim Allchin, Eric Rudder, and Jeff Raikes—didn’t even mention Longhorn.

As summer headed into fall, the leaks began.

In late August, I received a compelling leaked image of Longhorn build 3670. Unlike previous and fake screenshots, this one utilized the Windows XP user interface and appeared to be based on the Server codebase, which was credible. It also featured an early Longhorn wallpaper that would later pop up in known-real builds.

And then it finally happened: in late October, I received a legitimate leaked build of Longhorn. It featured a new XP-based user interface called Plex—which I and others correctly guessed was a placeholder—an MSN 8 Dashboard-like feature called the Sidebar, and Activity Center-like interfaces in key file system locations like My Pictures & Videos.

“This is an early alpha build, and the final Longhorn product will bear little resemblance to what you see here,” I wrote at the time. “If you think back to the early Whistler builds, which featured the ‘Watercolor’ visual style, you’ll get the right idea: Longhorn is a work in progress, mostly current-generation technology, and much of what’s in there is just the same old stuff from XP. Major UI work, a database-based file system, integrated DVD burning, and other cool features are still to come.”

I then documented the key differences when compared to Windows XP:

Welcome screen. The Longhorn alpha’s Welcome screen was a slightly modified version of the one in Windows XP, and it featured a time and date display, which I said was “a frequent customer request.” It resembled prototypes I’d seen at the Microsoft Home on the Microsoft campus.

Versioning. Windows “Longhorn” was identified as Windows version 6.0, compared to version 5.0 for Windows 2000 and 5.1 for Windows XP. The leaked build was numbered 3683.

Plex. You could enable the new visual style in Display Properties. “I don’t consider Plex to be particularly attractive or clean, personally,” I wrote, “and it resembles many of the homemade XP themes that you can find online.”

Sidebar. In the Taskbar settings dialog, you could enable the Sidebar, which was to that date inarguably Longhorn’s most discussed feature. The Sidebar was basically a side-mounted menu of sorts, very much like the MSN 8 Dashboard, that let you display XML-based components called Tiles. It appeared blank when first enabled, and you could minimize it, add Tiles, toggle which side of the screen it appeared on, resize it, and determine whether it’s translucent. Bundled tiles included a clock, a virtual desktop manager, a Most Frequently Used (MFU) programs list, the Quick Launch toolbar, an Internet search bar, a My Photos slide show, and a “user tile,” which let you quickly switch between users. Each Tile could be resized, moved up or down in the Sidebar, or minimized, and some offered a fly-out menu to access more features. Interestingly, you could also choose to use the Sidebar as the taskbar, in which case the normal taskbar would disappear and the Start button moved to the Sidebar.

Desktop and Start menu. There were only minor changes to the desktop and Start menu. You could add My Contacts and My Hardware nodes to the Longhorn Start Menu.

My Computer and Explorer views. Again, only minor changes, but the non-functioning Windows Future Storage (WinFS) services were enabled by default and had to be disabled for reasonable performance. My Computer featured disk space graphics under each drive and a slightly modified Task pane, with integrated search. There were new Explorer views as well, including a new Preview mode used in certain types of folders. And a few new folder options, including “Use breadcrumb bar” and “Use Domain Folder Sharing Wizard.”

Special shell folders. Special shell folders such as My Documents, My Pictures, and My Music were revamped to support the new Preview view style, splitting the folder view horizontally and providing a graphical, web-like preview pane that was specific to the currently displayed content. My Pictures, for example, had options for viewing a slide show, creating an album, and burning a DVD.

Display properties. The Longhorn alpha provided the XP-era Display Properties dialog alongside a preview of a new Display Properties application, which was written with the new .NET-based Avalon APIs and was quite broken, displaying “XAML” error messages. (We would later learn about XAML’s role in Avalon and Windows Longhorn.)

Also delivered alongside this alpha build was our first concrete (if poorly-written) information about Avalon, the coming “presentation layer” of Longhorn.

Avalon, this document explained, was “the next-generation platform for Windows client applications. It combines the best features of the web such as ease of deployment and rich mix of application and content with the power of the Win32 development platform to enable developers to build a new breed of applications that are robust and take real advantage of the connectivity, storage, and graphical capabilities of the modern PC.  Avalon is not just about User Interface and Rich Graphics, although that is an important part. The overarching goal of Avalon is that it offers a common managed code exposure to all the capabilities of the Personal Computer including storage, communications, documents, multimedia, etc.”

Avalon would “take advantage of a variety of services, including an efficient storage mechanism for application code and documents, and automatic persistence of the application state. It would build off .NET to “provide services ranging from local storage to graphics and multimedia, to connectivity, in order to enrich the user experience and provide interactive, media-rich applications.” It would replace “the presentation layer that is currently provided by Internet Explorer/Trident, User, GDI+, and Cicero,” and it would be closely integrated with the Longhorn shell. It would “expose the new Windows storage functionality available in Longhorn, [which was] built on SQL technology.”

Put simply, “Avalon intends to re-energize Windows as a platform for developing client applications. Currently, .NET is heavily server-oriented with the client-side user interface largely limited to HTML 3.2. Avalon extends the Microsoft .NET strategy to include the client and differentiate Windows. Avalon will enable developers to combine the rich end-user experience of a Win32 application with the power of server-based .NET services.”

Just weeks later, we learned that Longhorn, like Windows XP, would be a client-only release and that the corresponding Server version would be decoupled and ship separately. This was almost certainly because of the delays in releasing what was then still called Windows .NET Server 2003 and the follow-ups to XP SP1 and Server 2003 that would trigger a collective reset of their own.

I asked Microsoft what was happening.

“Given the deployment cycles and budgeting that customers work through, and given the significant customer interest in our upcoming release of Windows .NET Server 2003, we have determined that another major release of Windows Server in the Longhorn client timeframe does not meet the needs of most of our customers,” a Microsoft representative told me on November 11. “Another major release of Windows Server will follow Windows .NET Server 2003; it is code-named Blackcomb.  We do not have a firm release date at this time, Microsoft will determine a release timeframe based on what customers tell us they require.”

Gartner speculated that Microsoft would ship Blackcomb in 2006 or 2007. “We still believe the Longhorn client will be generally available in 2H04 or 1H05, three or more years after Windows XP,” the market researchers predicted.

They were wrong about both of those dates. But with 2002 winding down, one thing was clear: Development of Windows, which had held to a steady and aggressive release schedule for years, was getting messy. But it wouldn’t be until the next few years that we’d understand how messy things really were in Redmond. Windows, as it turns out, was about to run right off the rails.

Gain unlimited access to Premium articles.

With technology shaping our everyday lives, how could we not dig deeper?

Thurrott Premium delivers an honest and thorough perspective about the technologies we use and rely on everyday. Discover deeper content as a Premium member.

Tagged with

Share post

Thurrott