NetBeans 5.0 is Making Me Grumpy
The NetBeans 5.0 beta just released, with a slew of new features that improves application development and therefore, can make old-timers grumpier. The feature that makes me grumpy is one many NetBeans users won't care about: developing NetBeans Modules and Rich Client Applications is now much, much easier than in previous releases. Core tasks that once took me days to learn are now boiled down to clear, easy-to-understand wizards. Extending NetBeans is no longer limited to the core set of engineers dedicated (and masochistic) enough to devote the necessary effort to use this API effectively.
As a recovering engineering manager, it's been a pleasure watching the "apisupport" team design and implement this critical feature. First, a small team was created and, as much as possible, dropped out of sight from the rest of the engineering group. As NetBeans management learned several releases back, rewriting core functionality requires isolating the team from corporate antibodies, which can kill innovation that threatens existing systems.
Next, NetBeans lucked out and hired an exceptional doc-writer, Geertjan Wielenga. I normally don't single out individual team members for praise since engineering is a team sport, but Geertjan's contribution was critical because he didn't function like a normal doc-writer. Maybe it only is true at Sun, but here most writers are forced by their heavy workloads to avoid getting too involved in early product development, preferring to wait until the design is finalized so as to avoid having to drastically rewrite their work. Geertjan, on the other hand, jumped right in with no previous NetBeans API exposure (as far as I know) and quickly started writing several short tutorials (found here), bombarding the developers with questions and then forwarding frequent drafts to the team for review. Because the development engineers were trying to make NetBeans API development easier, his questions helped shape the various wizard designs (if a developer has to ask too many questions, the current design isn't working). Other equally good doc-writers might ask similar questions yet don't impact the product's code as much, because they waited until the design was frozen when they started writing documentation for it.
Geertjan's tutorial code also showed lots of places where NetBeans was unnecessarily burdening module developers by requiring hand-written, boilerplate code. The development engineers therefore reviewed each tutorial with an eye for how they can shorten or even eliminate the tutorial with a wizard design, because documentation also functions as design criticism (i.e., good designs shouldn't require much explanation). Geertjan then quickly made massive rewrites and eliminated a lot of code as the API support improved. His impact on the project therefore can't be weighed by how many words made it to the public website. I wish more doc-writers and QA engineers were actively engaged in the initial design and development process, but suspect it is a management scheduling problem rather than a lack of interest or commitment.
My biggest complaint? I wish this work had been done six months ago, when I started working on making a NetBeans module which uses Jackpot, as it would have saved me literally weeks of work. So be warned that I may get grumpy about complaints about how hard module development is. <rant>"It took you a week to extend NetBeans 5.0? Why that's nothing! In my day we spent months staring at source files 'til our eyes bled, but we were happy to do it."</rant>
- Login or register to post comments
- Printer-friendly version
- tball's blog
- 574 reads





