Besides that, the institute has other tasks, which are also mostly initiated by the German government and legislative branch. Since all these are highly specialized tasks, unique and highly sophisticated software products are needed. This is a compelling and interesting challenge for Michael and his colleagues. Formerly he worked on laboratory information systems, in the healthcare domain, and in his own company, which focused on IT consulting, education, software development, and hardware sales. Part time, he works as a consultant and author.
Nice to meet you, Michael. What kinds of activities do you focus on in your daily work?
Well, besides my tasks of project management, internal consulting, requirements engineering, and conceptual work, I'm happy to say that I still have time to develop software architecture and to code parts of our products.
And, when there is less official coding on the agenda, I'll code in my spare time and blog about my experiences, at http://blog.mueller-bruehl.de, which is hopefully valuable to my readers. The most popular part of the blog is my tutorial about web development with JSF.
My blog is just a portion of my spare time computer activities. In particular, I'm very involved with JSF and, since a few months, a member of the JSR-344 expert team. This takes some hours each week too and, hopefully, I'm able to contribute enough useful work to that team.
And, last but not least, I'm a husband and father! Family and my work in the institute take priority. Thus, as might be clear at this stage, readers of my blog sometimes need to wait a little for a new article...
Underneath and supporting all these activities, you make use of NetBeans IDE. What's your history with NetBeans IDE?
I started using NetBeans IDE in my spare time, some month before I joined InEK. At that time I had been using Visual Basic 6 and wanted to re-start with Java. I tried Java for the first time some years prior to that, using a simple editor in combination with the command line, and later via Eclipse.
However, I first became really productive with Java through using NetBeans IDE. It must have been NetBeans IDE 5 or NetBeans IDE 5.5 when I started using it. Then, when I started at InEK, I tried Eclipse again. Eclipse seemed to cover a broader range of tools and programming languages, though it needed a lot of configuration. Meanwhile, NetBeans IDE came along with a strong focus on Java and better integration of the related tools.
Especially when starting Java EE development, NetBeans IDE offered everything we needed at InEK right out of the box, without any complicated configuration at all. Thus, the decision was easy and clear. Ever since then, NetBeans IDE has really been improving from release to release.
At the same time, while using them, you've been blogging a lot about NetBeans IDE and Java EE. What are the key ways you have found NetBeans IDE being useful for developing Java EE applications?
Here are the main advantages from my point of view.
- Out of the box features. As stated above, it is very easy to use NetBeans IDE out of the box for Java EE development. The Java EE version is bundled with Tomcat and GlassFish. Formerly, I used Tomcat, but starting with Java EE 6, I switched to GlassFish. Of course, lots of other Java EE features are supported by NetBeans IDE and they are supported by other IDEs too. Thus the main reason had been the ease of use and the completeness of the out of the box experience.
- Range and Depth of Tools. NetBeans IDE includes a lot of wizards to create projects, to add specialized classes, and to refactor code. It offers code inspection, hints, code completion and many more "little helpers" to improve productivity. In other words, it supports a very productive software development environment. Other IDEs offer more or less similar features too, though in my perception the NetBeans IDE wizards are a bit more sophisticated compared to other IDEs, Eclipse for example.
- Early Adoption of Java Technologies. NetBeans IDE tends to be the first IDE to support Java technologies, such as Java EE 6 and JavaFX 2.0. Unfortunately, though, I have only found limited time for basic testing of JavaFX in NetBeans IDE. However, JavaFX offers a lot of interesting concepts and seems to interact very well with web applications. It might become a favorite feature of mine within a few months!
All in all, though, there is one aspect of NetBeans IDE that I really love—besides the product features—if I discover and report a bug or if I file an enhancement in NetBeans issuezilla, I usually get a very quick response. Bugs are resolved quickly and a couple of my suggested enhancements have been implemented. The NetBeans Team does a really good job.
Aside from Twittering and blogging, are you doing other things to promote NetBeans IDE?
Of course. I love to play ping-pong with my colleagues during lunch break. And sometimes, I wear my NetBeans t-shirt for this! But, joking aside, these are the promotional activities I am involved in around NetBeans IDE:
- NetCAT. I participate in the NetCAT community testing programs. This doesn't really fit under the heading "promotion", but hopefully helps the IDE to reach a higher quality level from release to release.
- Articles. When NetBeans IDE 7.1 was released, I wrote an article that was published in the German iX magazine. Moreover, I use NetBeans IDE for all my articles, talks, and education.
- Book Reviews. Frequently, I read technical books and write reviews. I love to choose books about NetBeans IDE. You can visit my site http://it-rezension.de and search for "netbeans". My reviews are mostly written in German but maybe, one day, an English magazine will be interested too!
What new features or enhancements would you like NetBeans to have in the future?
- First of all, NetBeans IDE should continue supporting the latest Java EE technologies. When NetBeans IDE 7.3 is released, Java EE 7 won't be finished. As per the current roadmap, the next version of NetBeans IDE is scheduled for the end of this year. Therefore, I hope there will be a version in between, supporting Java EE 7. I heard some rumors already saying that this will be the case.
- When Project Woodsock died, I wanted a designer for JSF pages back. The Matisse GUI Builder in NetBeans IDE is really cool. I believe that a designer for JavaFX GUIs, maybe on top of an FXML-file, could be created with similar quality. I'd certainly like to use such an editor.
- And finally, I'd like some UML and SOA support integrated back into the IDE, especially a BPEL editor.
Anything else you'd like to share?
When I published my article about NetBeans IDE 7.1, some guys at the local Cologne Java user group were surprised because, in their eyes, there was nothing outside of Eclipse (and rarely IntelliJ).
Some years before I became successful with NetBeans IDE, I briefly tried an early NetBeans IDE version... and stopped using it very quickly. Today I'm really happy that I gave NetBeans IDE a second chance. Therefore, I tell all these guys to give NetBeans IDE a second chance too. It really improved a lot and is a great system today, used by well known and capable people in the Java universe.
Finally, earlier I mentioned the great work being done by the NetBeans Team. And that was only part of the truth. As an open source project, there are many contributors outside the core NetBeans Team, performing a good job too. For myself, I thought about contributing source too, but I never did, because I preferred to concentrate on JSF. Note, by the way, that Ed Burns, the JSF spec lead, is one of the people who love NetBeans IDE too. And that is because... it is an amazing product today.
To the NetBeans Team and all those contributors I'd just like to say: "Thank you!"