Home United States USA — software NetBeans Makes Progress at Apache

NetBeans Makes Progress at Apache

240
0
SHARE

NetBeans is making progress with its transition to the Apache Foundation, including a major new release.
Oracle started the process of donating NetBeans to the Apache Foundation almost two years ago, with the first major code drop occurring almost 12 months ago. Since then, a huge amount of engineering work has been underway to effect the cut-over to the new organisation. Despite this, the NetBeans community has continued to make forward progress, including a new major release. InfoQ spoke to Geertjan Wielenga, the Senior Principal Product Manager at Oracle, who has been overseeing the process.
InfoQ: Thanks for taking time to talk to our readers. Can you start by telling us how the transition of NetBeans into being an Apache project has gone? What surprises have you found along the way?
Wielenga: It’s been a slow and thorough process. An organization that does not care about its tools does not donate them to a software foundation. Instead, such an organization would simply stop developing the tool and would say “that’s all, folks” to the world. What has surprised me, and continues to surprise me, is the seriousness with which Oracle is donating NetBeans to Apache. I.e., there are many developers involved, as well as Oracle’s legal team. Only after closely auditing and scrubbing an area of NetBeans is it handed over to Apache.
It’s an immense process and by no means complete. Right now, most features used by most NetBeans users have been donated to Apache and are found in GitHub. There is still a lot more to come, primarily the C/C++ tools, as well as a range of other features, as well as documentation.
As can be seen there are currently 7,493,322 lines of NetBeans code at Apache, comprising about 4.38% of Apache disk space, making Apache NetBeans significantly the largest Apache project right now, which explains its size and complexity relative to other projects.
InfoQ: I’ve heard on the grapevine that the new version of NetBeans has many new features and developments. Can you tell us about them, and what they mean for NetBeans users and Java developers? What aspects of the new release do you think are most compelling for developers who might want to try NB? What sets it apart from other IDEs?
Wielenga: The “out of the box” aspect of NetBeans has always been its strength. The current release, 9.0, focuses specifically on Java SE features, since other modules constituting NetBeans are still in process of being donated. Ultimately, everything that has been NetBeans in the past will be part of NetBeans in the future, so long as they fit within the Apache Way.
For example, anything GPL-licensed does not fit into Apache’s release policy and hence one or two features have already had to be dropped from the release, notably Hibernate and JSR 295 BeansBinding. However, though these kinds of features cannot be released from Apache, there’s nothing stopping anyone from making external plugins that incorporate these technologies and distributing them themselves.
Right now, Apache NetBeans is especially suited to Java SE developers, although note that the NetBeans IDE 8.2 plugin center can be registered, enabling other features, though from the 8.2 release, such as tools for working with JavaScript, Java/Jakarta EE, PHP, and Groovy, to be used. New features in Apache NetBeans include features for working with the JDK 9 Jigsaw module system and the JDK 9 JShell. Its JDK 10 support includes editor enhancements for working with the JDK 10 LVTI feature, i.e., new var support, including converters from/to the new var usage.
InfoQ: Moving on to the new release cycle – as a toolmaker, how has NetBeans been impacted by the faster pace, the changes to the classfile format and the other aspects of the new model?
Wielenga: Probably, at least not initially, we’ll not be keeping up with the release numbering of the JDK. I.e., from the point in time where Oracle took over Sun, the NetBeans releases kept track of the Java releases, i.e., JDK 7 was accompanied by NetBeans 7, JDK 8 by NetBeans 8, etc. Quite aside from the discussion of whether the Apache NetBeans community should necessarily continue to favor Java over other languages and technologies, the rapid release cycle is going to be tough to align with.
Separate from that, it is not altogether clear whether Oracle cares about tooling, anymore. For the first time in the history of Java, its sponsoring company has no tools strategy at all, completely leaving it up to a range of organizations to fall in line. It looks like IntelliJ IDEA is increasingly going the Kotlin route, while Microsoft’s Visual Studio is not aiming to be an IDE, and some seem to believe that an IDE is no longer relevant. Perhaps text editors are the future.
A key reason for Java’s dominance has been the strong set of competing IDEs that have been around over the past decades. The current fragmentation is likely going to have an impact on Java as well, unfortunately. Where all this will lead is a problem, with Oracle’s commitment to Java, in light of the plethora of other technologies and languages being worth questioning.
Since NetBeans is and always has been primarily loyal to Java, while also being created in Java and hence dependent on Java itself, it makes sense that NetBeans will continue strongly in a Java direction. But, of course, there are no guarantees. If the Apache NetBeans community were to decide, together, to focus more strongly on being focused on PHP developers or Kotlin developers, that would always be a possible direction. Under Apache, everyone’s vote is equal, and no company or organization can pre-determine the direction of any Apache project.
InfoQ: Various surveys have shown that the Java IDE market is heading towards a world where IntelliJ is the most widely-used, followed by Eclipse, with NB some way behind. Do you think that’s an accurate overall assessment?
Wielenga: We need to rethink how surveys are done in our industry, there’s a serious problem with our approach. I find it very odd indeed that only in our industry is it acceptable to do sloppy surveys — self-selected listener opinion polls are unacceptable in all other fields, as far as I know.
Since we’re programmers, maybe we should think of programmatic ways of doing surveys instead. Take, for example, Jelastic, which “analyzed the current statistics of engines, application servers, databases and plug-ins under a magnifying glass, revealing which stacks are the most rated and more actively used”, and there it suddenly turns out that ” more than a half of our clients (50.5%) prefer to build their projects in NetBeans “
There is a special place in hell reserved for those who create sloppy surveys, who have polluted the software developer industry with absolute noise and nonsense over many years now.
InfoQ: How large is the community of developers that work on NetBeans itself? How would an interested Java developer get involved with that community?
Wielenga: As the code is hosted on Github, we have a public contributor graph as well as active mailing lists for NetBeans developers and users.

Continue reading...