Slashdot Mirror


Tim Boudreau On The Future of NetBeans

maffstephens writes "With the release of NetBeans 4.0 set to reignite the open-source Java IDE war and all sorts of cool developments on the horizon, it seemed like a very good time to talk to one of the key senior NetBeans developers. In this interview, Tim Boudreau (co-author of NetBeans: The Definitive Guide) speaks candidly about his views on rival IDE Eclipse, the future of NetBeans, and the thinking behind its new Ant-based projects system."

5 of 43 comments (clear)

  1. JFluid code profiler by Armhold · · Score: 5, Informative

    I'm a dyed-in-the-wool Emacs and shell guy, but the feature that has me salivating over NetBeans 4.0 is the upcoming code profiler previously known as "JFluid". Have a look at http://profiler.netbeans.org/index.html.

    That, and the potential for using refactoring tools has me seriously considering an IDE for the first time in my life. The question is: can I make all of this work with Emacs?

  2. NetBeans is NOT Open Source by maxgilead · · Score: 5, Informative

    NetBeans is NOT Open Source software. While parts of it may qualify as such, the IDE as distributed by http://www.netbeans.org/ is not.

    Below I cite sample parts of NetBeans license. There is "Binary Code License Agreement" which gives us no rights to redistribute and "Supplemental License Terms" for each part, which, basically, allows us to redistribute it in binary form only, unchanged. And such terms are repeated in almost exact same way for all other parts.

    As far as I can tell it's not even close to open source. However, if someone knows better I'd like to be proven wrong, but facts, please, not opinions.

    Here is first paragraph of NetBeans license:

    1. The following software products found in the NetBeans Build are governed by the Binary Code License Agreement including its applicable Supplemental Terms and Conditions ("BCL"):
    * XML Parser v.1.1 (jaxp and parser)
    * JavaHelp v.2.0
    * JavaC Compiler
    * J2EE Deployment APIs 1.1
    * J2EE Management 1.0
    * EJB Enterprise Java Beans 2.0
    * JMX 1.2
    * J2EE Editor
    * XML resolver 1.0
    * JMI 1.0

    Here are two first paragraphs of Sun Microsystems, Inc. Binary Code License Agreement:

    1. LICENSE TO USE. Sun grants you a non-exclusive and non-
    transferable license for the internal use only of the
    accompanying software and documentation and any error
    corrections provided by Sun (collectively "Software"), by the
    number of users and the class of computer hardware for which the
    corresponding fee has been paid.

    2. RESTRICTIONS Software is confidential and copyrighted.
    Title to Software and all associated intellectual property
    rights is retained by Sun and/or its licensors. Except as
    specifically authorized in any Supplemental License Terms, you
    may not make copies of Software, other than a single copy of
    Software for archival purposes. Unless enforcement is
    prohibited by applicable law, you may not modify, decompile, or
    reverse engineer Software. You acknowledge that Software is not
    designed, licensed or intended for use in the design,
    construction, operation or maintenance of any nuclear facility.
    Sun disclaims any express or implied warranty of fitness for
    such uses. No right, title or interest in or to any trademark,
    service mark, logo or trade name of Sun or its licensors is
    granted under this Agreement.

    Of course there are supplemental license terms for each part mentioned above, let's see what rights they give us for "JAVA(TM) DEVELOPMENT TOOLS JAXP.JAR AND PARSER.JAR ARCHIVE FILES FROM JAVA API FOR XML PARSING, VERSION 1.0":

    1. Internal Use and Development License Grant. Subject to the
    terms and conditions of this Agreement, including, but not
    limited to, Section 3 (JavaTM Technology Restrictions) of these
    Supplemental Terms, Sun grants you a non-exclusive, non-
    transferable, limited license to reproduce internally and use
    internally the binary form of the XML JAR Files Software for the
    sole purpose of designing, developing and testing your JavaTM
    API for XML Parsing compatible parsers (the "Programs").

    2. License to Distribute Software. In addition to the license
    granted in Section 1 (Internal Use and Development License
    Grant) of these Supplemental Terms, subject to the terms and
    conditions of this Agreement, Sun grants you a non-exclusive,
    non- transferable, limited license to reproduce and distribute
    the XML JAR Files Software in binary code form only, provided
    that you: (i) (a) either distribute the XML JAR Files Software
    complete and unmodified in their original Java Archive file, but
    only bundled as part of your Programs into which the XML JAR
    Files Software is incorporated, and do not distribute additional
    software intended to replace any components of the XML JAR Files
    Software; or

    1. Re:NetBeans is NOT Open Source by Anonymous Coward · · Score: 4, Informative

      Those licenses are for libraries NetBeans uses, not NetBeans itself. The NetBeans source code is open source. It does use some libraries that are freely redistributable (like the java compiler), but not open source. That's all this is.

  3. Intellij and don't look back. by clambake · · Score: 3, Informative

    I have test driven just about every Java IDE out ther, and so far, hands down, Intellij Idea is the way to go. It isn't free, but it's quite cheap. It's had Java 5.0 support since Java 5.0 was java 1.5 beta and generic support even before that. It's got refactoring capabilities out the whoozow and integrated amazingly well with cvs. It can even do codeanalysis and find duplicated code across your entire project (and of course help you refactor it out). Except for JBuilder's GUI building, I can't think of another IDE that can do anything that it does better.

  4. I like both eclipse and netbeans by jilles · · Score: 3, Informative

    Before eclipse, netbeans was the only free IDE that could compete with its commercial counterparts. The 1.x and 2.x versions were pretty OK compared to other free IDEs. The 1.x generation was the first time I preferred an IDE over an editor/compiler combination. Especially the GUI editor was one of my favorites (and having done swing programming manually, I am very critical of such tools).

    Then eclipse came and especially in its 2.x version and 3.x version showed the weaknesses in netbeans (usability & GUI performance). Fast forward to 2004. I'm using eclipse 3.0.1 on a daily basis with some plugins and I'm reasonably happy with it. Performance is a bit sluggish on my (soon to be replaced) 1Ghz pIII but acceptable on smaller projects.

    I disliked all of the netbeans 3.x stuff, including 3.6 which I only gave a brief glance. But I tried netbeans 4.0 beta the other day and I liked what I saw. Out of the box it supports a lot of stuff that eclipse simply does not support (basically all the j2ee stuff, ant integration, xml, html). You can get most of these things in eclipse by installing commercial plugins but if you want everything for free it's pretty hard to find e.g. jsp support, good servlet container integration (more than the pathetic tomcat start/stop support in some eclipse plugins), etc. The netbeans people already had most of this in the 2.x and 3.x generations and the functionality has been much improved since then. Also the features are well integrated: you can create a jsp file from a template, use autocompletion to hook it up to your java stuff and deploy it to tomcat with the debugger attached. Doing the same in eclipse requires a lot of manual intervention since eclipse 3.0.1 doesn't understand tomcat, jsp, deployment descriptors and debugging a running tomcat server. It resorts to plaintext editors for most of these things.

    Also, to my surprise, netbeans was very fast on my old pc at work. It effortlessly handled large projects which eclipse is having problems with on the same machine. This is definately progress from 3.x. Browsing in 3000+ loc java files in eclipse is a pain but netbeans seems to handle this much better. IMHO the whole swing vs swt performance debate is over, neither party won. Eclipse is not faster for the same tasks in netbeans and both are resource hogs.

    Not all is well though. Eclipse has much better refactoring support and seems to have the better java editor. In the end, a java programmer spends lots of time editing java code and that is what eclipse is very good at. All the other stuff is nice to have but not essential for powerusers like me.

    In addition, some interesting tools are under development at eclipse which will again level the playing field for eclipse. The webtools project for instance intends to bring lots of j2ee goodies to eclipse.

    --

    Jilles