Most Read Technology Reporter For More Than Two Decades

Maureen O'Gara

Subscribe to Maureen O'Gara: eMailAlertsEmail Alerts
Get Maureen O'Gara: homepageHomepage mobileMobile rssRSS facebookFacebook twitterTwitter linkedinLinkedIn


Related Topics: Apache Web Server Journal, SOA & WOA Magazine, Java Developer Magazine

Apache Web Server: Article

Is Java Bigger than Sun? - The Java Ecosystem Debates the Future of Java

Is Java Bigger than Sun? - The Java Ecosystem Debates the Future of Java

  • Sun's President: "JavaOne Wasn't About Sun"

    It was billed, to the press anyway, as a debate on "The Big Question."

    It brought together, in the general session hall yesterday morning at JavaOne in San Francisco's Moscone Center, seven highly vocal actors on the technology stage, including: Brian Behlendorf of the Apache Software Foundation; Professor Lawrence Lessig of Stanford University; Sun's Rob Gingell, Chairman of the Java Community Process; Rod Smith, VP of Emerging Technologies at IBM; and the father of Java himself, Sun's James Gosling.

    But what was the question? Was it should Sun open-source Java? Or was it if Sun were to open-source Java what exactly would that mean? Or was it, more philosophically, is Java bigger than Sun alone - and if so, how can others who have invested heavily in it, like IBM, BEA, and Nokia for example, get a better seat at the table in the process that shapes it, which is currently the JCP?

    In other words, there are multiple questions. Questions within questions. It isn't as easy issue.

    Sun Microsystems however, fully in tune with the "today is geek day" theme of the overall general session this morning, made a very good first attempt indeed at showing itself publicly to be a thoughtful and an open-minded custodian of the current process under which Java is evolved.

    Both Rob Gingell and James Gosling listened carefully to the arguments that were advanced by Brian Behlendorf, CTO of CollabNet in addition to being co-founder of Apache, and by IBM's Rod Smith, whose now notorious Open Letter to Sun caused the whole open-sourcing discussion to really blossom in the Java space.

    "We're hitting an interesting inflection point," said Smith. Innovation in the open source community as well as the Java community is plateau-ing, he contended. "We want to see innovation happen at a more rapid pace," he added.

    "My view," Smith continued, "is that we want to see an open source Java married more with the open source projects that Brian and other folks are doing. In enterprise development you want to be able to experiment outside of the box and then try it in a customer environment before bringing it into the JCP and completing the more formal process."

    The moderator of "The Big Question," open source advocate and publisher Tim O'Reilly, asked Smith just what he meant by open-sourcing Java.

    "Java is about compatability," Smith replied. "J2SE people expect compatability, so you could open the TDKs around JSE where customers and others could get involved with testing for compatability. The Jakarta Project set the foundation for things we see today - Struts and JSF for example - that have come back into the JCP process."

    Sun's Rob Gingell, in his capacity as chairman of the JCP, had no issues with this overall train of thought. "This would be a continuation of a journey we’ve been on for 10 years," Gingell observed. "Originally it was Sun and Sun only, now it's a variety of contributors, and we know it's going to continue to evolve. But there's a fundamental promise: that Java programs will not be lied to by things pretending to be Java." (This brought a round of applause from developers in the keynote hall.)

    Brian Behlendorf stressed the importance of "framing the conversation correctly," as he expressed it. "The Java community should support the open-source way of achieving ubiquity," he urged. "The open source community around Java would like to look at compatability of open source Java as symbiotic with innovation, not as two opposed ends of the spectrum."

    Creating intermediate/experimental versions of Java that might not be compatible is a natural part of the open source process, Behlendorf argued. So long as this fact is made transparent. "We believe in the 'sunshine law' - that open review leads to better standards and better implementation," he said.

    Lawrence Lessig agreed that Behlendorf and the open source community is right to separate the question of how you get implementations developed from the separate issue of how you get them verified for compatability.

    "Achieve compatability using other legal devices," Lessig suggested. "I believe in the law, and the law has tools independent of those open source and free software licenses, where there is a legitimate commercial objective of obtaining compatability."

    Compatability is the key, key attribute, chimed James Gosling. Java, he pointed out, "doesn't read trademarks, doesn't read licenses." What makes Java different, he reminded everyone, is the network. "As soon as you put an app on a Web site and say download it..."

    Tim O'Reilly wondered whether there would be any self-interest in a business delivering a system that didn't work. Lessig though conceded: "There are people out there who don't want it to work."

    Rod Smith returned to the theme of how the network isn't any longer just about Java.

    "It's not just Java. It's now about SOA and XML and WSDL. The marriage with open source is going to be critical," he asserted.

    Justin Shaffer, Director of Operations for MLB Advanced Media LP who was also on the panel of experts, wondered what would be accomplished by open-sourcing Java. The Jakarta Community after all seemed to work. "Why put it at risk?" asked Shaffer.

    O'Reilly had the answer, and introduced the first mention of a certain large compasny in Redmond. "There's an elephant in the room," he said. "The fact that on Linux the Mono Project is implemented on .NET not Java. Microsoft has a foot in the door, it has its own programming paradigm. We are starting to see another platform war, and we can't count Microsoft out. IBM has more touch points with the Linux community. How do we get that community to choose Java rather than .NET?"

    Gosling noted that Java is "incredibly heavily used" in the Linux community - "Apache, Jakarta - people that consider themselves in the Linux fold, you'll find tremendous use of Java," he said.

    Smith picked up the Mono theme. "Look at Mono. From an open source basis, when people want to innovate they're looking to places like that. You want the Java community and the Linux community to grow together. We as Java vendors spend a lot of money as we put the solutions together, it would lower the cost to integrators and to the developers in this audience and reduce time to market. For applications."

    But Gosling wanted to make one point clear. "It happens already. All of the bug databases are published - unlike say Apple, where they're not published at all. You can find every last wart that everyone has ever found. You can download the full J2SE, you get all the source for all the APIs, the thing that OS folks rant about is that there's a catch in the license that's more onerous than the catch in the GPL license. We've gotten tremendous value out of the comunity, out of the fact that he source is out there."

    Lessig agreed with Gosling, but wondered: "Is it enough?"

    If the process of opening Java were taken one step further, he continued, then developers and vendors wouldn't have to trust "that Sun remains an angel organization and that you will invite more people."

    In Lessig's view, it isn't necessary to solve the problem of compatability right at the beginning of the development proess.

    Gosling: "I love Linux to bits, but..."

    Gosling didn't endorse Linux as a shining example, however. "We lived through the Unix wars," he said, "and I love Linux to bits, but the same problem is coming all over again. All these distros, almost interoperable, but they're different enough to be a pain in the butt."

    Behlendorf noted: "The same is true with the Java VM. Write Once Run Anywhere is a great ideal. Open source developers can help with getting to that ideal. Open sourcing Java would be a way to allow this to happen without folks having to do it on the sly, fearing Sun's lawyers."

    Gingell returned to his theme of how the whole approach taken by Sun to Java has been a "journey," and that his company was learning all the time, listening all the time, and adjusting things along the way.

    "Are we hurting the things we want to help?" he asked, honestly. He recounted how he'd had dinner with the Geronimo folks the previous evening, and that one developer mentioned how he'd watched the TCK run and found broken code...but he couldn't help. Gingell saw the frustration in that: "We don't want to break the promise of compatability, but we also want to enable the positive side."

    Gingell asked Rod Smith a question. "What does the verb 'to open-source' mean in this context? Are we talking about that Sun shouldn't be at the top of the committer tree? Open source may be the answer, but what is the problem, let's be clear? If this were to happen, how do we change our development practices? Part of the difficulties people have are maybe that our licenses are obscure, or that we don't run the communities effectively enough. Maybe we can improve what we have."

    Behlendorf tried to clarify: "No one's asking that all reference implementations in the GCK be made open. Let the license of specs allow for the open-source implementations on a case by case basis. The Groovy JSR is a test case, it says that it will be open-sourced and we'll all see that this wil end in faster results - and yet still will conform with the APIs and compatability."

    Rob Gingell summed up that this question about open-sourcing Java has been raised every JavaOne for the last 4 years. But no one need question for a moment Sun's overwhelming commitment to Java. 

    "We've bet the company on Java," Gingell reminded everyone. "And what we've bet on is compatability. One way to ensure compatability would be to never change Java again. And you'd all stop coming to JavaOne and using Java. So we know we are going to change it. The question is, how can we do that while preserving what we care about? It's a continuous conversation."

    Gosling agreed: "Participate," he urged everyone present in the crowded keynote hall. "We have this forum and often it seems like the squeaky wheels are the only ones that participate."

    He was reminded, he said, of Churchill's remark about how democracy is the worst possible form of government - except for all the others.

    "Go over to jcp.org and get involved," said Gosling. "Vote."

  • More Stories By Java News Desk

    JDJ News Desk monitors the world of Java to present IT professionals with updates on technology advances, business trends, new products and standards in the Java and i-technology space.

    Comments (15) View Comments

    Share your thoughts on this story.

    Add your comment
    You must be signed in to add a comment. Sign-in | Register

    In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


    Most Recent Comments
    SV 08/21/04 08:11:56 PM EDT

    I updated my article at http://www.vimbrij.com/subhash/javafuture.html

    Zandro 07/06/04 11:38:12 AM EDT

    It looks like the problem is Sun 'bet the company on Java' and so has IBM. Microsoft has bet the company on killing it. The economics prevent any hope of compromise...

    Whatever IBM 07/06/04 10:50:03 AM EDT

    Hypocrisy at its finest! IBM is notoriously proprietary yet admonishes Sun. IBM's only interested in monopolozing Java. IBM will lockdown and monopolize Java for its own gain, and gee let's see maybe destroy BEA in the process. Now there's a kinder and gentler company -- too funny.

    OS java 07/06/04 07:00:31 AM EDT

    Linux platform divergence is not nearly the problem protrayed by Mr. Gosling, and certainly not a credible argument for the continued lock down of Java.

    Market forces must always come into play. As RedHat, SuSE, and other major distributions meet with greater acceptance; they automatically create de-facto standards, as does any successful open code. There is no need for the blessing of some sanctioning body. In fact, even the ''big-guys'' can have their standards co-opted by a lone programmer, with a really cool idea.

    This is the essence of open source; and of freedom itself.

    To be sure, governments and corporations can force standards; however, I believe that most of the strongest, and longest-lived standards will be those recognized, and adopted as such, freely, by a community of peers.

    JavaJava 07/06/04 06:33:16 AM EDT

    Gosling is right in that many people that don''t want to work with Windows but want to make a living developing software embrace Java because it gives them the opportunity to work in their favourite environment - Linux. That is at least true for myself. I consider myself in the Linux fold, like Gosling says, and I develop Java. Having said that, there are very few client side java applications I use, but for server side stuff and web applications, Java is great.

    Gregg Wonderly 07/05/04 06:47:17 PM EDT

    I think that opensourcing Java would in fact create a whole host of problems, including incompatibilities. Everything that the OpenSource community wants is possible right now through the SCSL. You can go get the source. You can change it and use it for your own use in ways that you want. But, you can't distribute it as Java without licensing it and meeting the JCK.

    I'd much rather Sun focus on making it possible to download the distribution and build a working implementation without having to spend weeks figuring out their build environment.

    make config
    make
    make install

    should be all that's needed. Even better would be

    ant -f config.ant
    ant -f build.ant
    ant -f install.ant

    would be event more useful to the community than some kind of licensing change. Then when there is a JVM bug that sun can't address in the time that I need it dealt with, I can build my own fix for my use and then send it to them.

    There is a certain level of immaturity in many of the things that I hear people talking about adding to the JVM. Certainly, there are things that I'd like to see get in, that keep getting pushed off. But, I haven't participated in the community to make those things that I want to happen, happen. So, I can't expect that I can sit in a corner and complain, and someone will do it for me.

    The time spend participating in the community that exists would be equivalent to spending time hacking on a separate source tree. The difference is that working with the community is going to be much more beneficial to everyone than sitting around doing my own thing...

    Subhash Varghese 07/04/04 02:15:07 AM EDT

    I agree with a lot of the points discussed above. In fact I wrote an article questioning the future of Java at http://vimbrij.dyndns.biz/subhash/javafuture.html. My concern is about the usability of the JCP model. I believe Sun looks at open source as a way to get free developers of IP for the original owners of the code, and JCP has been constructed in that same form. The result, not too many participants are willing to donate real work to the JCP as Sun would end up owning the IP ...

    InfoPoint 07/03/04 10:52:30 AM EDT

    sourceforge offers the following stats:

    - C (13785 projects)

    - C++ (13922 projects)

    - Java (12588 projects)

    That places the three languages at roughly the same level.
    No other languages come even close to these numbers.

    Tom Walder 07/03/04 09:23:27 AM EDT

    My company uses macromedia''s coldfusion extensively, the latest version is a J2EE application. The linux version has proved to be incredibly reliable. Other CF users might like to comment on their experience ??, but I think this a very good example of how good the linux/java combination can be

    jellomizer 07/03/04 09:21:16 AM EDT

    Using Java and Linux is really a great long term solution that allows can keep you TCO down for a long period of time including migration to normally incompatible systems. For most companies they are afraid to change their platforms because all their custom applications will not work on the new platform or will have a lot of problems. That is where Linux and Java come in. Linux as an OS runs on many different platforms x86, PPC, Sparc, ARM and more. Java can run on many different OSs. So if they wanted to switch to a different hardware platform then all their software will still work or if they don''t like linux any more then they can switch to an other OS without loosing their applications. That is the Beauty of Linux and Java it doesn''t put you in a Box of what you need to run and who you will need to pay to keep you business going.

    an00n 07/03/04 09:18:57 AM EDT

    Java is heavily used by the business world, not necessarily by hackers. When the business world started moving from Windows/UNIX to Linux, what do you think greased the wheels? Java. People realized that WebSphere and WebLogic worked just as well on Linux as on Windows/UNIX, for less cost. Do you really think business people would have moved if they had had to bear the significant cost of porting apps?

    adrians 07/03/04 09:17:15 AM EDT

    I followed the live webcast and I would have to disagree with Lawrence Lessig on his point. His premise that Java is not being adopted by the Linux community because it''s not OSS is not based on any figures and was one of the weakest stances in the debate (together with the Sun guy arguing against Open Source Java because it would make the VM not as stable as it is now). However, when I look around I see Linux and Java together everywhere! I personally use Java daily in the form of Tomcat and Eclipse. Actually, our company is deploying Java on Linux at all our customers. Most of the development team is also standardizing on Eclipse. So at least from where I''m standing at Linux and Java are quite happy together and being very productive too...

    As for releasing Java under OSS, I''m all for it. I only have to look at the Apache Jakarta community for an excellent example of how (Java) technology thrives under OSS

    Artem Yegorov 07/02/04 03:28:10 PM EDT

    I would like to comment that making Java open-source, task tremendous at core, needs to happen, as Java would much greatly benefit from a more free approach to contributing of the APIs and frameworks, than going through JCP. I say that, because I believe and this is solely my judgment, that JCP is heavily biased towards the evaluation of the contributions and graduation of such contribution to become a part of Java Core. It is biased by the fact of recognizing contribution from well established players (Apache, BEA, IBM and Sun itself) and there are a low percentage of other contributors, such that are not affiliated with any of the above mentioned groups. Such bias tends to worsen the Core APIs of Java with submissions that we are told to be leading edge technology and methodology where in practice such submission are impractical, heavy-weight and sometimes unusable. Take JSF for example and compare to more elegant approach like Spring or WebWork. Out of collections of JSR I have not seen a single one to do with better memory management, including more eloquent garbage collection and monitoring. I know there are people with ideas out there, but it is more than tough for them to get through the JCP approval process not being backed by a well-established open source player. It is a shame and that is why the open-source Java, though still with some approval, community driven though, will bring more benefit to the Open source and Java community.

    Mark Crocker 07/02/04 01:32:50 AM EDT

    Arg!!! A little extra research showed that despite the ESR letter pre-dating the original IBM letter, the trigger incident was earlier and, indeed, initiated by IBM, so, I stand corrected. Then again these sorts of things can be fairly ephemeral, so I won''t be too surprised to discover that there''s more to it than my meagre research revealed.

    Mark Crocker 07/02/04 01:23:38 AM EDT

    It''s funny that you give Rod Smith of IBM credit for starting this discussion on openning Java, when it was Eric S. Raymond''s ''Let Java Go'' open letter (http://www.catb.org/~esr/writings/let-java-go) that really got the ball rolling. Of course, the way your article is worded, you can say that it was small, grassroots or not taken seriously until the IBM letter, but I think that ESR at least deserves a mention in this article.