Utopia: Toward a Unified Software Platform?


update 04/27: Twist, points out that Microsoft is looking to port its presentation framework to Mac OS X and other platforms.

Developers Developers Developers! developers

Vista will finally introduce the ability, at its core, for the operating system to offload most aspects of 2-D and 3-D rendering to the Graphics Card if available, and away from the CPU. Prior to this, Graphics cards in the Windows-world were only leveraged by specialized games and authoring software. On this front and many others, Microsoft is finally catching-up to what Apple did years ago with Quartz, then Quartz Extreme.

This new graphics subsystem in Windows will be a key component of the Windows Presentation Foundation, and cinematic user interfaces built in XAML. What’s XAML? An XML-based framework to define user interfaces. Overlay a video playing on a rotating 3-D sphere? Easy. Slap together a few XML tags in XAML, and voilà.

But forget about stringing a bunch of XML tags together. That’s still too geeky.

Microsoft built a User Interface Authoring Tool, called “Sparkle”. It basically generates XAML markup, that’s easily integrated into the programmer’s development environment. What might Sparkle strive to look and feel like to some? Think vaguely of a happy blend of authoring suites previously put forth by Macromedia or Adobe. A designer, with very little to no software programming experience, would in theory feel right at home in Sparkle. But instead of generating conceptual vector or bitmap user interfaces, for someone to painstakingly cut-up to bits for later integration in the software, what comes out of Sparkle is a ready-to-use software shell. The software engineer can basically start adding code to bring the user interface to “life”.

To me, the big story behind Vista isn’t Vista itself, but rather the software that developers will hopefully build on-top of Vista, if it ever makes its way onto the shelves.

Imagine that. Separating your presentation layer from your software logic. Sounds familiar … Oh right, there’s XUL, a cross-platform, open-source framework built and maintained by the Mozilla foundation, while XAML is proprietary, platform-specific.

Get this: Firefox, the second most-popular web browser, is written in XUL. Sparkle is written in XAML. While XUL has gained very little traction from the rest of the developer community, in the years that it’s been around, it remains insanely cool. The Mozilla foundation is able to release software simultaneously onto Linux, Mac OS X, Windows, and just about anything with a CPU, thanks to the abstraction layer that XUL provides.

As a result, a fascinating aspect of XAML, is that it’s getting Microsoft even closer to this ultimate abstraction layer of their User Interface Framework, that just might, beyond Mono and Cocoa#, dramatically simplify the process of “porting” a Vista application to Mac OS X, and other platforms.

If I were Apple, I would look into becoming intimately familiar with XAML, and find every possible way to embrace it within XCode. XAML to Cocoa? XAML to XUL? Nothing a few cleverly-crafted XSLT stylesheets couldn’t handle. What about Cocoa to XAML?

Apple recently hit us with the BootCamp bomb, essentially telling advanced Windows users who may have previously been weary of switching to Mac, “We embrace you. You don’t have to give-up Windows. Here’s a little something-something to make the prospect of a transition less scary.”

To take the BootCamp foray into the Windows world to the next level, how wild would it be for Apple to announce at WWDC2006 that Leopard would ship with a XAML-aware version XCode. Would this even be legally feasible?

Developers, Developers, Developers: Build your Windows application from the comfort of Mac OS X. Test it in Vista. On the same machine.”



– – –

“Apple recently hit us with the BootCamp bomb, essentially telling advanced Windows users who may have previously been weary of switching to Mac, “We embrace you. You don’t have to give-up Windows. Here’s a little something-something to make the prospect of a transition less scary.” – Chris Holland

– – –

Boot Camp isn’t a lure for PC enthusiasts; it is a stopgap for Mac owners. Its purpose is to make “the prospect of a transition [from IBM to Intel –Ed.] less scary.”

In other words, the rodeo is occurring WITHIN the customer base. :)

If an application you want use has somehow slipped through the cracks, being too slothful under Rosetta or not yet available as a Universal Binary, there is undoubtedly a Windows alternative you can use in the meantime. So it is okay to pick up your Intel Mac(s) now.

Truth be told, incompatibility — not familiarity — is what makes new Macs so alluring to the PC crowd *cough* despite an absurd price structure for comparatively less computing power. ;)

With Intel, Apple has essentially started from a clean slate, meaning these inaugural Macs will probably become the minimum system requirement for future operating systems and applications.

This kind of leap is unheard-of in the Windows world where, for the sake of backward compatibility, fewer and fewer demands are being made on increasingly potent computer systems.

So while Windows programs (on a Mac) may fit the bill now, they are unlikely to compare with purpose-built applications later on. :|


While it’s exciting to see that Windows Presentation Foundation is coming to a Mac near you in the future, let’s not forget the Mac OS X has already something called Quartz Composer. It’s true that not everyone is aware of this application as it is buried deep within the folders and is only avaiable if you install Xcode.

I have used it to built a lot of my applications and even build a demo for my remote visualization application (for my PhD work) in less than 2 hrs. Basically it provides what “sparkle” is already promising to do. But I believe that Leopard might unleash its true potential.

But for the time being take a look at this awesome site:


Don’t forget that Microsoft is bringing the Windows Presentation Foundation to Mac OS X and possibly other systems (source). XAML sounds really nice from everything I have read on it and I believe it supports a number of languages for the application code (which means it might even be able to fulfill a dream of mine).

My big hope for having the Windows Presentation Foundation on Mac OS X is that it will include a version of DirectX for Mac OS X. This would be really good for gaming on Mac OS X since combined with Intel CPU’s it would make porting quite a bit easier (it could also result in better performance since the version of OpenGL built into Mac OS X is a number of years out of date).

Comments are closed.