The Source for Java Technology Collaboration
User: Password:



Gregg Sporar

Gregg Sporar's Blog

Sun's Developer Tools Strategy FAQ

Posted by gsporar on February 01, 2006 at 06:14 PM | Comments (16)

In addition to sponsoring the NetBeans open-source project, Sun has additional Integrated Development Environment (IDE) tools that it provides. These are:

All three tools are built on the NetBeans Platform and they incorporate features of the NetBeans IDE. All three tools are available for free, if you register for the Sun Developer Network (which is also free). Since NetBeans version 5 has just been released, I decided to get a better view of what the strategy is behind having multiple tools and an idea of what the roadmap looks like. So I asked some questions of Bob Brewin who is Sun's Chief Architect for developer tools.

Q1: Why are there four IDEs: NetBeans, Sun Studio, JSE, and JSC?
A: There's a blog entry on this topic, but the short answer is: The IDEs that Sun delivers as products serve multiple audiences and serve different functions. For instance, Java Studio Enterprise provides some extra enterprise-class tools for service-based application development and modeling facilities using UML. Java Studio Creator is designed for the rapid development of Java applications by those either new to Java or domain experts who needed an easy way to leverage the power and portability of Java without enduring the steep learning curve needed by other IDEs (more thoughts on this here) . And Sun Studio provides features needed for C/C++ development on Solaris and Linux.

In the past we built these products on different versions of the base NetBeans code, but we're moving away from that approach and will now build on the unmodified product. As the independent products converge on a standard binary version of NetBeans later this year, it will therefore enable us to deliver modular components of functionality from the Studio products which simply layer or plug-in to that common NetBeans IDE foundation. The model of 'the right tool for the job' still applies here, it's just a method of delivery change, and a simpler one at that: one IDE (one toolbox), multiple tools (available in that toolbox).

Q2: What version of NetBeans is JSE 8 built on?
A: NetBeans 4.1. But the next version (JSE 8.1) will be built on NetBeans 5.0 and be in binary synchronization with future NetBeans releases.

Q3: So what solution should I use if I want the UML features in JSE 8 and the new features in NetBeans 5?
A: Today, you still need to use the two IDEs. This spring however, there will be a preview of the integration of those extra Java Enterprise Tools within NetBeans, which will allow you to use the advanced enterprise features from Java Studio Enterprise, such as UML modeling. When Java Studio Enterprise 8.1 ships, you will be able to use a single IDE with all the features of NetBeans 5.0 because JSE 8.1 will be built on the binary version of NetBeans 5.0.

Q4: When will a version of JSE be released that is built on NetBeans 5?
A: JSE 8.1 is scheduled for release by summer of 2006.

Q5: Why the delay? Since JSE is already built directly on the NB 5 binary, why is there over a 3 month delay before 8.1 ships?
A: Java Studio Enterprise 8.1 is tightly aligned and integrated with the Sun Java Enterprise System (JES) version 5 and as such will be released to provide a tight pairing of runtime and tool when version 5 of JES is ready.

Q6: JSC 2 was recently released. What version of NetBeans is JSC 2 built on?
A: JSC 2 is built on NetBeans 4.1 (the same version as the current release of Java Studio Enterprise) because Creator (with its unique workflow and user model) required changes in the core IDE (NetBeans). These changes (simply for logistical reasons of resources and time) will be incorporated in a future version of NetBeans as contributions from Sun to the NetBeans community. At that point in time (at present we estimate this calendar year), those changes will be incorporated into NetBeans and Creator will be built on the same binary base as Java Studio Enterprise.

Q7: So what solution should I use if I want the cool web page design features in JSC 2 and the new features in NetBeans 5?
A: For now, you will still need to use two tools, however later this year those cool Creator features will be available in NetBeans in early access form.

Q8: Why even have separate products? If you're moving to a standard base, why not just release NetBeans and then have the functionality of JSE and JSC delivered as plugins?
A: Once all our tools are built upon the same binary foundation of NetBeans, this will allow for the easy sharing of functionality between tools. Precisely how that functionality is delivered, whether as plug-ins, "packs" (as we do with Mobility Pack today) or as complete product suites will depend on the needs of the customers as well as alignment of developer solutions with their corresponding runtimes. In other words, we're not limited to just one choice; we might deliver functionality via multiple techniques.

Q9: Is there a roadmap for when we'll see deliverables along that line?
A: As stated above in the answer to Q6, this calendar year.

Q10: The next release of NetBeans will be version 5.5. What new features will be in NetBeans 5.5?
A: Support for Java EE 5 and Java SE 6 (Mustang).

Q11: When will NetBeans 5.5 ship?
A: We're still doing the planning for NetBeans 5.5, so stay tuned.

Q12: NetBeans 5.5 will have a preview release soon. Will all the features/fixes from NetBeans 5 be in the initial preview release of NetBeans 5.5?
A: Yes.

Q13: Will there be releases of JSE and JSC that are built on NetBeans 5.5?
A: No. But as mentioned in the answer to question #3, there will be a set of extra Java Enterprise Tools which will be made available to plug into NetBeans 5.5, but the next versions of the full products of JSC and JSE entirely based on NetBeans will be available on a subsequent version of NetBeans.

Q14: Sun Studio 11 is a great product. Recently I saw a message on nbusers that said some of the C/C++ editor support developed by the Sun Studio team would be put into NetBeans. What's up with that?
A: The Studio team and the NetBeans team are working together closely to deliver C and C++ support as part of the standard NetBeans offering this year. This is a collaborative effort, with the Studio team contributing their extensive experience and effort to making a better NetBeans as well as improving the Sun Studio product as it will then leverage the huge improvements available in the NetBeans 5 IDE.

Q15: There was a project called Coyote, which was for adding scripting language support to NetBeans. It seems to have died. What happened?
A: Tim Bray was the sponsor of that project and he posted a response to that question on the nbusers mailing list in December, 2005: "While this isn't official yet, I think the conclusion was that this kind of functionality is required in NetBeans itself, not as an add-on. After all, Java SE is probably going to get a new bytecode to support dynamic languages, and Mustang supports Rhino, so it seems like dynamic languages are quickly becoming first-class citizens."

Q16: Does this mean NetBeans will not be providing support for scripting languages?
A: NetBeans (and the Studio products) have in their roadmap the development of support for scripting languages. We recognize that developers typically develop in more than one language and scripting languages are among the most common.

Q17: For the last two years there has been talk of a project called Jackpot. What is Jackpot? When will it be released?
A: Jackpot is a SunLabs project conceived and implemented by James Gosling and a team of engineers from the Labs. Jackpot is an innovative tool which allows for Java refactoring far beyond the capabilities of any existing refactoring engines today. This technology will be incorporated into NetBeans later this year as part of its standard offering.

Q18: Sun recently announced all its developer tools are available at no cost. Further, the announcement stated that, "Sun has committed to open sourcing its entire software portfolio using industry-standard open source licensing models to allow customers to have easy and broad access to all of its source code." Does this include tools such as the NetBeans Profiler and Mobility Pack? JSE's UML features? JSC's cool web page design features?
A: Yes.

Q19: When will those tool technologies be open sourced?
A: Sun has announced that it is committed to moving to both free and open software, however the exact schedule and specific product plans related to open sourcing are not yet public.

Q20: Does the "everything will be open-sourced" directive also apply to Java itself?
A: With Java, Sun has embraced the concept of "open development", which means that the sources are available and that all development of future versions of Java occur in this open environment.

Q21: These Sun developer tools have some great features, but why try to do it all? Why not just join the Eclipse Foundation and have one focused effort to use for building tools? In other words, why couldn't all of Sun's leading-edge tools features just be delivered as Eclipse plugins?
A: There are several reasons:

1) We do not agree with all the technology decisions made by IBM when they created Eclipse. In particular, the Standard Widget Toolkit (SWT) breaks the Java promise of "write once, run anywhere" (WORA), which is a key value provided by the Java programming language.

2) While it would be theoretically possible to port all of our technology from Swing to SWT, the effort is non-trivial. A key problem is the very different event-handling architectures. So instead of investing in a huge effort to port to something that does not support WORA, we prefer to instead invest in adding innovative new features. Note, Eclipse's SWT/AWT bridge technology is not robust enough for us to rely on it. As just one example, there are problems on the Mac: https://bugs.eclipse.org/bugs/show_bug.cgi?id=67384.

3) We are not convinced that the Eclipse approach provides the best user experience. While the base Eclipse tool set provides some impressive functionality, it is only a base - everything else is delivered via plugins. There is a growing audience for free tools that just work right out of the box, no assembly required in order to get basic functionality such as an HTML/XML/JSP editor, etc.

4) There is a large (and growing) community of third-party applications built on the NetBeans Platform - for some examples take a look at http://www.netbeans.org/products/platform/screenshots.html. Most of these have nothing to do with developer tools, but that does not make them any less dependent on our support of the NetBeans Platform. We cannot easily abandon this segment of the developer community.

5) The momentum behind NetBeans accelerated in 2005. If it were declining in popularity our answer might be different, but the opposite is the case. The latest numbers from Evans Data Corporation show that the NetBeans IDE (and the IDEs built on it) holds 31% of the Java developer market. In addition, it is important to note that of all the downloads of the NetBeans IDE that have happened since it was open-sourced in June, 2000, over 33% of those downloads happened during 2005 alone. This would indicate that now is not the right time to abandon NetBeans in favor of Eclipse.

6) Besides, competition is a good thing. It drives innovation and provides a choice to the community of developers. Based on user feedback and the dramatic increase in usage, we are confident that the NetBeans community will fuel further innovation that is going to appeal to a large number of developers.


Bookmark blog post: del.icio.us del.icio.us Digg Digg DZone DZone Furl Furl Reddit Reddit
Comments
Comments are listed in date ascending order (oldest first) | Post Comment

  • Greg,I installed Netbeans 5 this evening, and all I can say is... Wow!

    Great job!

    --JohnR

    Posted by: johnreynolds on February 02, 2006 at 07:29 PM

  • As long as we're answering Q21 by providing links to our favorite Eclipse bugs, here's mine:

    Add Swing as a supported platform for SWT

    https://bugs.eclipse.org/bugs/show_bug.cgi?id=69930

    Posted by: coxcu on February 03, 2006 at 06:14 AM


  • 3) We are not convinced that the Eclipse approach provides the best user experience. While the base Eclipse tool set provides some impressive functionality, it is only a base - everything else is delivered via plugins. There is a growing audience for free tools that just work right out of the box, no assembly required in order to get basic functionality such as an HTML/XML/JSP editor, etc.


    Yes, it's an incredibly onerous task to type a URL into the plugin dialog in Eclipse. Could you be more disingenuous? Maybe you should get another marketing guy to help you out with these blog posts and file down the rough spots.

    However, you're seeing something as a "flaw" that is actually a great strength in Eclipse, that NetBeans cripples itself by not supporting better: third-party developers.

    It has been said that "Eclipse is the new Emacs". When people want to build a new development tool, they build it in Eclipse, partly because it's a great environment, and partly because they can trust that Eclipse will not cannibalize its third-party market.

    For NetBeans, you're at the mercy of Sun. Nobody bothers to write plugins for NetBeans. And as for bugs, look to the beam in your own eye. NetBeans is a far more bug-ridden piece of software than Eclipse, and Sun never does anything about its bugs. Years--YEARS!!! may pass before Sun addresses a bug, and then it's usually to mark it WONTFIX.

    This is why nobody in the free world uses NetBeans. The only question I have is one you won't answer:

    Q: Why does Sun continue to promote a piece of software that makes them no money, and is profoundly disliked by all Java developers?

    Posted by: mark_hughes on February 04, 2006 at 03:02 PM

  • Write once, run anywhere
    Have you ever tried Swing on Linux, ever tried to make a Swing application look and feel like a native UI application? WORA, well, nice promise but far from reality.

    xix [nine-teen]

    Posted by: xix on February 06, 2006 at 12:11 AM

  • Hi JohnR, Thanks for the nice comment. If you'd be willing to repeat that on the NetBeans comments page, I'd appreciate it.Thanks, Gregg

    Posted by: gsporar on February 09, 2006 at 06:22 PM

  • mark_hughes: Thanks for the comments - I'm always interested in hearing from people who clearly have a different point of view. It broadens my perspective. As to your specific questions/comments:

    Could you be more disingenuous?

    The intent was not to be disingenuous - we hear from people all the time who abandon Eclipse because of the problems they encountered with locating and configuring plugins. You can check out some of their stories here.

    NetBeans cripples itself by not supporting better: third-party developers.

    No disagreement here. We need to do a better job at this.

    Nobody bothers to write plugins for NetBeans.

    While it's true there are more plugins for Eclipse, your overstate the situation a bit. There is a growing collection of NetBeans Plugins. Check out the partners page and our new community plugins page.

    Sun never does anything about its bugs.
    It's unfortunate that you haven't seen the responses that you want. But once again, I think you overstate the problem. I spoke with an independent consultant earlier today who told me how pleased he was to get an email from the NetBeans team with a list of all the bugs/RFEs he submitted that were fixed in 5.0. So we have at least one satisfied user. :-)

    This is why nobody in the free world uses NetBeans.

    See previous response - I realize I don't count because I work for Sun, but the gentleman I spoke with today (and JohnR, in the earlier comment) don't work for Sun so we have at least two users. :-)

    Why does Sun continue to promote a piece of software that makes them no money, and is profoundly disliked by all Java developers?

    As mentioned, at least two people outside Sun like it. And while the direct revenue is zero, there is a business model that can work here. Check out this example.

    Posted by: gsporar on February 09, 2006 at 06:55 PM

  • xix: Yes, WORA is easier said than done. It seems to me, though, that Java has made progress over the years. It's not perfect, but it's getting better.

    Posted by: gsporar on February 09, 2006 at 07:00 PM

  • Gregg,

    I am full of admiration for your highly professional attitude dealing with posts like the one from mark_hughes.

    As just another happy non-Sun NetBeans user I have to say that it really annoys the hell out of me to read this kind of comments from Eclipse supporters full of utterly (but deliberately) wrong statements over and over again.

    However I should admit that Sun could do a better job in fixing bugs in the JDK (just as an example there's a recent rant on bugs in the Date and Calendar classes), and I am almost sure he is referring to those bugs in the JDK (he is not using NetBeans, so he cannot have any idea about what bugs are in there anyway).

    Posted by: giorgio42 on February 11, 2006 at 05:05 AM

  • Referring back to the blatantly fictional "switch" stories on Sun's own site is not a convincing response, Gregg. People might be less suspicious of these kind of stories if Sun didn't so aggressively send you and several other astroturf marketers out to sell NetBeans by pretending to be happy users.

    Eclipse plugins are trivial to locate, appear in an almost endless quantity, range from decent-quality freebies to high-quality commercial plugins, and trivial to install. From your own links, I count 14 plugins on nbextras, 38 on (http://www.netbeans.org/catalogue/all-stable.html), compared with 1094 on (http://eclipse-plugins.2y.net/eclipse/plugins.jsp), and that's not the only site that hosts Eclipse plugins. 1094. NetBeans has at most 5% of the plugins, which I guess is about right for market share. Anyone who can't find and install an Eclipse plugin is not suited to be a developer of any kind, and won't have any better luck with NetBeans.

    I have in fact looked at the NetBeans-specific bugs, just as you've looked at the Eclipse-specific bugs. Eclipse fixes bugs on a regular basis. NetBeans... well, doesn't. The JDK is an entirely separate issue (which also suffers from Sun's poor quality control, but not to the apocalyptic degree of NetBeans).

    I don't say these things because I hate NetBeans. It's just a poor IDE, and Sun's attempts to mislead people about its quality or force them to use it by tying it into the app server and tutorials are offensive to anyone with taste. Lose with dignity; if your product sucks, face up to it, take it out of sight until you can fix it, and then rerelease it.

    giorgio42, can you specify a single thing that's wrong in what I said? You didn't like it, I know, and it interrupted your permanent lip-suction on Gregg's ass, but you haven't got a single fact to rebut me with, and you know it.

    One more thing:

    I know for a fact, because I work there, that at least one of those "partner" pages is a lie; someone within the organization may have used NetBeans in an example, but certainly the company did not endorse NetBeans, and internally, uses Eclipse for almost all Java development work, and much of the C++ and Perl. I know this seems like kicking you when you're down, but I'll have to send email to the lawyers to have them take a look at that, because it's inappropriate for you to list the company without approval. Probably the others are similarly inaccurate. I'd really highly recommend you have Sun's legal team go over them and get some kind of testimonial paperwork backing them up, because you're using their trademarks to promote yourself, which is a lawsuit waiting to happen.

    Posted by: mark_hughes on February 13, 2006 at 06:34 PM

  • For the record, I am a non-Sun developer who has chosen to use Netbeans instead of Eclipse because I would rather download the IDE and get going than download the IDE and then figure out which one of 1,094 plugins / extensions I should download and install to get the product that I want. That said, there are plenty of people who prefer the Eclipse approach because it allows them to effectively get their own custom IDE. I don't think you can really call one approach better than the other; there is certainly a market for both. (If there were not a market for both, one of the two IDE's would have zero downloads.)

    Posted by: jeffbeal on February 15, 2006 at 06:16 AM

  • Well, Gregg -- where to start? I consider myself a three-year Java newbie wanting to leave the JBuilder IDE, and have been researching options since last October, finally shortlisted to NB and MyEclipse.

    First: ME is very fast with question turnaround, in hours at most -- with NB i waited at first a day, now it is five days since my last query about Hibernate and db/Java persistence support.

    Secondly, this business about releasing NB5.0 but not having any of the upperlayers ALREADY integrated -- what good is that to me? I need to produce for my clients now, not in 2007.

    After studying an (unsigned) article on "brainbell.com" about Java's present and future, and since my Job One is to deliver solutions to my clients (MySQL vs. browsers) -- well, I am more than seriously reviewing Ruby on Rails. I for one do not need purism, I need production!

    Btw -- this just jumped into mind -- I see a lot of parallels between Sun's current behavior and the torment AT&T experienced in the late '80s and 90s trying to refashion itself to the outside world.

    Don't mean to be harsh, but I do need to eat(!).

    Posted by: craigbspengler on February 15, 2006 at 06:38 AM

  • mark_hughes: more feedback below

    Referring back to the blatantly fictional "switch" stories on Sun's own
    site is not a convincing response, Gregg. People might be less suspicious
    of these kind of stories if Sun didn't so aggressively send you and several
    other astroturf marketers out to sell NetBeans by pretending to be happy users.

    The switch stories
    are not from Sun employees and were unsolicited. Also, note that they are not
    on Sun's web site, they are on netbeans.org (which, admittedly, Sun pays for). I
    do not "pretend" to be a happy user of NetBeans - while I recognize its faults,
    I am a happy user of NetBeans. As I understand the term, an "astroturf
    marketer" is someone who hides their affiliation - I make no secret of the fact that
    I am a Sun employee - it's in my bio at the top of my blog. And the folks in Sun's
    marketing department would laugh pretty hard if you told them I was a marketer - I
    don't know much about marketing because my
    career has been spent in software development.


    From your own links, I count 14 plugins on nbextras,
    38 on (http://www.netbeans.org/catalogue/all-stable.html), compared with
    1094 on (http://eclipse-plugins.2y.net/eclipse/plugins.jsp)

    I have not checked your math, but I don't have any reason to doubt it. As I mentioned
    in my first response to your initial comments, we know that we need to do a better job
    of getting third-parties interested in building plug-in modules for NetBeans.

    NetBeans has at most 5% of the plugins, which I guess is about right for market share.

    For the record, in the original blog entry Bob discusses an independent survey of market share in part 5 of his answer to question 21.


    Anyone who can't find and
    install an Eclipse plugin is not suited to be a developer of any kind, and won't
    have any better luck with NetBeans.

    FWIW, for a different opinion, see this post
    from a non-Eclipse, non-NetBeans user.


    Eclipse fixes bugs on a regular basis.
    NetBeans... well, doesn't.

    Running
    this query against the IssueZilla system used to track bugs and enhancement requests shows that over
    5,000 bugs were resolved in version 5.0 of NetBeans.


    It's just a poor IDE,
    and Sun's attempts to mislead people about its quality or force them to
    use it by tying it into the app server and tutorials are offensive to
    anyone with taste.

    For the record, Sun's application server and tutorials can be used without the NetBeans IDE.

    Lose with dignity; if your product sucks, face up to it,
    take it out of sight until you can fix it, and then rerelease it.

    Our current strategy is to make the NetBeans IDE available so that we can get feedback from the community in order
    to make it a better product.


    I know for a fact, because I work there, that at least one of those "partner"
    pages is a lie; someone within the organization may have used NetBeans in an
    example, but certainly the company did not endorse NetBeans, and internally,
    uses Eclipse for almost all Java development work, and much of the C++ and Perl.

    If you have specific feedback on our
    Partners Page we want to hear it. If any partner company is unhappy with what we have listed, we will
    fix the problem immediately. You can submit
    feedback on the Partners Page directly to the NetBeans team via this form.
    For the record, we establish contact with someone at each company listed on the Partners Page. And if you follow
    the links that we include in each of our Partner pages, you'll end up on one of their pages. To take just a few
    examples, our eBay page links to
    this page on eBay's Developer Program site. Our page for NetCaboodle links to
    this page that describes their plugin for the NetBeans IDE. The page we have for HP links to
    this page on HP's website that describes their version of the NetBeans IDE.

    Posted by: gsporar on February 15, 2006 at 08:14 AM

  • craigbspengler:


    with NB i waited at first a day, now it is five days since my last query about Hibernate and db/Java persistence support.

    Where are you submitting your queries? I hope you are aware that we have nbusers, which is an email list for NetBeans
    IDE users (more details on it here). Have you submitted questions to nbusers?

    Secondly, this business about releasing NB5.0 but not having any of the upperlayers ALREADY integrated --
    what good is that to me?

    I assume by "upperlayers" you are referring to the UML tools and visual JSF tools, etc. that Bob describes in his answers. If so,
    we hear you, loud and clear. Unfortunately, we don't have unlimited resources and the 5.0 release targeted a specific
    set of highly-requested features. So we made some users happy with 5.0, but we know we didn't do enough
    to make everyone happy (as you rightfully point out). As Bob described, working on those "upperlayers" is a key
    requirement for future releases.


    Don't mean to be harsh, but I do need to eat(!).

    That's okay. Sometimes harsh is good. One of the favorite parts of my job is hearing from people who
    think NetBeans is great. But the reality is I won't learn anything new unless I also hear from people
    who have other opinions.

    Posted by: gsporar on February 15, 2006 at 08:36 AM

  • Gregg--re: "Where are you submitting your queries?" -- directly to Sun Developer Support Services; I made a mistake on my timeline, there was a weekend in there -- nonetheless i submitted my question on sunday morning and finally got a response this thursday morning. Still didn't help -- all i wanted to know was: what do i use in NB that is equivalent to the "JBuilder's JDataStore 6.0 API in order to connect to databases" (i.e. connecting to and mapping of relational db data rows as objects)? What I get is how to use a canned thing to connect to Derby Database (whatever that may be). Gee whiz, I get better support from my pooches!! But thanks for the opportunity to vent.

    Posted by: craigbspengler on February 16, 2006 at 06:35 AM

  • craigbspengler:
    Gee whiz, I get better support from my pooches!!
    Looks like we dropped the ball - as I've said, we're not perfect. FWIW, Derby is a fairly popular open-source Java relational database server.
    I don't know anything about JDataStore, but from looking around on the web it appears to be similar - a relational database engine built in Java. What I don't understand yet is what the "JDataStore 6.0 API" provides that is not in regular ol' JDBC. But it sounds like the total package of database engine and additional APIs is what you are trying to replace. This is why I suggested trying the nbusers email list. If you're still interested in pursuing using the NetBeans IDE, you might have better luck posting your question there, because it will be seen by the larger NetBeans community.

    Posted by: gsporar on February 16, 2006 at 06:52 PM

  • I agree that NetBeans 5.0 is one of the best Java IDEs on the market, much better than Eclipse. I would like to see some functionality of JSC incorporated in Net Beans in the future, with better RAD type approach for Java Server Faces. I am happy to here that many of the Enterprise features of Java Enterprise Studio will be incorporated into NetBeans, as well as C/C++ plug ins.

    Overall NetBeans is great!! Your strategy of an integrated IDE makes much more sense than the after thought plug-in related nature of Eclipse. This is one thing I have not liked about Eclipse;-- yes we want plug-in support, but I do not want to spend half of my time, finding decent plug-ins just to do simple Web development or Swing design. NetBeans works, right out of the gate and works well.

    Posted by: paulnich on February 17, 2006 at 05:45 AM



Only logged in users may post comments. Login Here.


Powered by
Movable Type 3.01D
 Feed java.net RSS Feeds