Welcome to the NetBeans Platform Certified Training

The NetBeans Platform is a mature open sourced Swing framework for building general rich client applications. The platform is a "generic application", that is, a runtime which can be used to develop desktop applications. NetBeans IDE is one example of this type of application, but there are many others.

One of the key distinctions of software built upon the NetBeans Platform is modularity: reuse in the large. Such software is designed as logical sets of macro-components which integrate through well-defined API contracts. Writing modular applications brings some enhancements to programming in standard Java, particularly in the ability to have Java classes which are only public to other classes within the archive they reside in. This has a number of beneficial effects on development: in particular, the ability to develop cleaner, simpler APIs by being able to fully conceal implementation from foreign code, while retaining type-safety.

This course covers developing on the NetBeans Platform from the ground-up. It covers two days in total. On the first day, we start with non-GUI applications: simply making use of the module system, which is the core runtime of the NetBeans Platform. Next, we cover the basic development patterns and commonly used APIs. The second day is dedicated to a tour of the reusable existing functionality built on the NetBeans Platform, descriptions of how to empower it further, and examples of real software applications consisting of multiple, decoupled modules.

Finally, after the two days outlined above, you will develop a functioning project consisting of one or more modules. Or you will extend an already existing project with new functionality.

Note: In addition to the NetBeans Platform Certified Training course, we are preparing an on-line NetBeans Platform course, so that you can take a structured course in your own time and location. Watch this space for further announcements about this course.



Learn about the NetBeans Platform and become experienced enough to be able to write a module, set of modules, and applications based on the NetBeans Platform. Also, to be able to locate pieces of code responsible for certain behaviour, change it and generate a patch that could be integrated back into official NetBeans.org source tree.


The NetBeans Platform Certified Training is offered in various versions. The typical version lasts three days and covers the topics listed below.

Note: We also offer a 2-day course and a 5-day course, as described in detail here.

Each of the days consists of sessions and workshops, lasting approximately an hour each. Here is a typical 3-day distribution of topics:

  • Day 1.
    • Getting Started
    • Modular System
    • Window System
    • Workshop
  • Day 2.
    • Nodes & Explorer Views
    • Visual Library
    • Actions
    • Workshop
  • Day 3.
    • Miscellaneous
    • Distribution
    • Porting
    • Workshop

Though the above is the default course outline, it is completely open to change. If, for example, the participants in one location are more interested in visual applications, then a stronger emphasis can be placed on that. Alternatively, if the participants would like a stronger focus on the latest APIs, then that is possible too. Another group of students might be more interested in focusing on questions relating to how to port an existing application to the NetBeans Platform. In other words, we can structure the course according to local requirements in each case.



You must be comfortable with the core concepts of Java, as well as Swing. Since the NetBeans Platform is made for large and complex applications, and is strongly focused on questions of architecture, the participants in the course are expected to be comfortable with non-trivial applications.

We highly recommend that you familiarize yourself with the following books in advance (click on the images to jump to the related page for further details):

Course Flow

A dedicated homepage will be available for each course, listing the process that the course will follow, the expectations that you will be asked to meet, and suggested assignments that you can complete to prove you understand the material presented during the course. On completion of an assignment, assuming the functionality is potentially generally useful, you will be asked to upload it into the Plugin Portal, so that others can make use of it. If your plugin is specifically useful to NetBeans IDE, you might be asked if you'd like to have it contributed to the NetBeans sources. In that case, you will need to sign a contributor's agreement to make this possible.


Participants in the NetBeans Certified Training will receive at least one of the following:

  • NetBeans Certified Associate. On completion of the two day course. The basic level of certification, which is given for attendance only. The level and quality of the participant's understanding is not tested and therefore not guaranteed in any way.


  • NetBeans Certified Engineer. On completion of the homework to a suitable level of quality. The recipient of this level of certification has shown a significant level of understanding of the NetBeans Platform. When faced with two choices while completing their task, they will have chosen the direction that is most correct for working with the NetBeans Platform. For example, if they port a Java application to the NetBeans Platform, they will use a TopComponent instead of a JFrame.

    After the course given at Linz, in Austria, Christof Holl & Sabine Weiss received this level of certification because of their work in understanding the login infrastructure of the NetBeans Platform to such an extent that they were able to write an excellent tutorial about it, while Johannes Strassmayer used a wide range of NetBeans APIs to create a font editor for a mobile MP3 player.

  • NetBeans Certified Committer. On providing work that is of a level of quality and usefulness for it to be accepted as a contribution to the NetBeans sources. The recipient of this level of certification has produced work that is not only of a very high quality but that is useful to NetBeans IDE, or another application on the NetBeans Platform. Moreover, the recipient has reacted promptly and accurately to the advice given by the instructors based on feedback received while doing their task. The recipient has a proven understanding of the development processes and is completely aligned with the NetBeans Platform's paradigms. In addition, the recipient has formally agreed to their work being integrated into the NetBeans sources.

    For example, Roland Poppenreiter and Stefan Riha created a spell checker for XML and HTML files. The work was of a very high quality and, simultaneously, provided functionality that NetBeans IDE did not already have but has needed for a very long time.


The NetBeans Certified Training was introduced towards the end of 2007. It has been, or will be, delivered in the following places:

You too?

Would you like to become a certified NetBeans engineer too? There are several ways of achieving this:

  • Attend one of the planned training courses. See the schedule above.
  • Ask us to deliver an in house training. Both companies and universities are welcome to invite us to deliver the course in person. Depending on the circumstances, we could provide the training in different ways, such as in house at your location. Let us know your preferences by writing to . Tell us how many students will attend, what your plans are with the NetBeans Platform, what your current skill set is, and so on.
  • Get started with the NetBeans Platform Crash Course. Go here on Prezi to get started.