Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror
×
Java Programming

Does an Open Java Really Matter? 766

snydeq writes "Fatal Exception's Neil McAllister questions the relevance of the recent opening of Java given the wealth of options open source developers enjoy today. Sure, as the first full-blooded Java implementation available under a 100 percent Free Software license, RedHat's IcedTea pushes aside open source objections to developing in Java. Yet, McAllister asks, if Java really were released today, brand-new, would it be a tool you'd choose? 'The problem, as I see it, is twofold,' he writes. 'First, as the Java platform has matured, it has become incredibly complex. Today it's possible to do anything with Java, but no one developer can do everything — there simply aren't enough hours in the day to learn it all. Second, and most important, even as Java has stretched outward to embrace more concepts and technologies — adding APIs and language features as it goes — newer, more lightweight tools have appeared that do most of what Java aims to do. And they often do it better.'" Since Java itself never mattered except to sell books, I still don't see why opening it matters.
This discussion has been archived. No new comments can be posted.

Does an Open Java Really Matter?

Comments Filter:
  • by Anonymous Coward on Thursday June 26, 2008 @11:50AM (#23951009)

    Some would say the same about Slashdot.

    • by fm6 ( 162816 ) on Thursday June 26, 2008 @12:16PM (#23951511) Homepage Journal

      Yeah, that was a really lame comment. Does Rob think the programming world consists of Perl hackers like him? Thousands of programmers make a living writing Java code.

      BTW Rob, when is the new browsing system going to handle scores correctly? I just started writing a response to a Score 0 AC post, something I never do intentionally. Maybe if you rewrote Slashdot in Java...

      But here's why opening Java matters. When people talk about "opening Java" they really mean "opening Sun's implementation of Java". There have always been open-source implementations of Java, but they've had a hard time keeping up with the latest spec. So if you're distributing open-source software that depends on Java, you really want Sun's Java implementation in the bundle.

      • by Anonymous Coward on Thursday June 26, 2008 @12:46PM (#23951973)

        No Multiple Inheritance. Slower than a 486. Lame.

        • by ttfkam ( 37064 ) on Thursday June 26, 2008 @01:30PM (#23953145) Homepage Journal

          Ignoring the parent troll for a moment, can someone please show an example of where multiple implementation inheritance is superior (not just equivalent) to multiple interfaces and the composition design pattern?

          I've really tried to find a case, but ultimately fail. I even tend to agree with Gosling that abstract classes were a bad idea. On the other hand, I can name innumerable cases where MI causes more problems than it solves.

          • by Anonymous Coward on Thursday June 26, 2008 @01:42PM (#23953491)
            I think Multiple Inheritance's primary use is for contriving strange interview questions. :)
          • Re: (Score:3, Interesting)

            by Dolda2000 ( 759023 )

            Ignoring the parent troll for a moment, can someone please show an example of where multiple implementation inheritance is superior (not just equivalent) to multiple interfaces and the composition design pattern?

            If you're going to say that, you might as well go as far as saying that inheritance itself has no merit when Java has its interfaces instead. And I'd argue that you'd have a point.

            After all, inheritance is just a convenient way of taking functions from some other implementation of an interface and making your own implementation use those same functions. In that regard multiple inheritance makes sense, since you'd be able to pull in code from all over the place easily. But, one might argue that it should

            • Interesting point (Score:5, Insightful)

              by ttfkam ( 37064 ) on Thursday June 26, 2008 @02:29PM (#23954705) Homepage Journal

              And if code bases never changed, I might agree with you. However, what happens when a superclass is changed, e.g., a new method is added? Much of the time, nothing. But what happens with MI when one superclass adds a method that already exists by name in another superclass? You end up in exactly the same solution as with SI; you use composition to arbitrate the ambiguity.

              When interfaces collide, there is no issue. If a method is added to a superclass in single-inheritance, it rarely affects the subclass unless that subclass is too tightly coupled with private variables (the implementation) of the superclass; you'd be hosed with any change in the superclass.

              MI may result in slightly fewer lines of code, but it makes for code that's harder to understand and more brittle in the long run. In short, it's little more than syntactic sugar with no programmatic benefits but several drawbacks with regard to complexity.

          • by fm6 ( 162816 ) on Thursday June 26, 2008 @07:05PM (#23960025) Homepage Journal

            You're asking for an objective answer to a subjective question. What's "superior" in this context? A Java person would say code that easy to debug and maintain. A C++ person would say code that's expressive and concise. Both are right — within their own circle of peers.

      • by sir_jimmy ( 848417 ) on Thursday June 26, 2008 @01:16PM (#23952773)
        I am the most senior programmer in an up-and-coming destributed-media company. A big part of what I do is (*read rapid*) development of tools for analysis of network topology. Java is a central part of that. Given the rescent lameness of what M$ deems as their state-of-the-art end-user OS, I want my tools to work in whatever play ground I deem worthy. I want my tools to work everywhere, and java is the right tool for the job.
      • Maybe if you rewrote Slashdot in Java...

        ... then Slashdot could finally get slashdotted?

        ** ducks **

  • by Anonymous Coward on Thursday June 26, 2008 @11:52AM (#23951039)

    "Since Java itself never mattered except to sell books, I still don't see why opening it matters."

    What an ignorant and irresponsible editorial comment. Care to substantiate that claim, or even clarify what it means for a language to "matter?"

    • by Kickersny.com ( 913902 ) <kickers.gmail@com> on Thursday June 26, 2008 @11:54AM (#23951081) Homepage

      I can't believe that the editor put that comment. I'm not a huge fan of Java, but that's incredibly ignorant.

      Suggested tag: flamebait

      • Re: (Score:3, Funny)

        by Anonymous Coward

        What do you expect from someone that still uses perl?

        • Re: (Score:3, Insightful)

          by Anonymous Coward

          I really don't understand the "cool" factor in claiming bullshit that hasn't happened in years. Sure if you used Java in 2001 it was slow, unresponsive, and annoying. This is especially true when Java programmers didn't write very Thread friendly code on an event (such as clicking a button). Anyway has no one ever run Java in a server environment? You know there is more to Java than desktop apps and those run very well. As a matter of fact, many websites run off of Tomcat without you knowing it (which is a

    • by truthsearch ( 249536 ) on Thursday June 26, 2008 @11:58AM (#23951145) Homepage Journal

      I'm pretty sure he was being facetious. Everyone knows Java is in heavy use in various industries. Lighten up.

      • by gbjbaanb ( 229885 ) on Thursday June 26, 2008 @12:04PM (#23951277)

        Everyone knows Java is in heavy use in various industries

        particularly Publishing and eCommerce :-)

        • by dintech ( 998802 ) on Thursday June 26, 2008 @01:43PM (#23953523)
          I know it's a joke but this is a good place to add this comment.

          My experience is in investment banking and every single bank I've ever heard of write the majority of their buisiness-critical server-side apps in Java. Hedge funds too. Any place where you want to quickly develop large server-side in-house apps, you can do that much more reliably with Java and you have access to a huge talent pool of developers. The reality is that the systems that drive the economy are written in Java. Some trivial MP3 catalog GUI, bulletin boards or throwaway websites don't really turn the wheels of capitalism I'm afraid.

          It seems Taco has basically doesn't understand how I.T. in the real world actually works. My advice to him is to quit whining and accept the ideological war against Java has already been lost years and years ago. Java is huge, deal with it. That's a reality that won't go away just because you post a throw away editorial comment on Slashdot.
          • Re: (Score:3, Informative)

            by gbjbaanb ( 229885 )

            the joke, really, is that Java is used to power the systems in a lot of eCommerce sites (think eBay or Amazon) and Publishing (if you consider some of the big online media sites to be publishing).

            So is it a joke, or is it a serious comment, which is it? Is it true, or is it false? :-)

    • by Rary ( 566291 ) on Thursday June 26, 2008 @12:05PM (#23951297)

      "Since Java itself never mattered except to sell books, I still don't see why opening it matters."

      He must be referring to Amazon's use of Java.

    • by Laser Lou ( 230648 ) on Thursday June 26, 2008 @12:26PM (#23951659)

      Java isn't just for selling books. Look at how many Java libraries are around.

  • Yes. (Score:4, Informative)

    by MadMidnightBomber ( 894759 ) on Thursday June 26, 2008 @11:53AM (#23951055)
    Really.

    How many times have you been screwed over by a vendor who thinks they know best? (Symantec / L0phtcrack anyone?)
  • by Chemisor ( 97276 ) on Thursday June 26, 2008 @11:53AM (#23951069)

    I find it funny that we have statements like "Java never mattered except to sell books", while I distinctly remember hordes of posters on this very site only a few years ago, rabidly arguing that Java is the best thing ever and that nobody will be using anything but Java in the future. Now, we have hordes of Ruby, Python, and what-not advocates saying the same things. I guess it's their turn. I'll just keep my C++, thank you very much, which nobody advocates these days, and everyone says is obsolete, too complicated, and inherently broken. Go ahead, mod me as flamebait! I'm used to it.

    • by scubamage ( 727538 ) on Thursday June 26, 2008 @12:01PM (#23951209)
      I've used both C++ and Java, I like them both. C++ just has a lot more pitfalls that a savvy programmer knows to avoid, whereas a novice will get swallowed into the cold oblivion of core dump and seg-fault hell.
      But, its also goddamned powerful.
    • by Anonymous Coward on Thursday June 26, 2008 @12:01PM (#23951221)

      The problem with the whole C++ is "obsolete, too complicated, and inherently broken" and isn't advocated these days is that it remains the language of choice for real complex scientific and engineering challenges, especially time-critical/real-time systems, which the newer languages typically don't address well.

  • by Presto Vivace ( 882157 ) <ammarshall@vivaldi.net> on Thursday June 26, 2008 @11:54AM (#23951075) Homepage Journal
    Since Java itself never mattered except to sell books, I still don't see why opening it matters. For a system that does not matter except to sell books, it sure has a large install base.
  • Use debian? (Score:5, Informative)

    by merreborn ( 853723 ) on Thursday June 26, 2008 @11:54AM (#23951087) Journal

    If you've ever wanted to run a Java app on a debian box, you know why this matters.

    The strictly FOSS distros have historically refused to include a Java package due to its non-Free license. There's some really good Java software out there, and without a pre-built java package, it was just that much harder to access them.

    • Re:Use debian? (Score:5, Interesting)

      by InlawBiker ( 1124825 ) on Thursday June 26, 2008 @12:03PM (#23951263)

      That is a good point. LAMP became a one-checkbox install because it's FOSS. LAMJ could easily have been. Except it's not a very catchy acronym.

      Personally I'd like to see LAPJ: Linux, Apache, Postgres, Java.

      Anyway, love it or hate it, Java has reached the critical mass to be around for a long time.

  • by ShieldW0lf ( 601553 ) on Thursday June 26, 2008 @11:56AM (#23951117) Journal
    I guess OpenOffice.org doesn't matter either then...
  • by OpenSourced ( 323149 ) on Thursday June 26, 2008 @11:59AM (#23951157) Journal

    if Java really were released today, brand-new, would it be a tool you'd choose

    If Windows were released today, brand-new, would it be a tool you'd choose?

    Who cares. It's not today that it's released, and the importance of availability, mind-share and already developed applications around it, gives it a clear importance, even if you have better hammers for your particular nail.

  • by patio11 ( 857072 ) on Thursday June 26, 2008 @12:01PM (#23951223)

    >>
    Since Java itself never mattered except to sell books, I still don't see why opening it matters.
    >>

    The day job could buy an awful lot of books with the $X0 million worth of Big Freaking Enterprise Apps we have written in (mostly) Java. Its like any other tool: there are some places where it makes excellent sense, some where it does not, and I have my own personal tastes for when I would use it or not. (Cards on the table: I do proprietary desktop Java development in my spare time and BFEwebA at the day job, but have been mixing in a bit of Rails programming lately.)

    At the end of the day, what matters is "Does Java help us make our customers happy?" It does. Despite how skull-crushingly boring writing CRUD apps can be, for our customers having the things available and working means the difference kissing their kids at 6 PM or being stuck at the office at 2 AM wondering if they will still have a job in 5 hours.

    So how does opening Java matter? Well, even in an extraordinarily mature platform, you'll sometimes find weird, off the wall, how the heck did that happen issues with particular combinations of software. Enterprise Computing = combinitorially explosive numbers of possible adverse reactions. We've got at least 150 packages in the system, many of which have to interoperate with code which has not seen the light of day since the mid-90s.

    You'd think the odds of actually having to touch stuff deep in the bowels of the infrastructure are pretty low, but believe it or not we have our own little fork of, e.g, Tomcat 4.1 in production use *to this day* to get around a particular classloader issue that got fixed in later releases. (We can't upgrade that particular customer at the moment. Its a long story and if you've ever worked in industry you've heard the basic gist before.) Java being open means there is one less place for issues to be totally inaccessible should we need to work around them.

  • by jfbilodeau ( 931293 ) on Thursday June 26, 2008 @12:02PM (#23951241) Homepage

    Sun is loosing ground to .NET, so they have to regain developer. I have to admit that Open Java is very appealing to me, since I feel that the language/platform does have something unique to offer that is not available anywhere else.

    Furthermore, I don't care what anyone says about .NET/Mono. It is a closed Microsoft technology that Mono will perpetually play catch-up to. It cannot replace what (Open) Java has to offer.

  • by Just Some Guy ( 3352 ) <kirk+slashdot@strauser.com> on Thursday June 26, 2008 @12:02PM (#23951245) Homepage Journal

    We're a Python shop. It does everything Java does that we need it to do, but is actually fun to write. If Python disappeared tomorrow, though, Java would be a no-brainer. It's cross-platform and wouldn't leave us beholden to the good wishes of Redmond.

  • by CarbonShell ( 1313583 ) on Thursday June 26, 2008 @12:03PM (#23951259)
    Like it or not, Java is the no.1 language, at least claimed by an article referenced here: http://ask.slashdot.org/article.pl?sid=08/05/29/163253 [slashdot.org] The last line of the article pretty much gives an indication of the quality of the authors knowledge.
  • by david.emery ( 127135 ) on Thursday June 26, 2008 @12:04PM (#23951287)

    So, depending on who you talk to...
        (C | C++ | Java) is the ultimate programming language.

    Now we're being told that compiled languages are passe' and all you need is
        (Perl | Python | AJAX).

    In the meantime, the -art- and -science- of programming language design seems to have withered away due to lack of interest from the developer community.

    From what I've seen over the last 30 years:
        1. Programing Languages -DO- make a difference in both individual productivity and organizational effectiveness. And the latter is -much more important- than the former for anything bigger than a breadbox.

        2. Management doesn't believe #1. In fact, management doesn't believe in software engineering. Instead, management wants to throw bodies at problems to make impossible schedules, with little concern for quality of the product. At best, managers throw process (and SEI CMM/CMM-I) at the hoards of programmers, believing that process is a substitute for
            (a) developer talent
            (b) product quality

    So I guess ( 1 & 2) together explain the demise of programming language design. And all we can pray for is increases in second-order tools such as debuggers and, if we're really good, tools like static analyzers, to make up for the sh*tty set of current (popular) programming languages. And as end users, bugs and security holes will continue to be chronic results...

    dave

    • by GeckoX ( 259575 ) on Thursday June 26, 2008 @12:22PM (#23951603)

      I've got two major problems with your post.

      1) You list AJAX along with Pearl and Python in a list to be compared against C, C++ and Java. Here's a hint:

      Pick the item from the list that doesn't belong:
      C
      C++
      Java
      Pearl
      Python
      AJAX

      2) Er, shitty set of current (popular) programming languages? We have NEVER had such a choice in programming languages as we do now. There are a LOT of popular programming languages right now. C, C++, C#, VB, VB.Net, Pearl, Python, Java, Javascript, Ruby, Eiffel, Tcl for starters.

      Care to go back 15 years and provide me with the list of better, popular languages at that time?

      Don't think you're flaming, but I also don't think you have a clue as to what you're talking about.

      • by Anonymous Coward on Thursday June 26, 2008 @12:35PM (#23951789)

        Pearl. All the other terms are correctly spelled?

      • Re: (Score:3, Interesting)

        by david.emery ( 127135 )

        I claim that Ada83 is better than C, Ada95 and Eiffel are better than C++ and Ada05 is better than Java or C#. But that's just my opinion.

        What is very clear is that the design philosophies of Ada (focusing on 'programming in the large') or Eiffel (focusing on 'correctness by contract conformance') have been lost. Both languages, along with others (dating back to COBOL) is on readability over writeability. (Programs get read much more often than they get written.) Python in some respects is the e

  • by Sloppy ( 14984 ) on Thursday June 26, 2008 @12:08PM (#23951369) Homepage Journal
    "Slow JVMs. More syntax than C. Lame." -- CmdrTaco
  • Incredibly complex (Score:5, Insightful)

    by mypalmike ( 454265 ) on Thursday June 26, 2008 @12:12PM (#23951433) Homepage

    First, as the Java platform has matured, it has become incredibly complex. Today it's possible to do anything with Java, but no one developer can do everything

    What developer has to do everything? We use Java to run our systems without using all the complex frameworks that you seem to be referring to. It does the job. Just because people have developed over-engineered frameworks with a language doesn't detract from the the value of that language.

  • by J'rathken ( 398269 ) on Thursday June 26, 2008 @12:14PM (#23951467) Homepage

    "Since Java itself never mattered except to sell books..."

    Wow...that has to be one of the most idiotic statements I've ever read from one of you guys.

    I'm no Java evangelist, but saying Java itself never mattered is like saying C (or even C++) never mattered - it just smacks of total ignorance.

    Java has had a HUGE impact on software development, especially in the enterprise. I won't say it's all been great...but it's certainly made a difference in a lot of areas.

    If the language really never matter, there would not be such a large community of developers using Java, and Microsoft would not have bothered to change their entire development platform to be so much like it (i.e. C#/CLR/.NET).

    I'd thought you Slashdot guys were smarter than this. I guess I was wrong.

  • blarg (Score:3, Insightful)

    by DerWulf ( 782458 ) on Thursday June 26, 2008 @12:14PM (#23951471)
    > Since Java itself never mattered except to sell books, I still don't see why opening it matters. This is exactly what smileys are for! Anyways, I don't know what's up with all the Java hate seeing how most OSS uses it. Ruby doesn't have unicode support for christ sake! Flame that if you really need to ...
  • by icknay ( 96963 ) on Thursday June 26, 2008 @12:20PM (#23951571)

    Java has its problems, but it's actually a great stable platform. I think people carp about Java's flaws because it is so popular, taking shots at the leader. In reality, Java is a huge and boring but effective ecosystem if you want to deliver a piece of software and have it just work.

    It's not sexy, but jeez on linux, windows, and Mac, I've built java code and moved the .jars all all over the place, and darned if it doesn't do what it's supposed to, like an old truck that just works carts around all sorts of work.

    With Java being open, we all benefit from its increased spread as an open and reliable platform -- like C. Depending on Java looked a more iffy when it was so tied to Sun. Your source code is such an expensive investment, you don't want to take weird risks (cough .net cough). With Java open ... well now it looks like a very safe, neutral choice.

    You can write C code, and since it's open, you know your code would work all over. Java has a future that way too now.

    C is still great for its niche, but (flame on) Java delivers 10x more capability in its libraries. C is a creature of the 1970's, so you don't get so much (I *love* C, but get a lot more done in Java). Also, the optimizations in HotSpot are awesome, making languages which run on the JVM look like the future. I hear if you want to see Java with the cruft stripped away, check out Scala.

  • Nice try Taco (Score:5, Insightful)

    by Tim C ( 15259 ) on Thursday June 26, 2008 @12:31PM (#23951723)

    I think I know what you're doing - purposely trolling in order to incite a flamewar, driving up hits and thus ad impressions.

    It won't work though; surely the vast majority of your readership browses with Firefox and some sort of adblocking system.

    I mean it can't be that you genuinely believe that arguably the most often-used language for enterprise and commercial web development work "doesn't matter"; a 30 second search on any popular job website would dissuade you of that infantile notion.

  • Debian integration (Score:3, Insightful)

    by Britz ( 170620 ) on Thursday June 26, 2008 @12:32PM (#23951733)

    I use Debian. And with Java to be able to go into main it makes for even less hassle with Debian. Even if you don't use Java there are many programs written for it.

  • by $1uck ( 710826 ) on Thursday June 26, 2008 @12:34PM (#23951761)
    and I'm not an author.
  • by Trails ( 629752 ) on Thursday June 26, 2008 @12:42PM (#23951901)

    To ask if Java were new we would use it today, while valid as an abstract and absolute measure, is irrelevant in today's software world context.

    Java is HUGELY entrenched in today's business software market, probably even more so if one weights by overall company valuation (i.e. Java's market share by company valuation is substantial, perhaps even dominant).

    Open sourcing it matters since Java's growth and maintenance matter, as the investment in Java is substantial and unlikely to change any time soon.

    Java's never gonna be the hot young thing in programming again (if it ever was), but that's irrelevant to the question of open sourcing it. Java has substantial value, and open sourcing software of value matters. Doing things that alter the growth and maintenance plans of a heavily vested technology matter.

    Further, this:

    Today it's possible to do anything with Java, but no one developer can do everything -- there simply aren't enough hours in the day to learn it all.

    is a tautology. No developer can do everything with C++ either, that doesn't lessen its value or relevance. Neither does Java's complexity or unwieldiness lessen the value gained in being able to learn from and modify how it has implemented things.

    I personally don't get this constant desire on some people's part to denigrate Java. Some sort of Comp Sci elitism for the business language?

    Claiming open sourcing Java doesn't matter is like claiming open sourcing windows wouldn't matter; the same arguments apply. Windows is unwieldy and complex, and competing software generally does things better than windows.

  • Mod article down (Score:4, Insightful)

    by realinvalidname ( 529939 ) on Thursday June 26, 2008 @12:45PM (#23951967) Homepage

    Since Java itself never mattered except to sell books, I still don't see why opening it matters.

    I made a hell of a lot more coding Java than writing books about it.

    Slow news day, huh? What's next, what Lawrence Lessig had for lunch, followed by moral outrage over being charged cash money for a product or service?

  • by The ZoNiE ( 155566 ) on Thursday June 26, 2008 @12:50PM (#23952093) Homepage

    I program in Java because both for it's platform independence and for the fact that if you sign a Java applet and embed it in a web page you are pretty much able to do whatever a fully-fledged Java application could do, like access the full file system.

    I know of no other platform that allows you to write true "web apps" that can rival the stand-alone ones.

  • by MrSteveSD ( 801820 ) on Thursday June 26, 2008 @01:17PM (#23952807)
    The company I used to work for was hit badly by Microsoft dumping VB (VB.NET is not VB, and don't mention the upgrade wizard) and I'm sure it's only one of many. We were hoping for an improved version of VB6 but Microsoft decided to wreck the huge investment we had made in VB code. We had spent years and lots of money writing VB code for our apps because it was easy and convenient with lots of business components available which were simple to plug in. The company just didn't have the resources to rewrite everything in another language and it was a pretty big disaster really. I just couldn't believe that with so many millions of lines of code and so much investment in VB6 from industry that Microsoft would just dump it, but I was wrong.

    The bosses asked me my opinion on what we should do next. We didn't really have a solution to the enormous cost of rewriting everything, but we needed to decide on a new language to adopt. After being so horribly stung by Microsoft on VB I suggested that Java would be a safer direction to go in. C# and .NET were nice of course, but after Microsoft dumping VB6 I was quite worried they would pull some similar devastating stunt in the future. Unfortunately my advice fell on deaf ears and the gravitational pull of Microsoft products was just too great. It's a shame because a lot of the customers are now moving over to Linux, Java and various Open Source technologies as a matter of company policy.

    After the VB saga, I am very dubious of using any language which is controlled by a company (particularly when it's Microsoft). Clearly Sun still has a lot of control, but now with Java being Open source, it won't matter so much if Sun dumps Java. We'll have the code after all.

    P.S. Trying to upgrade component by component using interop was hell and not really a viable option.

If all else fails, lower your standards.

Working...