24 October 2009

Why Oracle Should Dump JDeveloper For NetBeans

Lately there has been a bit of speculation about what will happen to NetBeans once Oracle has acquired Sun. Personally I am one of the people who is supporting the case for Oracle to support NetBeans, and to drop support for JDeveloper. It seems to me after reading what software developers think of the idea of Oracle supporting NetBeans is that the majority of them are in favor of Oracle supporting NetBeans, and dumping support for JDeveloper. Also many software developers expressed the wish for Oracle to take the best of JDeveloper (namely the DB support) and incorporate it into NetBeans itself.

When considering whether or not to support JDeveloper or NetBeans the following needs to be taken into consideration:

  • Quality of support for development of JavaFX applications
  • The ability of the IDE to support the big picture (supporting things that will make a difference in the long run for software developers)
  • Support of widely used software development techniques (eg Agile development, Test Driven Design (TDD), team collaboration)
  • Level of support for Polygot programming
  • General IDE platform support
  • Support for different types of software development (mobile, web, desktop, TV)
  • User uptake of the IDE and IDE platform

JDeveloper Advantages

  • Very good support for enterprise software development (for web development)
  • Comprehensive support for software diagramming
  • Reasonable built in diagnostic tools
  • Ready to use out of the box for web development
  • Very good support for developing DB based applications
  • Good performance

JDeveloper Disadvantages

  • No support for mobile and TV development
  • Poor support for desktop development
  • No support for Polygot programming
  • Does not support JavaFX development
  • Very limited uptake of IDE and IDE platform
  • IDE platform is mainly used in some major Oracle products

NetBeans Advantages

  • Reasonable support for enterprise software development (for web development)
  • Very good support for desktop, mobile and TV development
  • Reasonably good support for JavaFX development (currently #1 IDE) *1
  • Very good support for Polygot programming (currently supports JavaFX Script, Java, Ruby, PHP, Groovy, C/C++)
  • IDE and IDE platform are very widely used (high uptake among businesses and software developers)
  • Very good diagnostic tools (including profiler and debugger)
  • Excellent usability and out of the box experience
  • Reasonably good performance

NetBeans Disadvantages

  • Limited support for developing DB based applications
  • Limited support for software diagramming

Some major questions remain on the very existance of JDeveloper.

  • Why did Oracle create JDeveloper when they could have used Eclipse or NetBeans instead?
  • Why is JDeveloper designed to be similar to NetBeans (eg with the user interface)?
  • Why does JDeveloper have such poor adoption rates compared to NetBeans?
  • Why is Oracle taking such an interest in the NetBeans IDE platform when it directly competes with JDeveloper's IDE platform?

For the first time the development of the JavaFX NetBeans plugin has been syncronised with the general development of the NetBeans IDE. It is expected that when NetBeans 6.8 is released that a JavaFX bundle will be available at the same time (on the official downloads web page). Such a change will further bolster the commitment NetBeans has to supporting JavaFX development, and will bring about stronger support in the future. Since Oracle is going to support JavaFX (in a big way) they will find themselves in an very difficult situation should they not support NetBeans (*1).

With the current situation of NetBeans not lagging far behind Eclipse (*2), and the fact that JDeveloper is not one of the top three IDEs is there really room for a 4th IDE (apart from NetBeans, Eclipse, IntelliJ Idea)? Is Oracle willing to get offside with software developers by not supporting NetBeans?

There is a potential risk that if Oracle does not support NetBeans then there could be a mass migration of developers from the Java platform to the .NET platform. Some reasons for this are:

a) NetBeans is more similar to Visual Studio than Eclipse. Why would NetBeans users go to Eclipse when Visual Studio is more familiar? Already there are many Java developers that are doing some software development part time on .NET. Many software developers consider having to use Eclipse (for development on the Java platform) a major step backward from a quality perspective.

b) Possible perception by some software developers that Oracle is not acting in the best interests of the Java platform by removing a major choice, that helps move the platform forward. One can see some of this in the NetBeans Users mailing list, it could be the tip of the iceberg.


*1 - As indicated in an informal poll conducted by Jo Conner
*2 - As indicated in an informal poll by Jo Conner and in a recent poll on java.net

16 comments:

  1. Nice joke.
    Did you try JDeveloper? JDeveloper is better then Netbeans. JDeveloper supports many Oracle DB services. Oracle don't something else then JDeveloper.

    ReplyDelete
  2. When was the last time you looked at JDeveloper?
    Some things that you seemed to miss:

    JDeveloper has support for mobile development
    http://www.oracle.com/technology/products/jdev/11/collateral/adf_mobile_development.pdf
    http://download.oracle.com/otn_hosted_doc/jdeveloper/11gdemos/ADFMobile/adfmobile.htm

    JDeveloper has support for desktop development
    http://download.oracle.com/otn_hosted_doc/jdeveloper/11gdemos/ADF_Swing_Overview/SwingOverview.htm

    JDeveloper has support for excel clients development
    http://download.oracle.com/otn_hosted_doc/jdeveloper/111demos/ADFdi_Overview/Overview-ADFdi11g.html

    The JDeveloper development experience is much closer to the .NET than anything Netbeans can offer:
    http://download.oracle.com/otn_hosted_doc/jdeveloper/11gdemos/visualDeclarative/visualDeclarative.htm

    Add to this the fact that JDeveloper also incorporate SOA Development including BPEL and ESB, as well as portlet development and you might change your mind.

    ReplyDelete
  3. JDeveloper does support mobile web development but not mobile development. Shay I can understand why you might be confused about what I mean by mobile development. What I meant by mobile development is developing native mobile applications, that aren't run in a web browser. In terms of JDeveloper supporting desktop development I did not indicate that it didn't.

    ReplyDelete
  4. Sergey, I am serious about what I have posted since I have referred to some polls that were done recently, and if I were doing a joke (most likely on April 1st) it would not be very long like the current post. Also I have tried out JDeveloper and know what it is capable of.

    ReplyDelete
  5. I think you started JDeveloper and pressed some buttons. It isn't enough for a conclusion. Try again.

    ReplyDelete
  6. I used Netbeans and JDeveloper. Now, i am using JDeveloper. Because, my company use it. I can say shortly... I haaaaaaaateeeeeeeeee JDeveloper. It is the worst IDE i used ever. It is not an IDE. it is a nonsense thing.

    ReplyDelete
  7. @kissoid .. oh come on.. it's not that bad if you follow some simple rules .. after every change close and open your application again .. periodically close Jdev and open it again .. an do most of your work in Windows Explorer.

    Then hate turns to a hot dislike.

    ReplyDelete
  8. Let us see what the all mighty google has to say about the IDE statistics! http://www.google.com/trends?q=netbeans%2C+eclipse+ide%2C+intellij%2C+jdeveloper Drum role please, and the winner is...Netbeans!!!

    ReplyDelete
  9. This comment has been removed by the author.

    ReplyDelete
  10. I think that there are more advantages than disadvantages, and I think I will try this, I was afraid of what will happen to NetBeans once Oracle has acquired Sun as well and that is why I was using Sildenafil Citrate version 2.5, but now that is obsolete

    ReplyDelete
  11. Of course, JDeveloper is better than Netbeans. JDeveloper supports many Oracle DB services. Oracle don't something else then JDeveloper, it can be reported to official discussion boards and see if they coin any solution. If you have any queries regarding BPMS, feel free to join our Agile Point blog.

    Thanks

    ReplyDelete
  12. Really superb information.Thanks for sharing...

    Weblogic Server 12cR2 Training

    ReplyDelete
  13. Thanks For Sharing Such an Useful and Valuable Information.

    67500/12

    ReplyDelete
  14. This Blog Provides Very Useful and Important Information. I just Want to share this blog with my friends and family members. digital transformation consulting Thanks for posting.

    ReplyDelete
  15. very useful information thanks for sharing such an nice info....

    Vijay Devarakonda Age

    ReplyDelete
  16. Nice blog has been shared by you. before i read this blog i didn't have any knowledge about this but now i got some knowledge so keep on sharing such kind of an interesting blogs.

    python Training in chennai

    python Course in chennai


    ReplyDelete