Slashdot Mirror


Beyond An Open Source Java

Karma Sucks writes "LinuxToday is featuring a intriguing article on why Sun should open source Java, as a stronger followup to the recent ESR saga that was reported here. The writer notes: 'Sun needs to do some radical things to improve its chances of survival, and all of them involve Open Source in some form or the other.' One thing the article fails to mention is the threat of Mono, which should be of special interest to Sun, with its vested interest in GNOME."

43 of 550 comments (clear)

  1. That would suck for java... by Anonymous Coward · · Score: 5, Insightful

    Incompatibility would run rampant. My java apps barely work for my phone as it is.

    1. Re:That would suck for java... by Anonymous Coward · · Score: 3, Insightful

      There's only so much JIT optimization you can do. But precompiling (like GCJ, but intrinsic to the VM) would provide greater opportunities for large scale full source tree optimizations.

      Well.. I think the potential for optimization is greater after linking, at runtime. Just imagine inlining library calls, for instance.

      The real advantage, however, is the jvm's access to real run-time performance data. Even if you waste 1% of the app's cpu-time on profiling and dynamic recompilation, you quickly make up for that by agressive optimization in the right places.

      It would be nice if virtual machines stored some kind of native images/dumps between sessions, though, to minimize those startup times..

    2. Re:That would suck for java... by 10101001+10101001 · · Score: 5, Insightful

      > Sun isn't going to Open source Java, it wont happen for the reason you mention. Incompatibility would ruin the cross-platform appeal of Java.

      Like how gcc being open source causes incompatibilities with different gcc ports? Or how the x86 arch being open ruins the ability to write for it?

      I really don't see how any of these arguments hold water except if you believe that somehow one company with proprietary control over a standard will do a better job than the open source community at writing to the spec.

      The fact is, the Java spec is free as far as I know, and there's nothing really preventing someone from writing their own implementation and porting it to several platforms. Of course, they can't call it Java (Java is trademarked, as use of a programming language), but they can just as easily do everything but call it Java and have or not have compatibility problems. The only thing that Sun open sourcing Java would do is cut out a lot of the work developing the libraries and such which make up the bulk of Java's classes. Sun still owns the trademark and could write a license to prevent anyone using the term Java except Sun (they could even come up with a specific trademarks to clarify degrees of Java-ness which are allowed to be used by people). Open source doesn't mean Free software. And maybe people aren't happy with that. I personally don't care, since Free software wouldn't ever call it Java (maybe they'd call it Java-like), and I firmly believe that the core useful parts of Java will be written by the open source community eventually which will negate a need for Sun to do anything (well, except keep the specs open).

      I just find it funny that the defense of keeping Java closed source is it's broken now, so having more people work on it will somehow make it worse. A company is like a bunch of cooks making one cake (or maybe two or three). The community at large is like a bunch of cooks make a bunch of cakes. If enough of the cooks get together, they can make a larger, better cake just like a company. But, there's a lot more cooks out there than there are in one company. And if what the community writes is utter crap, then no one uses it, and we'll stick to the old recipes. It's not like the open source community is a monopoly that can force you to use an inferior product. Only closed source setups work that way, thanks to things like forced bound upgrades from a single company.

      --
      Eurohacker European paranoia, gun rights, and h
    3. Re:That would suck for java... by bigsteve@dstc · · Score: 3, Insightful
      I disagree:
      • Open sourcing Java would not force Sun to accept additions to the standard codebase that would break compatibility. They get to choose what goes into Java software that they ship.
      • Open sourcing Java would probably reduce the tendency for incompatible open-source implementations. Since open-source implementors are not required to reimplement as much, there would be less opportunity for mistakes.
      • Open sourcing Java would encourage other vendors to open source their Java-based products. This exposure would in turn encourage them to smarten up their act. [Actually, Sun could even some up with a model that forced third-party vendors to open source any components that are critical to. For example, Sun could say that open sourcing is a prerequisite for a Sun endorsement of compatibility.]
      • Sun will still control the trademarks, and will still be able to say "you cannot call this XXX because it fails such-and-such compatibility test". [This assumes that they remove the barriers that make it hard for open source developers to access the compatibility tests.]
      • If Sun were to be a bit creative, they could do more to discourage incompatibility. For example, a Sun endorsed website for documenting known incompatibilities would be a great resource. It would also provide an incentive to developers to fix up their incompatible crap.
    4. Re: That would suck for java... by gidds · · Score: 3, Insightful
      Cached code sounds like a good idea, provided that the original bytecode is always available as the 'definitive' version. It's worth being aware of the issue, though.

      ...the java native interface. It is really ugly and very cumbersome...

      Some might think that's a Good Thing as it helps discourage native code unless it's absolutely vital :)

      --

      Ceterum censeo subscriptionem esse delendam.

  2. Open cool, but still keep distribution rights. by demonic-halo · · Score: 5, Insightful

    I think open sourcing it is ok, but they should do all the work on it internally and not let any 3rd party distribute their own Java.

    When you have a cross platform interpreter, you need to make sure there is consistency. For example, Microsoft JVM ruined it for alot of people since developers will forget to debug it on Suns JVM, causing huge incompatibility issues that they blamed on Sun.

  3. Re:Java, who needs it? by Pieroxy · · Score: 5, Insightful

    If you think Java is in the enterprise because it is portable, you are greatly mistaken. There are some stuff in Java that makes it a great tool for the job, and portability is only one of them: Portability, Reflection, RMI, Proxies, J2EE, ... And I did forget a lot in the process.

    Qt and GTK are not even languages, what the hell are you talking about? You are comparing an enterprise level language with a GUI library! Java is not Swing!

  4. Not sure this is what we need by SamiousHaze · · Score: 5, Insightful

    I'm not certain this is a move that should be made. All we need are 18 different 'forks' in the java tree like certain other open source projects. I can just see it now "No no, you need BobJavaVM-1.43.2.43 - it won't run with FastJava V 2"

    1. Re:Not sure this is what we need by jas79 · · Score: 4, Insightful

      Could you back that up with an real example?

      I haven't seen that happen with perl or python. So, I doubt it will happen with java.

    2. Re:Not sure this is what we need by alan_dershowitz · · Score: 3, Insightful

      Theoretically speaking:

      Tons of people bitch and moan about java being piss poor for application X or application Y. Right now, I'm looking at an ostensibly "Java" Oracle Forms 9i form that will only run on one JVM, Oracle's JVM. It's convenient for them that they had the money to license Java so they could make their own JVM, its more convenient for us that most people DON'T have that ability.

      Imagine for a moment that every company had the source to Java and the ability to hack the shit out of it to accelerate their own products. It already happened with both Oracle and Microsoft, which was wholly unrelated to the fact that the source to Java was closed. It becomes relevant to the argument at hand when you realize that they were two of the few companies who could embark on such a venture, simply because of prohibitive cost.

      It's possible the only reason this fragmentation hasn't happened right now is because there's no open source JVM that's realistically close to running everything that Sun's can.

      I'm simply playing devil's advocate here, although I do believe closed/open is not relevant to the fact that the MS implementation was incompatible. It was incompatible because they programmed it that way, irregardless of the fact that the source was available or not.

  5. The worst thing that could happen... by StandardCell · · Score: 5, Insightful

    ...is that Sun allows Java to wallow in limbo until its development becomes unsustainable and people start using other languages and development environments like .NET, and then make it open source because it became a black hole for them.

    I mean, Sun could still have a vested interest in an open source Java and still derive revenue from custom design services and support while displacing the Beast. It isn't even like the implementation is a trade secret. Heck, the Beast has developed Java bytecode interpreters in the past. But the Beast would love to displace Java with .NET as a universal development language. You can bet diamonds to dollars that Microsoft will never open source their version though.

    Hence, Sun has a great opportunity here. Will they see it?

    1. Re:The worst thing that could happen... by aled · · Score: 4, Insightful

      If you consider Rotor is open source the Java has the same level open source-ness and this whole post is dust. You can download Sun Java source code, not a crippled implementation.

      --

      "I think this line is mostly filler"
  6. Re:Java is ok by kfg · · Score: 3, Insightful

    Java is cool for uber-OO projects. . .

    Nah. Java is cool for run of the mill OO projects where everyone else is using Java too, because everyone else is using Java.

    If you want to look at something interesting check out Apple's Squeak, an implimentation of Smalltalk-80 where even the VM is written in open source Smalltalk.

    Squeak

    KFG

  7. No relief by aoteoroa · · Score: 5, Insightful
    From the article:
    The Open Source community would be overjoyed, and the Java user community would be relieved, if Sun were to guarantee the perpetually open nature of Java by Open Source-ing its implementations.
    I make a living writing custom browser based applications, and mostly use JSP/Servlets for the job. . . So I feel that I am part of the "Java user community" and as such I can tell you that I would feel no relief if Sun chose to open source Java.

    Microsoft effectively broke Java by extending it to allow the implimention of native windows widgets that wouldn't run cross platform and since Sun owns Java they were able to sue, and win. I think if Java were open source MS would be free to break it again. It's an old argument and one that we have heard over and over again but it has staying power, I believe, because it is true.
  8. Mono?? A threat to java?? by Capitis · · Score: 5, Insightful

    To borrow a phrase from John Stossel: Give me a break!

    While Mono is cool project and, like many developers, one I've been following since it's inception, I don't see it ever overtaking Java, or .Net for that matter. It's a simple matter of resources.

  9. Re:Java, who needs it? by AKAImBatman · · Score: 5, Insightful

    > > Which often benchmark faster than natively implemented code.
    >
    >You do realize that this is impossible, right?

    What makes you say that? In fact, the original poster is quite correct. The JVM *can* generate faster code. You know how? By doing runtime optimizations. Compilers have to optimize for what *might* be the best performance profile at runtime. Also, they can only compile for the lowest common processor. (e.g. A pentium II) The Hotspot Java VM can optimize based on how the code is currently being used, undo an optimization if it starts slowing things down, and use processor specific instructions! Natively compiled code just can't beat that.

  10. Laughable? by eidechse · · Score: 5, Insightful

    "Perl and Python are hardly competitors to Java, so warning Sun about Java's impending loss of market share to these two scripting languages is laughable."

    How so?

    The term "scripting language" doesn't have the name meaning it used to; especially where Perl and Python are concerned. They both get compiled to an intermediate form and executed...just like Java. The only difference (other than the internals of the runtime) is that the Java's development "model" is closely related to it's static typing; i.e., you manually compile your code into a binary before executing. Trying to discount Perl and Python by calling them scripting languages is silly. The real issue is what works as an enterprise development platform, not the "taxonomy" of the language. As far as platforms go, Python has got a pretty good thing in Zope/Plone etc. And both Perl and Python have libraries for damn near everything you'd want to do. J2EE may be more prevalent at the moment, but in terms of bang for buck Python and Perl present some interesting alternatives in the long term.

    1. Re:Laughable? by smallpaul · · Score: 3, Insightful

      1984: Anyone actually working in the IT industry today knows that PC clones are hardly a competitor to genuine IBM machines.

      1993: Anyone actually working in the IT industry today knows that IP is hardly a competitor to NetBIOS and IPX.

      1994: Anyone actually working in the IT industry today knows that Internet Email and the Web are hardly a competitor to Lotus Notes. (or you could use Compuserve)

      1998: Anyone actually working in the IT industry today knows that XML is hardly a competitor to CORBA.

      Now here we are in 2004: anyone actually working in the IT industry today knows that Perl and Python are hardly competitors to Java.

      I've learned over the years that it isn't worth arguing with these people. Just let the change wash over them. They'll never admit in 5 years that they were so short-sighted.

  11. What will happen by pope+nihil · · Score: 4, Insightful

    As soon as Sun GPL'd Java, it would start to diverge from Sun's commercial Java. Sun would not be able to incorporate changes made under the GPL into their corporate version. Sure, they could maintain their own "official" GPL version, but the dual license argument is complete rubbish. Java wouldn't die, but Sun would lose most or all control over it.

    1. Re:What will happen by k98sven · · Score: 3, Insightful

      As soon as Sun GPL'd Java, it would start to diverge from Sun's commercial Java.

      Why?
      I don't see that happening with C, C++, Perl, Python or any of the zillion other programming languages which have open-source implementations.

      There's a spec out there, and Sun owns the trademark on "Java". Only compliant implementations can use it. If it doesn't comply, it's not java, it's a java-like language. And few will use it.

      However, it is true that Sun may lose some degree of control, but only by the same way they're already losing control, by not developing it in the direction people need.

      Few people want to fork stuff just for the heck of it.. but if Sun doesn't want to go in the same direction as their developers, they're going to lose control either way.

    2. Re:What will happen by Hektor_Troy · · Score: 3, Insightful
      I don't see that happening with C, C++
      Really? Funny, because while I'm only still taking classes in C and C++, I keep running into all kinds of idiotic things.

      "Oh, to finish this program, you need the Borland C++ compiler, because it uses some Borland-only calls"

      "Oh, to finish this program, you need the Microsoft C++ compiler, because it uses some Microsoft-only calls"

      "Oh, to finish this program, you need to port it to your favorite C compiler, because it uses standard calls that no compiler implement all off."

      What the fuck? And this is just in classes??? I'm scared to find out what it's like in the "real world".
      --
      We do not live in the 21st century. We live in the 20 second century.
    3. Re:What will happen by prockcore · · Score: 5, Insightful

      This the first time I've ever seen someone blame a language specification for allowing the use of libraries.

      FYI, I can write a Java app that requires MS DLLs as well. It's not the fault of the language.

  12. Grrrr by BeerMilkshake · · Score: 4, Insightful

    [J2EE] has replaced CORBA as the way to go for
    large, distributed enterprise apps

    Has J2EE replaced CORBA in those scenarios where either the client or server is NOT written in Java?

    One of the facts of life in the enterprise is that it is heterogeneous in terms of platforms, operating systems and (maybe) network technologies. Neither J2EE nor .NET is satisfactory in this environment.

  13. RTFA by Pieroxy · · Score: 3, Insightful

    The article does mention that the only visible part of the J2EE iceberg (visible to the decision-makers, not the geeks) is webservers such as Websphere and Weblogic. It doesn't say anything else. It does mention open-source implementations.

    What the author is talking about is a lack of the right communication from Sun on this matter. If Sun continue to advertise only WebSphere and WebLogic, they set the visible price very high.

  14. Re:Java, who needs it? by nadamsieee · · Score: 3, Insightful

    > Also, they can only compile for the lowest common processor. (e.g. A pentium II)

    That may be true for traditional proprietary software, but NOT for F/OS Software. Witness Gentoo; I compile everything for my computer's specific processor. And surely you don't believe that the Hotspot Java VM does its optimizations 'for free'! Every runtime optimization check introduces a performance hit.

  15. Haven't we heard this once before? by Lamia · · Score: 3, Insightful

    Hmmm - didn't ESR inspire Netscape to following a similar path to "salvation" back in '98? (Netscape)
    Hopefully (for Sun!) history won't fall into its old habit of repeating itself.

  16. Re:Dumb question by aled · · Score: 4, Insightful

    Last I read is that Sun doesn't have a problem with open source implementations of Java, is just that Sun isn't doing one.

    --

    "I think this line is mostly filler"
  17. What about IBM Clones? That was successful... by i)ave · · Score: 3, Insightful

    IBM is the first example that comes to mind of a company that successfully built a business model around opensource. I'm specifically referring to hardware and how IBM freely licensed the IBM architecture so that any company could manufacture and sell their own, competing, IBM Clone PCs. Perhaps you will remember the early '80's when Apple had all the market share, followed closely by Commodore and the IBM PC was a fledgling no company was worried about. What happened? They 'opensourced' their hardware architecture which Apple and Commodore refused to do. Within a matter of years Apple and Commodore were suddenly competing not just against IBM, but against scores of rival computer manufacturers. What was the end result? IBM-compatible PCs (clones) were far less expensive, parts were plentiful and easy to find, and all the software developers migrated towards DOS because that's where the market was... once that happened, most of the available software was also IBM PC-compatible which just further encouraged people to buy IBM Clones. Had Apple and Commodore been less stingy with their proprietary hardware technology, things could have played out very differently and today everyone might have an Apple and Microsoft might not even be around. But you might ask, "how is the free licensing that IBM implemented, open source?" It was open source because manufacturers were and still are free to propose and develop hardware standards designed to further improve the IBM Clone architecture and they don't need IBM's permission to do it, they need only to get approval from the various standards bodies. If this is not a clear example of how open-source has worked as a successful business model, then I don't know what is. Rather than fight over the market-share that Apple and Commodore owned, IBM just created an entirely new market -- far larger than the one it replaced. So what if IBM had to compete against their own technology they gave away to other Clone manufacturers? Which would you prefer: 10% of 50 million units, or 100% of 1 million units?

    --
    -- I'd give my right arm to be ambidextrous
    1. Re:What about IBM Clones? That was successful... by k98sven · · Score: 4, Insightful

      You have no idea what you're talking about.

      The IBM PC was a hit from the start. Apple never had "all the market share" outside of the home computer market.

      Nor did IBM ever license their PC architecture. The PC was built mostly on off-the-shelf hardware. Clone manufacturers just reverse-engineered the BIOS.

      Later, IBM tried to regain a proprietary hold over the PC market by putting a bunch of non-standard stuff in the PS/2, like the Microchannel architecture, which never took off because none of the clone manufacturers bought into it.

      There can be no doubt that IBM wanted the total market control.. indeed, they've been playing that game for over 30 years in the Mainframe market.

  18. Re:Java is ok by cbiffle · · Score: 5, Insightful

    I'm only replying lest the parent might be modded up.

    As a professional Java developer who works primarily in Eclipse, Java is not your problem here.

    Are you using a legacy app based around AWT? Then your GUI will most likely be annoyingly limited (with a couple of exceptions on MacOS X).

    Are you using a GUI app using the Swing toolkit? Okay, yes, that's going to be slow -- I'll give you that. But that's similar to saying "Linux is ugly! Just look at (GTK|Qt|Tk|whatever)!"

    Seriously, I'm tired of reading this drech on Slashdot. A properly-implemented Swing is reasonably fast (see MacOS X for an example), but unfortunately the Windows implementation isn't one. Before slamming the language, however, try changing toolkits -- I recommend SWT, as used in Eclipse.

  19. Re:Java is ok by Anonymous Coward · · Score: 3, Insightful

    > It is still to damn slow

    My god, what sort of equipment are you running Java on, an abacus?

    No, Java probably will not be used in the next uber-doom type progam, but for everyday usage type programs on fairly recent computers (built within the last couple of years) it's perfectly fine.

    I'm getting the impression that there are a lot of really POOR programmers out who have no idea how to make a program run fast and use C or C++ as a crutch.

    I also get the feeling that there are a lot of people out there who really haven't even tried a real Java application and just continually regurgitate the MS line.

  20. Java by rshimizu12 · · Score: 3, Insightful

    This guy must be a MS partner.........Most of the .NET development is taking place primarilly in Windows only shops. Also the great majority of .NET development is VB .NET. After seeing how Microsft corrupted the JVM and developed J++ it's hard to see how moving Java to pure open source will help. As for the desktop .NET is only strong because because it has the propietary features to lock people in.

  21. Open Source Java by ajs318 · · Score: 4, Insightful

    While Java stays Sun's closed-source product, Sun retains control over it. Releasing it open-source would mean relinquishing that control forever. Imagine, if you will, the overthrow of an essentially benevolent dictator followed by a less desirable character seizing power.

    The questions Sun needs to ask itself are (1) whether or not Java is ready for that -- or is it more likely that differing implementations would lead to fragmentation, and thus nullify the whole point of Java?; and (2) if Java is ready to go open-source {and I personally believe it is}, what would be the best licence to ensure against fragmentation whilst not putting off purists?

    All these things being said, Java is only a programming language -- a means to an end. Programming languages come and go. There is no reason why another contender should not arise to solve the same problems for which Java was invented, and eventually displace Java. Mono may be that, of course. It is just as likely that something totally new could arrive on the scene and change the whole picture.

    --
    Je fume. Tu fumes. Nous fûmes!
  22. C#, Java & GNOME by fantastic+max · · Score: 3, Insightful

    I don't understand why Sun is, on the one hand, so active in and dedicated to the GNOME desktop, whereas on the other hand, they're not doing a single thing about Mono becoming an important part of the desktop, pushing Java back even further.

    Face it: Sun, one of the head developers of GNOME, is losing the fight of Java versus C#, which is the official language from GNOME (Linux)'s biggest enemy Microsoft. Where's the logic? I mean, if Java loses even *this* battle, then how are they ever going to keep any significant marketshare?

    So yes, Sun should do something.

  23. Re:Java, who needs it? by AKAImBatman · · Score: 4, Insightful

    No, it doesn't. The second piece of code will not run on a 386 like you said it must.


    Of course it won't! That's the point. The Hotspot compiler will generate the second piece of code because it notices you're using a Pentium Pro. If the JVM was running on a 386, it would generate the first bit of code, just like the C compiler.


    Also, GNU GCC compiles code for processors like i686 that still executes on i386 by not using the i686-only instructions.


    As much as I wish they did, not all OSes use ELF binaries. Besides, generating binaries for multiple processors creates a great deal of bloat in the binaries. Not to mention that the JVM will be able to optimize for future processers (when they come out) while the GCC binaries will only be optimized through the current processor.

  24. Re:Java, who needs it?/Bytecode vs. native code by sploxx · · Score: 4, Insightful

    Well, you're right, but there tools that do profiling for C/C++. This thread should rather be named "(JIT) Bytecode vs native code"
    Java".

    The front-end languages C++ or java don't really do much about the perfomance (except that you can manually optimize things you can't do in java because of missing pointers etc.) (*)

    IMHO, java bytecode suffers from the following things (and so do the users of java programs) - [they are the reasons,I think, why all java programs I've seen so far (and all the not-for-java-crafted benchmarks) are running considerably slower than C/C++]:

    Technical:
    - Java bytecode is low level enough to lose certain optimizations (JITs have to apply decompilation techniques) which you can do in C/C++. You can of course compile Java natively (e.g. with gcj), yes. But then, you lose portability.

    - Java bytecode is not low-level enough that you can take advantage of the features of the particular hardware. Java's ints are 32 bit. What if you run your numerical java code on 64 bit machines?

    Political:
    - The java bytecode format is so specific that it is impossible or rather hard (there was once a java backend for egcs, admitted) to get other languages like C/C++ to run on it. Why does one have to chose the platform java with the language java? I don't know .NET, but from what I heard, multiple frontends for arbitrary languages are possible.

    I'd like to have a VM for C++ *and* Java. That would surely rock and end some of the flamewars.

    (*)- The often stated security argument (java has no pointers and is therefore inherently more secure than C++) would fall with C++ on a VM.

  25. What a dumb article by Decaff · · Score: 5, Insightful

    Its full of contradictions and silly mistakes.

    J2EE is small and easy, not large and expensive. Anyone can build JSP pages or use Servlets on a free but high-quality App server like Tomcat - this may not involve Enterprise Java Beans (the least used aspect of J2EE), but its still J2EE and it costs nothing.

    How can .Net be a threat when Microsoft is struggling (making a loss!) on the server side? Unless the Mono folks unwisely give Microsoft an escape route, the eventual rise of Linux on the desktop will squash .Net flat. This rise is starting: I develop websites for international use. If I deploy anything that requires Microsoft on the client (as do .Net apps), I soon get enough complaints to convince me otherwise!

    Why does Java need to be Open Source to ride the Linux revolution? High-quality Java VMs are ready for Linux.

    Java is the most widely requested language for development, and its use is still rapidly expanding. Sun has nothing to fear.

  26. Re:The complexity problem by Decaff · · Score: 4, Insightful

    There is now a very effective non-proprietary persistence solution - Java Data Objects (JDO). This typically requires no more than a couple of supporting files in each application no matter how many classes you wish to store. Its far more powerful than EJB, with a portable query language and inheritance. There are many high-quality implementations of the javax.jdo.*
    classes.

  27. Re: Biggest threat is Microsoft by gidds · · Score: 5, Insightful
    they would have to release the changes to the community which would keep it from being Windows only

    Doesn't follow. Open source or not, it would be trivial for them to use some feature which is only available on Windows. Sun can have all the source code they want, but if it can't run on other platforms (without effectively porting chunks of Windows too), then they're stuffed.

    Open Source is wonderful for apps with a known interface. But Java isn't an app; it's a platform. One of its greatest advantages is its platform neutrality. While having a single company like Sun in charge of it may prevent Joe Bloggs from adding his whizzy new feature, it also prevents M$ from doing the same, which IMO is far more important. I think Sun have steered a fine line between locking Java up so tightly that no-one feels safe using, and opening it up so much that no-one can choose which of the multiple subtly-incompatible versions to use.

    --

    Ceterum censeo subscriptionem esse delendam.

  28. who cares of standards? by Arioch_BDV · · Score: 4, Insightful

    Take a look at .NET
    IT has open ECMA specification - and Microsoft made a great P on that.

    But the real programs will be made upon MS .NET with all it's propietary extensions to the standard. The standard itself is gonne mean nothing.

    Projects like www.DotGNU.org understands it well, so they are running behind (and trying to chase) the very MS libraries, not only the standards.
    And Microsoft said that it is their strategy - add new technologies so fast, that competitors have no time to invent their own one.

  29. Opensource is not the all answer by ducomputergeek · · Score: 5, Insightful
    There are a few in the Opensource community that would love all software to roam "free" in all sense of the word, but I for one do not think that Opensource is the answer to every problem. Java is one of those tools that I fail to see what the beneift would be, hell it could be even worse if it went OSS.

    Why? Well remember JVM and how Microsoft corrupted the compatiablity? Java's goal is to be cross platform and to do so means there needs to be a centralized development effort. If suddenly there are 50 versions of J2EE on the market, each with its unquie traits, which do I run? How do I know that the app I program will work on the others? If it doesn't run on everything, hasn't the point of Java been defeated?

    I once worked for a company that was looking to port some of its Solaris & AIX Applications to Linux, but 3 months into the project, the question became what distros to support. They tried porting their application with some modifications. Got it to run fine on RedHat 5.x (it was a while ago), but then it took some playing around to work with SuSE and we never did get it to compile on Slackware. When they said they planned to support RedHat default only, meaning if system admins were using a tweaked box or kernal, we would not offer support. Needless to say, potential clients scoffed at the idea and after 6 months they decided that the Linux Market wasn't worth the hassle until some standards had emerged. This is why a lot of developers won't port to linux, especially desktop applications: too many variations.

    I see the same potential of Java, to become slpit into so many forks, that it defeats the purpose in the first place.

    I like opensource applications, but I don't think that Opensource is always the answer. Another good example is a good friend that is developing a support ticket application for the company he works for. I asked him, "Isn't there several GPL'd apps outhere that could installed within a couple hours?" He responded of course, but he put it this way: "I like to use my own code and not other peoples. Its a lot less messy that way." and I see his point.

    IF it wasn't for opensource, I would have never learned how to program in PHP, PERL, and various SQL databases, it was a great learning tool, but like every tool, there is the correct tool for the job. I say this as I switched from Linux to Macintosh almost two years ago now and I am willing to pay for the luxury of having everything work. Just like we now pay for managed instead of self-managed servers for our business. There is only 3 of us and we now have enough business that its costing us more to run our own servers than to pay a little extra for managed services where the keep up with the updates and such.

    All I am saying is that projects have goals. Sometimes Opensource meets those goals, but its not a cure all. The beauty is that we have the choice of using Opensource or to use a propritary solution.

    --
    "The problem with socialism is eventually you run out of other people's money" - Thatcher.
  30. Re:Dumb question by Pieroxy · · Score: 4, Insightful

    Some benefits:
    1. Tomorrow, Sun might decide to charge for a JVM. Then you will be screwed.
    2. They might decide to drop Java, closing all future to all your beautiful programs.
    3. What if Sun decide not to support your favorite platform? (Say BeOS, or Linux on PS/2, or HP48SX...)

    With open-source, this is less likely to happen - though still possible. We can imagine for Java that we will always have some geeks ready to give a hand even if Sun dropped the whole thing.

  31. Re:Dumb question by __past__ · · Score: 4, Insightful
    1. Tomorrow, Sun might decide to charge for a JVM. Then you will be screwed.
    Or you can use another JVM instead and live happily ever after.
    2. They might decide to drop Java, closing all future to all your beautiful programs.
    Even if they would use their Java trademark to enforce that no other JVM would be able to use that name when they decide to stop the JCP and development of the Sun JVM, people could just call the other implementations something else, use existing programms with that, and create a new process to further the development of the language.
    3. What if Sun decide not to support your favorite platform? (Say BeOS, or Linux on PS/2, or HP48SX...)
    Then you use an alternative JVM that does support it, or if there isn't any, port one of them yourself. Which is even possible with the Sun JVM - this is exactly what the FreeBSD Java project did.

    Sun has copyrights on one of many JVMs, which is closed source, and they control the name "Java" by holding the trademark. This is all, and this is not enough to effectively control the use of the language, even if they wanted to screw customers.