Romain is pimping the pimping of Swing apps. Of course, I have to pick at him:

It looks bad by default. You have to change it to [get] a good-looking application. Swing makes that really easy. You can override everything, the behaviors, the feel, you can change the look.

You have the powerful Java2D API [that] gives you all the drawing tools you need to create very rich user interfaces, with animation and nice effects. It’s the same technology we see in the old-style Swing applications, [and] with the same technology we can create things [that look] similar to the Vista [UI].

[snip]

When you bring up Windows, most rich clients aren’t that rich, actually. They’re just gray and dull and have a lot of buttons and text fields. We needed to find a term to talk about clients that go beyond that–rich clients with animation and 3D. The kinds of stuff you see on Vista today. We used the term filthy-rich clients to talk about those clients that tried to go beyond the existing user interfaces…

Rich-clients are getting better and better. They steal ideas from the Web, so we are now at this integration of several media. You have 3D, you have video, it goes beyond just the images we’ve had so far.

Here is the thing: I don’t want to monkey with all the stuff to make my swing app look good. If it is gray and dull that is because you aren’t providing me with a default that looks better. This is one of the reasons people respond so well to Flex apps: they look great with just the defaults. I, like most programmers, am lazy. I usually just want an app that does X as quickly as possible. Give me a toolkit that makes it look good by default.