I only summarized until around 11:30 am on Friday in my last blog entry on DM, and we kept on going until around 9:30 pm. As one attendee put it, “This is the most intense conference I have ever been to.” That was not entirely a compliment; perhaps I packed things in a little too densely.
Unfortunately, I was too distracted with running the show to have taken good notes for most of the rest of the day, but here are some of the other interesting tidbits I do remember:
- JSR-295 (Binding for Swing) will open up the code to the public around the end of this month. While there are a number of binding systems out there, the distinct feature of the JSR is the Expression Language, permitting very flexible binding.
- The Glazed Lists presentation was awesome. Kudos to Jesse and James for putting on a great show and demonstrating their powerful system of chaining observable lists together.
- I got distracted during Wolf’s presentation on SwiXML, but managed to learn that it now supports injection of components into private members (used to require them to be public). Sorry Wolf for this pitiful summary of what I’ve heard was a great talk. (SwiXML is of course the best way to represent Swing UIs as XML that I know of).
- Tim Boudreau of NetBeans showed off a Photoshop clone (minus many features, of course) built on the NetBeans platform. He also announced an initiative to create a standard around a docking framework, making the point that it ought to be easy to change window management in applications. I’ve known Tim for a while now and was very happy he could be part of the show. His presentation was top notch.
- Etienne Studer showed off IDEA’s new GUI builder, but unfortunately, I missed most of this talk. I heard quite a few folks comment on how good he was with IDEA; I’d like to compete head-to-head sometime! 😉
- I got a chance to step in for Karl Tauber of FormDev Software and show off JFormDesigner. I demo’d my favorite features: excellent FormLayout support and the ability to change layout managers and morph components. JFormDesigner 3.1’s new animated transitions got a lot of “oohs” and “aahs”. 🙂
- Chet impressed everyone with his timing framework and a demo of many effects put together on top of the framework. I gave Chet a hard time the rest of the conference by comparing his framework to Microsoft WPF and Adobe Flex’s built-in effects, but in all seriousness, his work is enabling a new generation of rich Swing.
- Kirill Grouchnikov compared the advantages of implementing “paint-over” effects using the glass pane (or layered pane) versus using UI delegates. He demonstrated a “spring-loaded” UI effect (where clicking / mousing over an image causes it to spring towards the user) not by using the glass pane but by getting the UI delegate of the component containing the image and all surrounding component delegates to render a portion of the effect. The big win, he explained, was that you don’t have to worry about whether the user has already installed their own glass pane and you can encapsulate the effect inside the look-and-feel. Plus, the contents beneath the effect can be rendered on top of the effect, ensuring, for example, that the text accompanying the image that is springing will always be clear. There was some controversy about whether the advantages outweighed the disadvantages, but controversy is a good thing.
- Alex Ruiz and Yvonne Wong demonstrated how to test Swing UIs using TestNG and Abbot together. Part of their talk involved a custom framework they created that, in addition to making it easy to use Abbot from TestNG, includes some general purpose mechanisms like a new way to do assertions using the invocation chaining idiom (e.g., assertThat(object).isEqualTo(object2).isLessThan(10) etc). Very neat.
- Scott Delap and Kai Toedter talked about Eclipse RCP. As modular architectures become more popular, its very interesting to see how RCP makes that possible.
- Eitan Suez delivered a powerful presentation on his jMatter framework. I haven’t seen a better talk than Eitan’s for a long time. He mixed humor, philosphy, live coding, and compelling examples along with handing out jMatter books (he actually has documented his open-source project very well) and walking throughout the audience. And of course, the technical content of the talk was just great: a framework that makes it possible for simple domain objects to automatically be decorated into sophisticated business user interfaces (i.e., a naked object framework).
- We wrapped up the evening with talks from Microsoft and Adobe updating us on their latest tech. Was eye-opening for a lot of people to see what WPF and Flex/Apollo are capable of, and I think provided a great challenge for both Sun and the community.
One of my favorite parts of the evening was having the Sun Swing team spend nearly 45 minutes asking the audience for feedback on specific features they were considering for Java 7. I haven’t been to a show where attendees have been as interactive back to the speakers as they were here.