It Takes a Community to Write Good Software
What's in it for me?
Our contributors have earned various rewards: Peer recognition, special edition t-shirts, USB memories, gift vouchers, LinkedIn recommendations and even job offers.
Looking back to 2005, the NetBeans community has grown significantly: The number of active users doubled each year for the past 3 years, the IDE has been downloaded over 20.5 million times, we have shipped more than 225,000 NetBeans Starter Kits on CDs & DVDs, and over 550,000 users from over 130 countries communicate on the NetBeans mailing list.
How do community members and the NetBeans teams work together? The Dream Team is an international group of highly skilled NetBeans users and contributors acting as a liaison between users, partners, contributors, and engineers. The team members work on several self-assigned hobby projects that range from writing magazine and blog articles about the NetBeans IDE, to providing user support in forums, or implementing new features as modules.
A liaison between users, partners, contributors, and engineers.
Jiri Kovalsky is Sun Microsystem's technical manager for the NetBeans community. He is not only the contact person for the NetBeans Dream Team but also for many activities like the NetBeans Innovators Grant contest. To the community, Jiri is probably best known for coordinating the NetCAT quality program.
Being a member of the Dream Team is only one example how you can be part of your favorite Open Source project. We asked Jiri to look back on the last few months and tell us more about the developers and partners that offered their skills and volunteered to do quality testing of the IDE and plugins, or to moderate mailing lists and forums.
Public Quality Testing: The NetCAT Program
Real users working with real projects.
Many community members regularly volunteer for the NetBeans Community Acceptance Testing program, better known as NetCAT. NetCAT participants use daily builds and provide early feedback. Their reports are very valuable because they are real users working with real projects.
For example during NetCAT 6.0, 1362 users filed a total of 6350 bug reports. 60 of them were NetCAT participants, 273 were Sun employees, and 1029 were other community members. As you can see, although only 4% of reporters were NetCAT participants, they detected 10% of all issues.
The quality acceptance survey determines the "go" or "no go".
Additionally, NetCAT participants get the opportunity to be the first to try out new documentation and to test freshly released plugins. This year the team already tested the new Eclipse Projects Importer plugin, validated tutorials for NetBeans 6.1, or they reviewed questions that will be used in the Sun Certified NetBeans IDE Specialist exam.
After the testing period is over, NetCAT participants fill in the quality acceptance survey. The outcome of the survey determines whether the release build is given a "go" or "no go". Interested in joining? Learn more from the NetCAT program FAQ.
Community Partners: Compatibility Testing
NetBeans Community Partners are companies or open-source communities who endorse NetBeans as a development environment and/or application platform. Community Partners may contribute code to the NetBeans code base, or they promote NetBeans by giving presentations, including it in training, or writing articles or books.
Two issues identified and fixed, no show-stoppers detected.
In March 2008, the NetBeans engineers invited all community partners to a series of backward compatibility tests. These tests are designed for developers to verify that their product is still compatible with the next version of the NetBeans API. Four partners published their test results for NetBeans IDE 6.1. All in all, two issues could be identified and fixed due to the test, no show-stopper incompatibilities were detected.
Interested in taking part in the next compatibility test session? You too can become a NetBeans Community Partner and tap into one of the largest development communities. If you have questions or feedback about being a NetBeans partner, contact the nb-partner program team.
Over the last year, NetBeans developers contributed over 350 plugins to the NetBeans plugins portal. The owner can request that his plugin be added to the Portal Update Center, so it can be installed via the IDE's Plugin Manager. But often contributors have no means of testing plugins under realistic conditions, such as different operating systems or IDE versions. To avoid publishing untested plugins on the Update Center, Jiri found eight users volunteering to verify new plugins.
Community members evaluate which portal plugins become available via the Plugin Manager.
The plugin verifiers install plugins of unknown quality on different operating systems and JDKs, and rate them. As part of the verification process, they check for bugs, exceptions and broken dependencies as well as performance degradation, freezes or crashes. They also make certain that the license text is complete, that features correspond to the description, and that the user experience is smooth.
Only if a majority of verifiers gives their OK, and no verifier disagrees, the plugin passes the test and becomes available via the Plugin Manager. If one verifier reports a serious problem (such as the plugin crashing the IDE), the plugin is rejected. The plugin owner is informed of the status and asked to fix the bug before he can request verification again.
Mailing List Moderation
High-traffic support lists are open to questions from anyone, but at the same time remain spam-free.
Jiri can also report a fourth successful project: The main netbeans.org mailing lists are now fully moderated. This means that incoming messages from unsubscribed users are approved manually to allow them to post, and at the same time, spam messages are sorted out. That's a lot of work for the list owners!
Jiri wanted to improve this process and approached some community members for help: He found five volunteers who agreed to moderate incoming messages. They live in different timezones, and each of them checks only a small set of incoming messages every day, but the work load is distributed to a tolerable amount. Thanks to this successful team effort, high-traffic support lists are open to questions from anyone, but at the same time remain spam-free.
Thanks to all community members who contribute to the NetBeans project! You rock!!