The first NetBeans User Group
event in Munich is over. I'm at the station waiting to catch my train to Prague in a few hours. Before I forget the impressions of today and the scribbled notes on the piece of paper that has been promoted to a beermat fade completely, I am taking this opportunity (a few hours of waiting) to update my blog.
- The presentations were really solid. First an enthusiastic introduction by Tim Cramer, then a pretty detailed overview of Java EE 5 tooling support in the upcoming NetBeans IDE 5.5 by Roumen. I really admire Roumen's grasp of the whole Java EE 5 area. He has some great slides too. One shows a picture of a massive stack of paper, symbolizing all the specifications and documents one used to need to know, when working with J2EE 1.4. He also has a cool slide comparing the number of files one had to create for the Roster application in J2EE 1.4 versus the same application in Java EE 5. Not only has the number of Java files decreased, but specifically the number of XML files has shrunk massively. He then did a number of demos, one that was especially cool was on JPA and how NetBeans generates an entire table at deployment, all from Java code. Then there was a break, followed by my turn, about the NetBeans Platform. I got a lot of interesting questions at the end. As usual, people really like the Napkin look and feel. For the first time, I demonstrated the "Installl/Reload in Target Platform", so that my module development turnaround time was about 3 seconds. Next, after lunch, Sven Reimers did a pretty technical overview of the most important NetBeans APIs, including Lookup and JavaMetaModel. He clearly spoke from a lot of experience (and had received an award for his contributions from Tim at the start of the day). Next up were two lecturers from Fach Hochschule Ansbach who did a fantastic presentation on their usage of NetBeans in the classrom (I will do an interview with them as soon as possible, they've already agreed to participate). Finally, Roumen did a presentation on the packs, with a lot of demos. I sat near the back and saw people shake their heads in amazement at the range of functionality that NetBeans offers.
- Several of the participants were pretty advanced users. Apart from Sven Reimers, who created the FindBugs module (as well as others), there were a bunch of people who had been using NetBeans for a very long time. For example, the two lecturers had been using NetBeans since it was Forte. Two people had quite a bit of experience with the new Visual Library 2.0. One of them, Anton Epple, is working on a visual designer for Jasper Reports! Hurray! Another, Stefan Flemming, who is a regular participant in the Visual Library's mailing list, had flown all the way from Berlin, specifically to be at this event. He's doing a lot of cool stuff with the Visual Library, designing a scientific
device wiring implementation, with the Visual Library as the modeling basis. There were also two people from PrintSoft, who seemed to have done some work with the NetBeans Platform. One of them, Ian Brown, has been on the email@example.com for the last few months. I probably skipped some people in this overview, and I didn't get all the names, but this gives a taste of the backgrounds. There were about 50 or so in total. A few participants, about 3 or 4, were local Sun people, which was cool to see. One of them, Daniel Adelhardt, is one of the people writing about NetBeans in the Javamgazin, along with Jens Trapp who unfortunately wasn't there.
- There were some great ideas for improving NetBeans, in terms of the software, the organization, and the general awareness of the product. Here are the main ones that I thought were excellent (as well as other random comments):
- How about a really user friendly wizard in the NetBeans Platform area that asks you questions like: "Do you want an update center in your application?", "Do you want a Favorites window?", etc. If you say "yes", you would get the relevant module as well as all its dependencies. More than one participant complained about the unwieldy list of checkboxes that you have to work with when setting dependencies. Personally, I find this the most frustrating part of NetBeans Platform development. On the other hand, the frustration never lasts longer than about 10 minutes.
- How about a similar event in Berlin? The one in Munich was a success and Stefan is an enthusiastic NetBeans user and knows others in Berlin. (And if Stefan can take the trouble to go to Munich from Berlin, the opposite way round should be possible for some people in Munich too!)
- Sun/NetBeans should make blog space and tools available to NetBeans (and Sun) users. I talked to some people about setting up a blog, and someone pointed out that it would be helpful if Sun or NetBeans were to provide the space and facilities to make that possible.
- SunRay is great because... it is quiet. Imagine a classroom full of SunRays, compared to desktops (or something else). Noise level must go down a lot and that is apparently one of the big wins with using SunRays in the classroom. The two lecturers from Ansbach use SunRays at their university. They showed a picture of students in the class, all with a SunRay. Looked pretty cool.
- Training. One question I got was about NetBeans training, specifically in the NetBeans Platform area. I agree, we need to get that going. Maybe NetBeans trainers should be instituted, just like there are NetBeans evangelists, working alongside Sun evangelists.
- One reason why people I met are not rushing to report bugs in Issuezilla is... it is too hard. Just the instructions are long and tricky. We should simplify those as well as the process if we want bugs to be reported more. (Not that people aren't reporting bugs, but the ones I spoke to said that they hadn't because of the process.)
- Stefan Flemming mentioned that he found his long list of projects, sorted alphabetically by NetBeans, very unwieldy. Then I installed Tim Boudreau's poor man's profiles module from contrib, and Stefan was very impressed. Why isn't that module part of the standard IDE? Or in the update center? Maybe it is in the update center and I just don't know about it.
- Syntax highlighting for //TODOs in the Source Editor would be nice (even though there's the Todo Tool to find them all, it would be nice to see them in a distinct color, like green, in the editor). I agree, although I would never have thought of it.
- Stefan showed me the Visual Library's satellite view in the Navigator. It looked really cool. I'd like to include that in part 2 of the Visual Library tutorial (here's part 1), so I'm hoping he'll send me the code!
- Would be nice to have an installer builder on the NetBeans Platform side, (like IzPack), so that, for example, the JDK location can automatically be added to an application's configuration file.
- I met someone who wants to port his legacy (pre-Java) application to the NetBeans Platform. He'll probably be joining the firstname.lastname@example.org mailing list soon. Is there anyone out there who can give him advice? He also asked about a "business application framework" on top of the NetBeans Platform. Most business applications have kindred work flows and tasks, using a database in a similar way. Wouldn't it be cool if we had such a framework on top of the NetBeans Platform, enabling developers to port their application more easily?
- Java 3d. Stefan is doing development work in this area. Just like the students I met in Egypt. Maybe they should get to know each other...
I'm sure there were other things, but these were the main points I took away from the NetBeans User Group in Munich today. Definitely a very sharp crowd of enthusiastic NetBeans users. (It was cool and weird at the same time to talk about my Marilyn Monroe modules and my Simpson integration application, especially since I didn't bring up these subjects myself, but they did, since several were already readers of this blog.) So, anyway, when can we have the next NetBeans User Group event in Munich (or somewhere else in Germany)?