XAML and... Swing


Let's see. There's this new language+API. It is, in theory platform independent. It's pretty high level. Below the high-level description, it runs on top of a virtual machine. It's verbose. Some people say it will never work.

Gotta be Swing, right?

How about XAML?

On Saturday Sam commented on a XAML example. He makes a number of good points. Which jump-started earlier XAML-related musings.

XAML will be Windows-only, so in that sense the comparison is stretched. But this is a matter of practice, in theory an XML-based language could be made portable (when there's a will there's a way). XAML was compared a lot to Mozilla's XUL, and rightly so, but I think there are some parallels between it and Swing as well.

One big difference that XAML will have, for sure, is that it will have a nice UI designer, something that Swing still lacks. On the other hand, I think that whatever code an automated designer generates will be horribly bloated. And who will be able to write XAML by hand? And: the problem of "bytecode protection" in Java comes back with XAML, but with a vengeance. How will the code be protected? Obfuscation of XML code? Really? How would it be validated then? And why hasn't anyone talked about this.

And another thing: Sun has shown in the past few years that they've taken a liking to countering Microsoft announcements with some of their own. ie., MS comes out with Web services, they come out with web services. MS does X, Sun does it too, but in Java. One wish: that Sun would ignore XAML and just continue improving Swing, and create a simple, good UI designer for Swing. Supposedly Project Rave will do this... but here's hoping there won't be any course corrections simply to show up Microsoft. Please, pretty please, Sun.

On a related note, Robert says this regarding XAML:

[...] you will see some business build two sites: one in HTML and one in XAML. Why? Because they'll be able to offer their customers experiences that are impossible to deliver in HTML.
Come on, Robert, these days, when everyone's resources are stretched to the limit, when CIOs want to squeeze every possible drop of code from their people, when everyone works 60-hour weeks as a matter of common practice, are you seriously saying that companies will have two teams to develop a single website? Is this Microsoft's selling point? "Here, just retrain all of your people, and double the size and expense of your development team, and you'll be fine."

Of course not. Most companies will have one team, not two. Hence, logically, either people will use it or won't, without a lot of middle ground in between. That leaves two possibilities: 1) XAML will be niche and never really used a lot (think ActiveX, or, hey, even Java Applets!) or 2) XAML will kill HTML.

Which one do you think Microsoft is betting on?

Categories: soft.dev
Posted by diego on December 1 2003 at 12:09 PM
Comments (please see the comments & trackback policy).

Scoble seems to be suggesting that XAML is not targeted for the Web. Of course, you never know what they're really up to. ;)

http://www.haloscan.com/comments.php?user=scoble&comment=5619

Posted by: Manuzhai at December 1, 2003 5:48 PM

XAML/Avalon won't be used as a "reach" technology for more than eight years (and that's assuming Longhorn gets released in 2006 or earlier).

So, by your standards, it'll be a "niche" technology. I look at it as a "rich" technology. But, then, I guess you'd look at Flight Simulator and say that's done with a "niche" technology too.

Or, you'd look at Neopets and see that they have a Flash site and you'd say that's a "niche" technology too.

I say: pick the right tool for the job. Avalon/XAML/WinFS will be the right tool when you want to give Longhorn users the best possible experience.

If you don't care about giving Longhorn users the best possible experience then you should look elsewhere cause there are other technologies that will give you other advantages (like designing a site once for everyone).

Posted by: Robert Scoble at December 2, 2003 1:05 AM

Robert, I think that the point was sort of a bit lost. I think I didn't make myself quite clear (I think I might have bungled what I wanted to say with the Swing comparison too).

Flight Simulator is not done with "niche" technology since it can run on probably upwards of 70% of today's machines. Win32 has reach.

I can see what you were driving at now more clearly: that we should look at Longhorn technologies as the next evolution of Win32 (That's what you're saying, right?) Problem is, it can also replace web technologies. So what I meant was (second try! :)): most companies will not be able to support both. I don't think it's a matter of caring or not caring about Longhorn users, it's a matter of resources. Realistically most people will do one, not both. So I guess that what I was saying was, when (if?) Longhorn has reach, as Win32 does today, will that put people in a bind on choosing one over the other? And given that choice, which one would Microsoft prefer?

Anyway, please see here: http://www.dynamicobjects.com/d2r/archives/002456.html for a more "philosophical" followup.

Posted by: Diego at December 2, 2003 2:19 AM

As I've understood it, though, XAML has to be compiled, so that would make it not very useful as a web technology. I may be wrong.

Posted by: Manuzhai at December 2, 2003 12:04 PM

Interesting point about obfuscation... Even with a good obfuscation the user will be able to do a print screen and get hold of how the GUI looks anyway.

Posted by: Ragnvald at February 3, 2004 1:25 PM

Copyright © Diego Doval 2002-2007.
Powered by
Movable Type 3.35