Slashdot Mirror


Java SE 7 Finally Approved By JCP, 13 To 1

medv4380 writes with news from InfoWorld about the near-term future of Java: "Java Platform, SE (Standard Edition) 7 has been passed this week by the JCP Executive Committee for SE/EE (Enterprise Edition), by a vote of 13 in favor and 1 — Google — against. Oracle, IBM, VMware, Red Hat, and Fujitsu are among the affirmative votes, and two committee members — Credit Suisse and Java architect Werner Keil — did not vote. Specifically, committee members voted on Java Specification Request 336, which pertains to the Java upgrade. Voting on the public review ballot for Java SE 7 finished up earlier this week after beginning on May 31. Java SE 7 still faces another vote on a final approval ballot."

66 of 101 comments (clear)

  1. GOOG by Metabolife · · Score: 1

    "While Google supports the technical content of this JSR, we are voting no because of its licensing terms"

    Typical

    1. Re:GOOG by dkf · · Score: 4, Informative

      "While Google supports the technical content of this JSR, we are voting no because of its licensing terms"

      Typical

      Interesting that they view the licensing and transparency as deal-breakers, and doubly interesting that a majority of the committee members feel somewhat supportive of that position (but not enough to vote against).

      --
      "Little does he know, but there is no 'I' in 'Idiot'!"
    2. Re:GOOG by Metabolife · · Score: 4, Insightful

      Interesting that they view the licensing and transparency as deal-breakers, and doubly interesting that a majority of the committee members feel somewhat supportive of that position (but not enough to vote against).

      How I understand it is this: The licensing terms restrict Google from making their own platform specific version using the spec. It basically stops Google from rebranding Java to "Gava" and using it as the language of choice on Android.

    3. Re:GOOG by Tomahawk · · Score: 5, Informative

      On 2011-06-02 Google Inc. voted No with the following comment:
      While Google supports the technical content of this JSR, we are voting no because of its licensing terms. As per the JCP resolutions of 9/25/2007 and 4/7/2009, "TCK licenses must not be used to discriminate against or restrict compatible implementations of Java specifications by including field-of-use restrictions on the tested implementations. Licenses containing such limitations do not meet the requirements of the JSPA, and violate the expectations of the Java community that JCP specs can be openly implemented."

      The proposed license clearly violates this requirement (see Exhibit A, Section II). Oracle was duly reminded of this when JSR-336 was first proposed, but has done nothing to address the issue. It would be wrong to condone the inclusion of field-of-use restrictions in a TCK license, as this clearly violates the JSPA, by Oracle's own admission. Google does not want to slow the progress of this release, but we do believe it is critical that this issued be addressed, in order to comply with the JSPA and to preserve the openness of the Java platform.

    4. Re:GOOG by owlstead · · Score: 4, Informative

      The problem is that Java is not free at all. The platform is open source (GPL2), but Oracle does not allow any compatability testing between different implementations e.g. with a more permissive Apache license. Basically, because of patents, it is open source as long as you keep your frickin' hands off of it. Google has a strong invested interest because it uses Apache classes (which cannot be validated as being Java) within its Android operating system. And they are getting sued over it. Google certainly uses Java a lot, although it would go way to far to name it a "Java shop".

      The problem is that Java 7 has been long, long overdue. It's not that 1.6 is bad; far from it. It's just that people are starting to lose interest. For Java to stay alive, we *need* 1.7 and quickly - and if possible with as much buzz as possible. Java still is by far the best maintainable language. That is something we don't want to loose, especially since there are few competitors regarding stability, security and maintainability.

      In the end, they are essentially choosing between progress and halting because of licensing issues. As halting it now ay come to stopping Java altogether. Personally I think that Oracle should immediately stop with the licensing bulshit around android, but this is a technical issue, and I would have voted yes myself.

    5. Re:GOOG by Joce640k · · Score: 3, Insightful

      Typical

      You expected Google to vote in favor of something that validates the Java-patent-troll-lawsuit against them?

      --
      No sig today...
    6. Re:GOOG by hunangarden · · Score: 1

      Maybe you are thinking of Microsoft (C# one example). Java is the language of choice on Android already and has been from the start. They just want everyone to stop suing them for it, so they can focus on doing cool stuff. Oracle is the beast here that needs to be rained in, not Google.

      How I understand it is this: The licensing terms restrict Google from making their own platform specific version using the spec. It basically stops Google from rebranding Java to "Gava" and using it as the language of choice on Android.

    7. Re:GOOG by Anonymous Coward · · Score: 5, Informative

      No, the license terms prevent Google(actually Apache) from releasing a non GPL implementation of Java (Apache Harmony). The FOU restrictions are inherently incompatible with ASL.

      And it is only a FOU restriction on the TCK. The Testing Compatability Kit. In order to be declared a conformant implementation of Java you must pass the TCK.

      Until Harmony passes the TCK, (which would break the ASL) Harmony is not Java, and is therefore in violation of Java patents. And remember Harmony is "Java", it has to work like java and have the same bugs as java. In most of these cases it isn't possible to workaround the patents because it has to be the same as java.

      If the TCK didn't have FOU restrictions Harmony would be labeled a version of Java, like OpenJDK, Jrockit, J9, IcedTea and probably a few others. Harmony would get the Patent grant, and anybody who used Harmony (Android) would be free from litigation of patents in Java (Oracle v. Google).

      Oracle's versions of Java cannot be used in mobile (primarily, but I think there is something about ATM's and set top boxes as well) without paying oracle a bag of cash. Any other implementation can't be used in mobile either unless Oracle gets a bag of cash. Harmony having the patent grant, and being ASL would effectively give google a free (speech and beer) JVM to use wherever the hell they want regardless of Oracle wanting the bag of cash.

      Ideally Google would just use Java on Android without paying Oracle. Rebranding Java to Dalvik was just to try and prevent Oracle from getting money. Rebranding Java to Gava is the least good situation for google, other than paying Oracle $5/handset for Java.

    8. Re:GOOG by owlstead · · Score: 1

      Please Mod parent up, instead of the dumbed down argument of the GGP.

    9. Re:GOOG by Surt · · Score: 1

      Not intended to be a grammar/spelling nazi or whatever, but since the rest of your post was coherent and well written, I thought there was a chance you might be interested in knowing that the phrase you were looking for was:
      http://en.wikipedia.org/wiki/Vested_interest

      --
      "Who is the Journal of Quantum Physics going to believe?" --Stephen Hawking
    10. Re:GOOG by owlstead · · Score: 2

      Thanks, I'm pretty well versed in English, but it's not my native tongue. And with slashdot you can only spend so much time reviewing your article, It's approx. one hour before people start to loose interest.

    11. Re:GOOG by Surt · · Score: 1

      Exempting that minor idiomatic mistake, your written English is better than most who learned it as their first language.

      --
      "Who is the Journal of Quantum Physics going to believe?" --Stephen Hawking
    12. Re:GOOG by FrangoAssado · · Score: 1

      Hmmm... I don't think it's that simple.

      As far as I understand, you can download and change OpenJDK (it's GPL v2), but if you want to distribute your version without fear of being sued for patent infringement, you must make sure your own version (i.e., OpenJDK plus you changes) passes the TCK -- that is, you must prove to Oracle that it's really "Java", and not some other language that's slightly incompatible with it.

      TCK, of course, is not open. When you ask Oracle for the TCK, they want to know what you will do with it (see here), and they are free to deny it or put any restrictions they want on it.

    13. Re:GOOG by Civil_Disobedient · · Score: 1

      The problem is that Java 7 has been long, long overdue. It's not that 1.6 is bad; far from it. It's just that people are starting to lose interest.

      Oh give me a fucking break. Java is the defacto-standard programming language taught in schools, it's the language of choice for mobile devices (thanks to Google, by the way) as well as the business world.

      It's a programming language, not fucking MTV. You don't need to keep changing things every 15 seconds to keep the kids' attention span. Shit, C only gets updated every decade or so... I guess nobody must be using that old thing.

    14. Re:GOOG by owlstead · · Score: 1

      Yes, you may be right. Sometimes it is hard though to distinguish between the fans of the new fangled (scripting) languages and what's going on in the real world. The thing is that you need a certain amount of interest, otherwise it *will* become some kind of Cobol. Something that is *only* maintained because there is so much stuff written in it. You need a certain amount of inovation to keep bright minds interested.

      Within our company, we are more and more migrating away from C/C++ because of this. The amount of Java devs has already surged. We've taken a look at C# and .NET, but we could not find a real advantage over Java (and Java was already being deployed). The disadvantage of C# is that you are pretty much stuck with visual studio as development environment, then comes the expensive stuff around it. Nowadays the tools and runtimes are probably more important than the language anyways.

  2. And....? by MetalliQaZ · · Score: 3, Insightful

    I don't like this summary. Who cares? Tell me why the vote was important. Why "finally"? Was it delayed? Why did Google vote against? What are the new features? Why is this on the front page?!?

    --
    "Here Lies Philip J. Fry, named for his uncle, to carry on his spirit"
    1. Re:And....? by pietromenna · · Score: 3, Informative

      http://jcp.org/en/jsr/results?id=5207 There you will find the comments... It is good to see that it is not google the one that would like the license of java changed, but IBM and SouJava as well.

    2. Re:And....? by Afforess · · Score: 2

      Google voted against because of licensing terms. Specifically, Oracle has been using their newfound ownership of Java to harrass the Apache foundation, and their free open-source Harmoney implementation of Java. Several other major firms, (IBM & Red Hat) complained in their comments after the vote. They have refused to grant Apache a tck (Technology Compatibility Kit)

      Source: http://en.wikipedia.org/wiki/Apache_Harmony#Difficulties_to_obtain_a_TCK_license_from_Sun

      --
      If our elected representatives no longer represent us, do we still live in a Democracy?
    3. Re:And....? by owlstead · · Score: 1

      The idea of the summary is to get you to read the article. The article seems to have links to the past issues with Java, which have been discussed on slashdot since forever. Basically you are complaining that the *summary* does not have background info. Unfortunately, it's supposed to.

    4. Re:And....? by MetalliQaZ · · Score: 2

      The purpose of the summary is not to get you to read the article. It should, you know, summarize. Summaries on Slashdot should also be informative on their own; a "digest" version of the article.

      RTFA complaints are valid, but only if the original poster is making false assumptions that are contradictory to the facts in the article.

      --
      "Here Lies Philip J. Fry, named for his uncle, to carry on his spirit"
    5. Re:And....? by medv4380 · · Score: 1

      Why "finally"? Was it delayed?

      Because Java 6 was released in 2006 and prior to that there was a steady stream of releases every 2 years or so. Then Sun was bought up by some no name Oracle that I'm sure you've heard nothing about, and Java 7 was put on hold until the sale went though all the legal stuff, and that took a while. Then Apache, that other nobody, threw a fit and tried to shut down the JCP process over the same issue Google, and others have *not enough sugar in their java*.

      Why is this on the front page?!?

      Someone thought it should go there. Probably was a mistake.

      Why did Google vote against?

      I don't think Google likes Oracle very much. Something about some lawsuit involving the failed Android OS.

      Who cares?

      Nobody, since all Java Developers were sacrificed to Gossling when he left this world, and Oracle is too small for anyone to notice.

      What are the new features?

      Rumor has it that all they added was a line in the licence agreement for your immortal soul, but since no one alive today has read though it we may never know.

    6. Re:And....? by dcollins · · Score: 1

      No, no, I want everything in news-teaser form, like:

      - "Big changes for Java today! Did Java SE 7 pass muster? Click here!"
      - "What happens when scientists think they've captured the God particle? Click here!"
      - "Sarah Palin gets exposed in Alaska! What's the biggest surprise? Click here!"

      --
      We know where leadership by an anti-intellectual "strongman" who scapegoats minorities and likes boisterous rallies goes
    7. Re:And....? by owlstead · · Score: 1

      Who in their right mind want to see Sarah Palin naked? Nobody sane would click that article :)

  3. from the vote log by jvdneste · · Score: 2

    Google's complete comment from the vote log: "On 2011-06-02 Google Inc. voted No with the following comment: While Google supports the technical content of this JSR, we are voting no because of its licensing terms. As per the JCP resolutions of 9/25/2007 and 4/7/2009, "TCK licenses must not be used to discriminate against or restrict compatible implementations of Java specifications by including field-of-use restrictions on the tested implementations. Licenses containing such limitations do not meet the requirements of the JSPA, and violate the expectations of the Java community that JCP specs can be openly implemented." The proposed license clearly violates this requirement (see Exhibit A, Section II). Oracle was duly reminded of this when JSR-336 was first proposed, but has done nothing to address the issue. It would be wrong to condone the inclusion of field-of-use restrictions in a TCK license, as this clearly violates the JSPA, by Oracle's own admission. Google does not want to slow the progress of this release, but we do believe it is critical that this issued be addressed, in order to comply with the JSPA and to preserve the openness of the Java platform." Possibly the licensing terms cause trouble for the dalvik platform.

  4. Need uint by Anonymous Coward · · Score: 1

    But still no unsigned integers? Fucking stupid language.

    1. Re:Need uint by Anonymous Coward · · Score: 1

      +10 informative.

      How can anyone claim something is a computer language when it doesn't have unsigned computational data types. I mean what is this crap. VBA ?

      Java is a great idea with a retarded implementation.

    2. Re:Need uint by Ash-Fox · · Score: 1

      But still no unsigned integers? Fucking stupid language.

      Why would you need them when you have BigIntegers?

      --
      Change is certain; progress is not obligatory.
    3. Re:Need uint by LongearedBat · · Score: 1

      Because sometimes one wants numbers that simply can't be negative, by definition.

    4. Re:Need uint by Lunix+Nutcase · · Score: 1

      That's about as dumb as saying why do you want a car when you have a washing machine. Unsigned integers have little to do with wanting a "biginteger". For example, when dealing with 8-bit bitmaps and doing pixel manipulation you WANT an unsigned byte because you are not going to have negative values. There are numerous other cases in which you are dealing with 4-bit, 8-bit, 16-bit, etc values that will never be negative and not being able to represent them naturally with an unsigned integer is fucking stupid.

    5. Re:Need uint by Cutting_Crew · · Score: 1

      how about the ability to overload operators? this just needs to happen.

    6. Re:Need uint by Ant+P. · · Score: 1

      Java is a great idea with a retarded implementation.

      So to extend that logic, Postgres is a retarded database for also not having unsigned integer types? You must love Oracle's MySQL almost as much as you hate Oracle's Java.

    7. Re:Need uint by doublebackslash · · Score: 1

      Why?

      How is
          Widget a = new Widget();
          Widget b = getBaseWidget();
          b = a + b;

      Any better than
          Widget a = new Widget();
          Widget b = getBaseWidget();
          b.addNewModule(a);

      Are you playing keyboard golf? Do you like having to remember what each operator does in every different combination? Does your IDE not auto-complete?

      Really, tell me. Overloading operators seems like a good way to help ruin the readability of your code.

      --
      md5sum /boot/vmlinuz
      d41d8cd98f00b204e9800998ecf8427e /boot/vmlinuz
    8. Re:Need uint by doublebackslash · · Score: 1

      I'm not arguing for or against. I try not to do much bit slinging where I can avoid it. In fact I think most people do... till they REALLY need to. Then, for everyone's sake, I hope they do it well.

      Here is to the bit singers!

      I found this that provides some info about the lack of unsigned. I'm reading it now. http://darksleep.com/player/JavaAndUnsignedTypes.html#why_no_unsigned_types

      --
      md5sum /boot/vmlinuz
      d41d8cd98f00b204e9800998ecf8427e /boot/vmlinuz
    9. Re:Need uint by Netbrian · · Score: 1

      For certain kinds of sci/math operations, operator overloading is very helpful (complex numbers anyone"), and it's quite cumbersome to write and read the Complex C = a.Add(B), especially for longer equations.

    10. Re:Need uint by Lunix+Nutcase · · Score: 1

      Sorry, but that explanation is bullshit. The leaving out of unsigned types makes code that deals with what are truly unsigned types needlessly more complex. Gosling's explanations sound more like bullshit excuses (waaaaaaah having to implement unsigned math is hard!!) that sound like laziness on the part of the designers. The fact of life is that many things require values that are never negative so having to use 16 bit integers, for example, when one wants only unsigned 8-bit numbers plus the fact that you then usually are needing to do bit manipulations to get at the actual values you want, etc just make Java a pain in the ass to use.

    11. Re:Need uint by Lunix+Nutcase · · Score: 1

      To further add on, for example if you want to work with 8-bit unsigned values you have to start with a 16-bit signed number, cast it down, then you have to do an "& 0xff" to get the actual value you want. Why do I need such needless complications to my code when they could have just gotten off their lazy asses and just created proper unsigned types? Apparently people writing C, C++, etc compilers seem to be perfectly capable of creating unsigned types despite the vague notion of how "complex" it is.

    12. Re:Need uint by HiThere · · Score: 1

      Unsigned integers isn't the point. What's needed is Range types, where one can specify both the lowest and the greatest value. Optionally also specify the increment, but that's just icing.

      --

      I think we've pushed this "anyone can grow up to be president" thing too far.
    13. Re:Need uint by bigsexyjoe · · Score: 1

      I've been coding Java professionally for years. It never even occurred to me that it needed unsigned integers. Why does it NEED that? For one thing, it's an object-oriented language, so if you want to, you make make your own class that implements it. I don't think that would even create a lot of overhead. Most new languages that compete don't even let you work with primitives at all.

    14. Re:Need uint by sourcerror · · Score: 1

      Biginteger for the rescue.
      Also most hacks for signed to unsigned conversion uses Biginteger. (Mask out parity bit, add to bigint, then add 2^32 to it.) Maybe Sun should have included this hack in a utility library :)

    15. Re:Need uint by doublebackslash · · Score: 1

      Actually, I didn't get far in when I posted it. I would not have if I had.

      It IS bullshit. I agree 100% No apologetics, no nothing like that. You, good sir, are right. No good reason!

      Also, it wouldn't even be that "hard" to add it. That is, insomuch as nothing would break due to that addition aside from perhaps a new keyword to avoid (I'm sure someone used uint/ubyte/ulong as a variable name somewhere along the line)

      Thanks for the proverbial smack upside the head. Apparently I needed it!

      --
      md5sum /boot/vmlinuz
      d41d8cd98f00b204e9800998ecf8427e /boot/vmlinuz
    16. Re:Need uint by HiThere · · Score: 1

      You're going to need to explain why you think Biginteger satisfies the requirements of a Range type. It seems to have neither a settable lower bound nor a settable upper bound. You can't say "This represents the integers -7 through 13." in any way that is obvious to me. (Yeah, you can program it. That's what a Range type is supposed to eliminate the need for.)

      --

      I think we've pushed this "anyone can grow up to be president" thing too far.
    17. Re:Need uint by sourcerror · · Score: 1

      I never felt the need to use such range types, and can't imagine a situation where it would be useful. People usually want signed, unsigned or freaking huge integers. Sparing a few bits of memory doesn't turn me on.

    18. Re:Need uint by AJNeufeld · · Score: 1

      For many purposes, unsigned types just delays a problem. "I need to count over 32000 so I'll use an unsigned short" ... And then the code breaks when the unexpected happens, and the count exceeds 65000. An extra bit of count range is NOT desirable... If you want bigger counts, use the larger type!

      For the most part, math on unsigned integers produces the same result as math on signed integers. Division, being the exception, but if you are dealing with integers, you likely aren't doing a lot of division anyway.

      Count down loops are harder with an unsigned variable. "for( x=10; x>= 0; x--)" is an infinite loop!

      Bit banging is really the only place the unsigned types are useful.

      If you really, really, need unsigned integers for a particular problem, you could always use JNI and program that part in a different language.

  5. Re:I hate Java. by Joce640k · · Score: 3, Insightful

    Does "Java 7" mean we're in for another never-ending series of huge updates, none of which will bother to remove the previous update from my disk?

    If so... no thanks.

    --
    No sig today...
  6. Java is Doomed by bjourne · · Score: 1, Interesting

    It is symptomatic of the JCP (Java *Community* Process -- in reality run by a committe of about a dozen international corporations) that is filled with bureaucracy and childish infighting. IMHO the writing is on the wall for Java because stuff moves way to slowly. Java has JPA which would have been a really nice ORM... about five years ago but technology moves faster than that. Compare that to C# whose development process is entirely controlled by a single company and you have Linq2Sql and the Entity Framework. There is more api churn, but at least stuff is moving forward.

    It was especially apparent with J2ME which went from market leader to an also ran player. All the companies invested in Java tried to stab each other in the back and abused the JCP to gain advantages on each other. The way several of the mobile JSR:s were specified, weren't so much dependent on what would be the best technical decisions but on compromises intended to make everyone happy and not give the market leader (who already had a working reference implementation) an edge. That's why some of the JSR:s are so bizarre such as the Mobile Sensor api.

    To bad, I say. The Java platform had so much potential that will go to waste. It would have been hard enough for Java to complete if the CLR wasn't superior technology, but it is. The future looks fairly bleak for Linux on the server side without a competitive virtual machine.

    1. Re:Java is Doomed by cardpuncher · · Score: 1

      I don't think Java is doomed any more than COBOL is doomed - it's deeply embedded in so many back office systems that it is going to be around in perpetuity regardless of whether the language and its associated environment has any further development. .Net/CLR is indeed a better "Java" than Java but it isn't as entrenched, still basically dependent on the Windows platform and Microsoft itself seems to be going cool on the whole project so I'd say it was the more likely candidate for ultimate doom than Java, even though it is technically superior in many respects. The CLR has a lot of "cloud" potential, but whether Microsoft would dervie any benefit from letting it sufficiently loose is questionable.

      Oracle essentially has to shift Sun iron in order to make money out of Java; Microsoft has to shift Windows licences to get money out of .Net. It's hard to see how either can continue indefinitely to develop a product whose funding is contingent on selling something only peripherally related.

    2. Re:Java is Doomed by ubersoldat2k7 · · Score: 1

      Do you really believe all the bullshit you just wrote? If you spend all day immersed in MS crap, then I suppose it's not your fault.

      The Java platform had so much potential that will go to waste.

      Did you read who are part of the JCP? Do you have any idea of how much money and resources have been invested in Java platform? So, you really think these players are just going to say 'Hey, I think it would be better to ditch all of this and become MS resellers'. Actually, it's the other way around.

      The future looks fairly bleak for Linux on the server side without a competitive virtual machine.

      Sure, Linux is competitive on the server side because of the JVM. Please Mono, come and save Linux! Please let us feel the joy of .Net development.

    3. Re:Java is Doomed by Cutting_Crew · · Score: 1

      speaking of Javascript Interface Builder is really, really nice for building UIs. Using a sophisticated and refined tool like Interface Builder is MUCH much nicer than the current kludge of web technologies that consist of HTML, CSS, and JavaScript all over the place and various data exchange formats like XML, JSON, or whatever combined with eight different JavaScript frameworks and a potentially very different server-side programming model and finally trying to jam it all together into something that someone can see on the other side in terms of a GUI interface.

      If i want to go into my widgets and change the color of text or the attributes of a widget I don't have to go into some xml code to change it.

    4. Re:Java is Doomed by owlstead · · Score: 2

      It is symptomatic of the JCP (Java *Community* Process -- in reality run by a committe of about a dozen international corporations)

      Of course: those companies have a lot of people working on Java. They *are* a large part of the community.

      that is filled with bureaucracy and childish infighting.

      They are having serious issues regarding licensing. To call that bureaucracy and infighting? I presume that is rather subjective. Personally, I think it is rather a defining issue.

      IMHO the writing is on the wall for Java because stuff moves way to slowly. Java has JPA which would have been a really nice ORM... about five years ago but technology moves faster than that. Compare that to C# whose development process is entirely controlled by a single company and you have Linq2Sql and the Entity Framework.

      Java as a language is mainly build on being easy to maintain. A lot of people don't believe in Linq2Sql as it merges two languages together. It's rather questionable if that is the right road to take. It's certainly not the Java road, and never was. You can argue about that during language design, but that's how it is.

      There is more api churn, but at least stuff is moving forward.

      It was especially apparent with J2ME which went from market leader to an also ran player. All the companies invested in Java tried to stab each other in the back and abused the JCP to gain advantages on each other. The way several of the mobile JSR:s were specified, weren't so much dependent on what would be the best technical decisions but on compromises intended to make everyone happy and not give the market leader (who already had a working reference implementation) an edge.

      Many Java API's, especially those in the Java standard edition are very well defined. Take a look at the collections API, the SmartCard I/O API, the way cryptographic providers work etc. etc. This is much less the case with the embedded Java forms, I give you that. Personally, I don't think that the fastest mover should always get the support. The best technical solution should be choosen, and I think this is one of the strengths of the JCP. Note that that might not always translate into the best marketing, that's true. But at least it is more or less fair, and it stops horrors like jPCSC from becoming an API standard instead of smartcardio.

      That's why some of the JSR:s are so bizarre such as the Mobile Sensor api.To bad, I say. The Java platform had so much potential that will go to waste. It would have been hard enough for Java to complete if the CLR wasn't superior technology, but it is. The future looks fairly bleak for Linux on the server side without a competitive virtual machine.

      IMHO the Java VM is pretty much compatitative, and it's getting better too. If linux fails, I would be very surprised if it is because of the performance of the Java VM (personally, I think they have much more urgent problems than that, and I'm typing this from an Ubuntu desktop...).

    5. Re:Java is Doomed by Billly+Gates · · Score: 1

      That is my feel of it too. Like a nice old mainframe/cobol-ish platform, but is more modern for the late 20th/21st century.

      If my website needs to be rewritten to be enterprisish, I have 2 options Java or C#/ASP.NET. With Java I can run the code 10 years from now when its old and crusty on a mainframe if I wished or a few servers just like Cobol. Whether that is a good thing or not is debatable but it is conservative and I know it will still run. With Microsoft I would likely have to rewrite it every few years when things change but it would be more modern and any developer with Visual Studio can work on it.

      What I do not like is where Java is going from their new overlords. To be fair C# is tied to SQL Server and Windows so it is a proprietary stack as well. I have to choose which is better to be shafted by. I wish IcedTea would go somewhere so I would not feel so confined and left behind.

      Java is not being updated and it is creaky old and now a liability. IBM is the only other vendor I can choose besides Oracle if I want real enterprise support and updated software and database access. I assume Java will be more and more integrated with the Oracle Database while IBM's version will be more friendly with DB2/Web sphere etc. Either way it is becoming expensive compared to other more open alternatives. What a mess and I hope thigns change and Oracle looses the lawsuit bigtime and we have a nice Java fork. :-)

      Right now I will stick with PHP until I have the actual need to run something like big like that and pick a platform.

    6. Re:Java is Doomed by VGPowerlord · · Score: 1

      To bad, I say. The Java platform had so much potential that will go to waste. It would have been hard enough for Java to complete if the CLR wasn't superior technology, but it is. The future looks fairly bleak for Linux on the server side without a competitive virtual machine.

      Then take OpenJDK and fork it! Except that you can't relicense it because it's GPLv2, and GPL isn't compatible with anything other than GPL.

      --
      GLaDOS for President 2016! "Well here we are again. It's always such a pleasure." -- GLaDOS, 2011
    7. Re:Java is Doomed by Shados · · Score: 1

      With Microsoft I would likely have to rewrite it every few years when things change but it would be more modern and any developer with Visual Studio can work on it.

      .NET code from the original 1.0 version still work in 4.0. There are a VERY breaking changes... there's a few in java too. To be fair, the .NET ones break a bit more than in Java, but it is still very very minor. We're currently going through dozens of applications we wrote around the time .NET 1.0 came out, and most of them run as is, a few took about 15 minutes of work to port. There are situations where people were doing stuff in unsupported ways and that doesn't port cleanly though.

      To be fair C# is tied to SQL Server and Windows so it is a proprietary stack as well.

      To Windows (Mono doesnt really count), yes. To SQL Server? Absolutely not. There's a few of the "pluggable" APIs that only have SQL Server as built in implementations, but virtually everywhere where you have SQL Server support, you can have a provider for any other database. The closest thing to SQL Server tie in is in .NET, not C#, in the form of LINQ to SQL... but that thing is more of a tech demo than anything, and there's nothing stopping someone from making LINQ to WhateverYouWant, the API is pluggable.

      The recommended scenario is to use Linq to Entity, and that is not SQL Server dependent.

  7. JPA by sourcerror · · Score: 1

    Java has JPA which would have been a really nice ORM... about five years ago but technology moves faster than that.

    And it came out exactly five years ago.

    "The final release date of the JPA 1.0 specification was 11 May, 2006. "
    http://en.wikipedia.org/wiki/Java_Persistence_API#History
    Or did you mean JPA 2.0?

    IIRC java came out earlier with ORM, than MS. (Also see Toplink)

    1. Re:JPA by Mongoose+Disciple · · Score: 1

      But, 'out' and 'part of standard Java' are two different things, and that illustrates exactly the problem with Java for many developers, which is: standard Java is always far behind the curve, so it's always necessary to augment Java with community efforts to accomplish the tasks at hand as a professional developer.

      And, great that the Java community is so active and vibrant that there *will* be something out there that solves the problem that you're having, but which one? How often have you grabbed a community Java package to solve some business problem and figured out a little too late that while it does 98% of what you need, you can't get the last 2% done at all without tossing that framework and starting over with a different one?

      Ultimately what I think I'm saying is: you can't be a casual Java developer and be a good Java developer. You need to remain very current on each community project that you even might use to be able to make your architectural decisions correctly. You need to be aware of which of these things you might pull in don't play well with each other and why. This is a problem that developers in several other languages just don't, in any practical sense, have.

    2. Re:JPA by ubersoldat2k7 · · Score: 1

      standard Java is always far behind the curve

      Well of course, just look at all the platforms supported by the JVM and all the projects/enterprises which depend on Java. You can't do what Python did with 3k and break backward compatibility. You can't also do a big framework release as .Net does because Java is not controlled only by a single company nor runs in a single platform.

      How often have you grabbed a community Java package to solve some business problem and figured out a little too late that while it does 98% of what you need, you can't get the last 2% done at all without tossing that framework and starting over with a different one?

      Luckily, you can implement such 2% of features by your own. Really, it's not that hard and that's what programmers do, not simply put together a bunch of frameworks and visit /.

      You need to be aware of which of these things you might pull in don't play well with each other and why.

      Then I suppose it's better to have one company to tell you how to do it and to sell you all the solutions.

      This is a problem that developers in several other languages just don't, in any practical sense, have.

      I suppose you're talking about .Net here, because this happens with C/C++, Python, Ruby and Perl that I know of. Actually, it's worst in some of them.

    3. Re:JPA by Billly+Gates · · Score: 1

      There are developers out there that actually think ORM is a cheap knockoff to LinQ. MS had it first! etc ...

      Sadly it doesn't matter as ORM was never really marketed while LinQ was and took over mindshare among developers

    4. Re:JPA by Mongoose+Disciple · · Score: 1

      Really, it's not that hard and that's what programmers do, not simply put together a bunch of frameworks and visit /.

      Yeah, become the millionth Java programmer to create their own unmaintainable knockoff of Struts. That's exactly what the world needs.

      Out of curiousity, how much Java development have you done for large (i.e. Fortune 500) companies? Priorities are a lot different there vs. Java app you throw together for a homework assignment.

    5. Re:JPA by sourcerror · · Score: 1

      "But, 'out' and 'part of standard Java' are two different things"
      No, they aren't . Specs being out means part of standard Java. Hybernate existed years before that.

  8. Re:Java 7? What's that? by sourcerror · · Score: 1

    Java 2,3,4,5,6 run on Windows 2,3,4,5,6, respectively.

  9. Re:Java 7? What's that? by ubersoldat2k7 · · Score: 1

    Yeah, it's stupid. Maybe they should go ahead as Linus did and release version 2 for once and for all.

  10. Re:JCP by Surt · · Score: 1

    Java Community Process

    --
    "Who is the Journal of Quantum Physics going to believe?" --Stephen Hawking
  11. Re:Java 7? What's that? by TheRaven64 · · Score: 1

    Java 1.2 was renamed Java 2 for branding purposes. All subsequent Java versions have had a silent 1. at the start, so Java 7 is really Java 1.7.

    --
    I am TheRaven on Soylent News
  12. Java 6 fork anyone? by Billly+Gates · · Score: 1

    I do not like where Java is going and I know I am not alone.

    I do not like how it is being proprietary from a once open standard and what the new license agreement is doing to Google. If it can happen to Google it can happen to Apache or anyone else. Java is old and not being updated which is why real Java developers download free third party api's like Hibernate rather than wait on Oracle. After LinQ beating ORM's and the lack of AJAX and other things that .NET is doing it seems to be falling further and further behind. What about Java support for the BSD users? Consoles? ... or other platforms?

    Is it possible to fork IcedTea? I would like to see it more like .NET with faster innovation and more languages being ported over to the JVM. Who is with me?

  13. Toplink, Hybernate by sourcerror · · Score: 1

    You're right. What is Java desperately needs is more cowbell.

    Toplink was out in 1998, Hybernate was out in 2002, in 2006 came out the JPA standard, that gave a uniform interface for both. .net got LINQ in 2007, how is that beating Java in ORM?

  14. Re:Java = COBOL?? by sourcerror · · Score: 1

    I like the IDEs (both Netbeans and Eclipse; Netbeans for the form editor, and easy installation of Glassfish; Eclipse for the very good content assist/fix suggestions), the ORMs (through JPA), I think EJB3 is quite nice, however there seems to me an overabundence of servlet frameworks (Spring, Struts, JSF etc.) And most of them have a pretty steep learning curve and lacking documentation (I learned JSF so far, as it's standardised through JCP; and that's the best documented). But it's weird for me that it has so many expression languages stacked on top of each other that seem redundant and plain confusing.
    And the enterprisey mindset with astronaut architects, who don't ever touch code is pretty repulsive, but I think at it's core J2EE is quite good technology.

  15. A match made in heaven. by CondeZer0 · · Score: 1

    Java programming and bureaucratic standards, with some luck they will catch soon up with the level of C++ insanity.

    --
    "When in doubt, use brute force." Ken Thompson