The Future Of NetBeans
The IT world has been abuzz with speculation regarding what could happen once Oracle gets its hands on Sun's portfolio of existing products, since the takeover was proposed back in April 2009. The announcement that the merger is definitely going ahead, has only increased speculation.
The current NetBeans IDE is version 6.8, released back in December, 2009. It was the first IDE to provide complete support of Java EE 6 and the GlassFish Enterprise Server v3.
JDeveloper isn't just a product for Oracle, it is deeply ingrained in Oracle's tool suite: Oracle BPEL Process Manager , Portal, and many other components of the Oracle platform all build their design time tool on top of JDeveloper. It is also the platform for Oracle's Java Development Kit-based SQL Developer IDE. The most recent release of JDeveloper is version 11g (18.104.22.168.0), which was made available in November 2009.
And then there's Oracle's affinity with Eclipse.
Oracle has much invested in the Eclipse IDE. Oracle's major contributions to Eclipse include The EclipseLinkproject, which provides a runtime persistence solution and extended functionality for enterprise Java and SOA application development; JavaServer Faces Tooling which aims to simplify the development and deployment of JavaServer Faces (JSF); and Dali Java Persistence Tools to support the building of extensible frameworks to simplify, define, and edit Object-Relational (O/R) mappings for EJB 3.0 Java Persistence API (JPA) Entities. Oracle leads all three of these projects – and has a hand in several more Eclipse-based projects.
No-one can argue that Oracle's contribution and involvement with Eclipse isn't substantial. And NetBeans is a rival IDE. This has led Steven J. Vaughan-Nichols to declare, simply “(NetBeans) is history. Oracle is a big-time Eclipse supporter” as if NetBeans' fate is signed and sealed, and no further explanation is necessary.
But there's a third party in this IDE drama. Oracle's fondness for Eclipse, and its knack for developing its own IDEs, come neatly together in the third IDE (if you count the newly-acquired NetBeans IDE) Oracle now have to play with: Oracle Enterprise Pack For Eclipse.
Oracle Enterprise Pack For Eclipse (OEPE) is a set of plugins designed to deploy, debug and develop applications for Oracle's WebLogic Server (Oracle's answer to Sun's GlassFish Server which, of course, Oracle now owns as well.....) The current version of OEPE, 11gRI is a combination of WebLogic and Oracle's contributions to the Eclipse platform – the Eclipse platform that is a direct competitor to NetBeans, don't forget.
So, Oracle now has NetBeans, but as an IDE it evidently prefers Eclipse, and on top of that it has two of its very own IDEs – OEPE and JDeveloper – and it isn't likely to abandon those anytime soon. But which IDE tops Oracle's priorities list? During a webcast available now at the Oracle website, Ted Farrell, Chief Architect and Senior Vice President at Oracle Corp, made it very clear where Oracle's first IDE loyalties lie:
“Oracle JDeveloper is Oracle's primary development platform for Java, SOA and Rich Enterprise Applications.”
Perhaps anticipating cries that Oracle will 'phase out' its open source IDE rival, NetBeans, Farrell assured the viewers that Oracle's moto, post-Sun acquisition, is “productivity with a choice,” and pledged Oracle support, regardless of the IDE you choose to work with.
“We want to give you the choice to pick the development environment that you want....that choice is yours, we don't want to dictate any of that. But, once you've made that choice, we want to offer you the tools and the lifecycle and the infrastructure to make you as productive as possible.”
Noble sentiments, but what does 'Oracle support regardless of IDE' actually mean? Basically, it means that Oracle are going to be developing and caring for three IDEs – simultaneously. Factor out the extra workload for Oracle, and this sounds like a surefire way to keep everybody happy. However, Oracle have already made it clear that all IDEs are equal, but some IDEs are more equal than others, and this seems to be the case when you take a closer look at their development strategy.
In an epic five hour long live webcast broadcast on the day Oracle announced the acquisition has been finalised, senior Vice President of development, Thomas Kurian said that Oracle plans to focus NetBeans on PHP, Python and other dynamic scripting languages, while pushing JDeveloper IDE as its strategic development environment. Is there a reason behind Oracle's decision to “give” NetBeans these particular languages? Dana Gardner, principal analyst at Interarbor Solutions thinks so: "There really is no need to do scripting in a Java IDE........This might just be a way of sunsetting NetBeans." Although, she is perhaps understating PHP's importance to the programming language market
To Senior Java Developer Armel Nene, it isn't a three-way fight. “Oracle will never drop JDeveloper therefore the real fight is between Eclipse and NetBeans.” Implicit in Nene's argument, is that Oracle simply cannot keep its promise of developing three IDEs simultaneously, and the lesser of two evils would be to withdraw its commitments to Eclipse. “Eclipse will not never close shop because Oracle has left them which is not as worse as lack of investment in the NetBeans community.” He proposed that Oracle should “immediately start porting all their Eclipse plug-ins to NetBeans,” and focus on developing NetBeans and JDeveloper, although he admitted that “dropping Eclipse support would close doors to millions of developers.”
“Something has to give,” he concluded, not unreasonably.
Ted Farell's webcast, perhaps unsurprisingly, glosses over the big question (namely, why would Oracle want to divide their time, energy and, most importantly, money, between three different IDEs? Especially considering JDeveloper is clearly Oracle's IDE of choice, with Eclipse coming in second....) to present a win-win situation for everyone. This, is that the three IDEs will develop amiably side-by-side, good-naturedly borrowing and lending bits and pieces from one another. Every IDE's a winner, apparently.
Oracle is apparently chomping at the bit to implement the first phase of its proposed IDE inter-breeding. Plans are already afoot to pop out JDeveloper's editor and replace it with NetBeans' Matisee Swing graphical user interface (GUI) Builder.
In JDeveloper 10g, there was an extension called Simple Java Bean Editor that allowed developers to edit beans' Properties. However, this editor was dropped for the 11g release, the most recent version features a view editor.
Ted Farrell proposes this as a two-way process, with Oracle porting some middleware support from JDeveloper into NetBeans, to create NetBeans as you know it, but with “additional resources” pilfered from Oracle's existing software suit.
“If you're a NetBeans user today, you'll still be a NetBeans user after the acquisition,” Farrell assures the NetBeans community.
And that NetBeans community is staying put: NetBeans.org is remaining open for business,
“It (NetBeans.org) is still the place to go if you're looking for plugins, or you want to publish some plugins.......nothing changes here,” Farrell assured NetBeans.org users “we're keeping those resources there for you.” In fact, he pledged that Oracle would pump more resources into NetBeans.org, than Sun Microsystems ever did. What these 'extra resources' will be, he failed to specify, although there's no denying that “we're keeping it open – and we're making it better!” is a neat bit of marketing spiel.
Once again, the situation is even more complex because Oracle already has its own version of a newly-acquired Sun resource: Oracle Technology Network (OTN).
NetBeans.org is a community where people can develop modular desktop applications using the NetBeans Platform framework; download the latest nightly builds; write tutorials for other NetBeans.org users; and participate in discussions and share knowledge with other users. OTN is Oracle's community for developers, database administrators and architects that use either Oracle's own products, or computer-industry-standard technologies, such as Java, PHP and Linux. Farrell puts the total OTN subscribers at over $1 million, and NetBeans.org is a similarly vibrant community.
Two invaluable resources, with a definite overlap. Logic dictates that Oracle's first loyalty is to its own community portal. However, according to Farrell, Oracle will continue to develop both, because the developer community needs both – apparently, OTN can offer an important social networking aspect, and additional articles that are lacking from NetBeans.org. Farrell encourages the NetBeans.org community to start using OTN as a complementary resource. If even half of the NetBeans.org community took Farrell's advice and started logging onto OTN, then the benefit to Oracle would be substantial. Maybe at the next webcast, they'll be able to place the total number of OTN subscribers at $2 million? There was no mention of OTN subscribers using NetBeans.org as a complementary resource. So, why are Oracle encouraging NetBeans.org subscribers to use their OTN portal, but aren't encouraging their own subscribers to use NetBeans.org? Do NetBeans.org subscribers even need another fully-fledged community web portal, on top of the one they already use? It seems Oracle are just chasing after new subscribers.
Thankfully, there's one area where there's no room for confusion: licensing. Oracle has laid down a cut-and-dried roadmap for NetBeans licensing. Any version of NetBeans 6.8 or earlier will follow the policy they originally negotiated with Sun. However, Oracle are going to extend the existing support policies for NetBeans 6.8 and earlier, to bring them into line with Oracle's own Lifetime Support plan. More details on Oracle's Lifetime Support can be found at their official website.
Meanwhile, versions of NetBeans 6.9 and greater will move to what Farrell describes as “an oracle support policy.” This policy will apparently offer “more choices,” will be “more beneficial to you as an end user” and feature “an unlimited apps policy.” In addition, Sun customers will now be able to access, and make use of, Oracle's online support portal.
Despite some encouraging words from Oracle, there has been one alarming, NetBeans-related development, with Oracle announcing the phasing-out of project Kenani's public-facing portal. Sun's open source project host, was developed to be compatible with NetBeans. Many of the services provided by Kenai were accessible directly from the NetBeans IDE, including creating new projects and opening and retrieving the sources of existing Kenai projects. Dropping an open source host that is so neatly integrated with NetBeans, hardly conforms to Oracle's “producitivty with choice” promise to support all developers equally, regardless of which IDE they choose.
Whatever happens with NetBeans in the future, one thing can be sure: only time will tell whether Oracle will be able to fulfil its promise of developing three IDEs and two community web portals simultaneously, or whether NetBeans – arguably at the bottom of Oracles priority list – will be left behind in Oracle's three-way IDE race.