Slashdot Mirror


Polish Researcher: Oracle Knew For Months About Java Zero-Day

dutchwhizzman writes "Polish security researcher Adam Gowdiak submitted bug reports months ago for the current Java 7 zero-day exploit that's wreaking havoc all over the Internet. It seems that Oracle can't — or won't? — take such reports seriously. Is it really time to ditch Oracle's Java and go for an open source VM?"

253 of 367 comments (clear)

  1. Duh by binarylarry · · Score: 5, Funny

    You think Uncle Larry gives a fuck?

    No. Now pay him his money.

    --
    Mod me down, my New Earth Global Warmingist friends!
    1. Re:Duh by Culture20 · · Score: 1

      Yes, it's used as a browser plug-in by big names a lot. Some times, they're smart enough to restrict sites, but that's rare.

    2. Re:Duh by Jane+Q.+Public · · Score: 2

      "... and I had heard most of the bigger corps went .NET for their backends."

      Java is not primarily -- or even mostly -- for Web use. The vast majority of Java programs don't involve the Web at all. So yes, it is still used a lot. However, of course only the ones that are accessed via the Web are susceptible to the remote exploit.

      Having said all that, I will reply to OP and say yes, it's time we started using a forked Java. In fact, most of us should have seen the writing on the wall from the actions Oracle took immediately after acquiring the rights to it. We're only a few years late.

    3. Re:Duh by buchner.johannes · · Score: 1

      People managed to take OpenOffice away from Oracle.

      Java is open source, why can't the same happen there?

      --
      NB: The message above might reflect my opinion right now, but not necessarily tomorrow or next year.
    4. Re:Duh by dunng808 · · Score: 1

      Ask Google about that.

      --

      Gary Dunn
      Open Slate Project

    5. Re:Duh by hairyfeet · · Score: 1

      Wow look at how quickly I got modded down, must have been since I dared to say corps use .NET but since I don't have a horse in this race who cares.

      But here is what I don't understand: Who DOESN'T KNOW Java is a security nightmare? I mean how many exploits have we seen in the past 5 years? Your four biggest security nightmares are Adobe Flash/Reader, Java, and IE. Time and time and time again we see attack after attack and its always those same four over and over and over.

      So I have to agree with you 110%, if you need Java then it needs a good forking. Take it away from Oracle, have a group that makes Java security be the #1 priority, and support THAT instead. Because lets face it folks, Java was a security nightmare when Sun ran it and Oracle isn't doing any better of a job at fixing the mess than Sun did, no different than how Flash sucked for security when it was Macromedia and it sucks under Adobe.

      So all these corps that have serious mission critical applications that need Java really need to form a consortium and work together to get a solid, secure, reliable Java replacement. Otherwise there is no point in complaining, Oracle is just following Sun's bad example.

      --
      ACs don't waste your time replying, your posts are never seen by me.
    6. Re:Duh by Jane+Q.+Public · · Score: 1

      "Because lets face it folks, Java was a security nightmare when Sun ran it and Oracle isn't doing any better of a job at fixing the mess than Sun did, no different than how Flash sucked for security when it was Macromedia and it sucks under Adobe."

      Sure. The only thing I would add is that Sun java was either less exploitable, or that exploits have simply become better-discovered since being acquired. I actually lean a bit toward the latter, because Oracle does not have the sympathy of its own user base, and I can see them finding flaws, just to strike at Oracle.

      Sooner or later, Page should get the clue that most people -- or at least most developers, who count the most here -- don't like him or his products very much.

    7. Re:Duh by hairyfeet · · Score: 1

      You mean Ellison? Page is at Google. Bit of a Freudian slip there friend.

      But actually I don't think its either, I think its the fact that they've figured out how to make a business out of exploits with the black market and exploit toolkits so the really insecure stuff is gonna get beaten like a red headed stepchild by the malware writers as its easy money. In the past exploits were more of a small crime, your script kiddies and spammers, but those toolkits are making big money so it gives them incentive to find as many zero days as possible and Java was and is an easy target, along with the others I named.

      --
      ACs don't waste your time replying, your posts are never seen by me.
  2. THEN NOT REALLY 0-DAY IS IT ?? by Anonymous Coward · · Score: 1

    It's a ZenZaZhun !!

  3. Re:Ditch Java entirely. by binarylarry · · Score: 5, Funny

    So your business model is:

    1) Ditch Java
    2) ???
    3) Profit!

    You and the underpants gnomes should hook up!

    --
    Mod me down, my New Earth Global Warmingist friends!
  4. Re:Why only Oracle's Java? by Chrisq · · Score: 2

    Maybe it's time to ditch Java altogether!

    Yes, I'll switch to Scala. It will run on my Java web server and allow full access to Java class lib ... oh wait!

  5. Why are people still using this? by DrEnter · · Score: 2, Funny

    Seriously, it isn't even like Java is a particularly good language/environment. Frankly, I would rather deal with architecture issues and multiple platforms and just use C/C++ than put up with Java's issues.

    1. Re:Why are people still using this? by binarylarry · · Score: 5, Insightful

      You sound like someone who shouldn't be giving technical advice.

      C/C++ has advantages over Java, just like Java has advantages over C/C++

      Saying you should use one over the other for every purpose is foolhardy.

      --
      Mod me down, my New Earth Global Warmingist friends!
    2. Re:Why are people still using this? by Anonymous Coward · · Score: 5, Funny

      Hey Larry, what's your surname?

    3. Re:Why are people still using this? by gbjbaanb · · Score: 1

      Apparently it wasn't Oracle ignoring the exploit, its just that the exploit happened to be found well outside the standard Java quarterly patch release. Pesky kids, if only they'd waited until a week or so before patch tuesday, everything would have been fine - I mean, you just cannot imagine the paperwork involved in moving that patch release date!

      Anyway, I agree Java is not the best environment - if you want performance and resource efficiency, you use C/C++. If you want developer productivity you use any of the scripting languages. Java (and .NET) fall into a middle ground that is neither as good as C/C++ (for perf) nor as good as javascript (say)(for productivity). So there's no real reason to use it - unless you work for Oracle and then you cannot imagine the paperwork involved in changing to another language!!

    4. Re:Why are people still using this? by NettiWelho · · Score: 3, Interesting

      I'm currently doing my internship at the IT dept. of a joint-municipal group responsible for about 15k windows computers(mostly for schools, vocational schools and a uni of applied sciences) and today the department heads made the decision to uninstall java from all machines except those in lab networks disconnected from outside world.

    5. Re:Why are people still using this? by Sesostris+III · · Score: 1

      Out of sheer curiosity, what are the C/C++ alternatives to JEE and associated frameworks/technologies/containers (e.g. EJBs, JSPs, JSFs, Spring, Hibernate, Struts, GWT, Tomcat, JBoss, etc)?

      Thanks

      --
      You never know what is enough unless you know what is more than enough. - Blake
    6. Re:Why are people still using this? by Anonymous Coward · · Score: 3, Insightful

      Does it really matter how verbose a language is if it gets compiled down byte code? If it's good code, it doesn't matter. You have the same logic that managers have, i.e., counting lines of code is a measure of productivity. There's plenty to dislike about the way Oracle has handled Java, however, complaining that it takes too many lines to accomplish something is not one of them. My guess is that there's a Perl programmer out there who thinks C++ is bloated.

      The complaint I see, but hasn't been verbalized, is that Oracle isn't making money off of the Java language so their technical support has failed. That's as bad as Microsoft screwing with the VB to VB.NET change. That's a reason to reconsider your programming language choice. However, nothing better has come along.

      For now, Java is good enough.

    7. Re:Why are people still using this? by VGPowerlord · · Score: 1

      There are some things in Java that are decent. It's just that none of them are on the client side.

      --
      GLaDOS for President 2016! "Well here we are again. It's always such a pleasure." -- GLaDOS, 2011
    8. Re:Why are people still using this? by X0563511 · · Score: 1

      code performance critical portions in C/C++/Cython

      Well, you just set off the "I don't know what I'm talking about" alarm.

      What the fuck do you think you were using when you did the rest of the code in Python? Cython is Python.

      --
      For large sets, this will be our guide even unto death, for the LORD will work for each type of data it is applied to...
    9. Re:Why are people still using this? by Greyfox · · Score: 4, Funny
      Native development with applications that retain their state from moment to moment. Now... you kids might have trouble wrapping your heads around this, but imagine for a second that you didn't have a web browser. Ok take a deep breath and don't freak out. Now, you use a GUI library like GTK or QT to provide the interface, instead. The user runs your application on his local system, and all or most of the data is stored locally. So instead of ALL those things, you'd use a user interface library like GTK or QT. They're kind of like Swing or AWT.

      So I know what you're thinking; "Well then how do I talk to a database?" Well as it turns out, every database has a library that local applications can use to send SQL queries to the database. It's true! You can also roll a socket protocol to talk to damn near anything else on the internet. You don't even have to use XML if you don't want to!

      Now, these applications are linear in execution, so you don't have to maintain a session state or anything like that. When you're in the application, you're just wherever you are in the application. This might take some getting used to.

      Now I know what else you're thinking; "But Java is write once run everywhere!" Well your IT department has the same version of Windows installed on every system in your company, so what's the problem? If you use cross-platform libraries like Boost, GTK or QT, odds are good you'll just be able to recompile your binaries if you need to support Linux or OSX, anyway.

      --

      I'm trying to teach myself to set people on fire with my mind... Is it hot in here?

    10. Re:Why are people still using this? by Tanktalus · · Score: 2

      Counting lines of code is a measure of productivity. The more lines I need to type to get the same work done, the less productive I am for that functionality. If I can do the same work in half the lines of code without sacrificing readability and maintainability (I'd argue that often these are improved by cutting out boilerplate), then I'm more productive.

      Every time I have to look at Java, I boggle at the volume of text they have to write for the simplest things. And then I'm happy I do most of my work in Perl.

    11. Re:Why are people still using this? by Blakey+Rat · · Score: 1, Interesting

      It's more accurate to say that Java shouldn't be used on the desktop. And ESPECIALLY not in a browser.

      On the server, Java's not bad. (I'd still prefer something else, but I wouldn't fault someone for picking Java.)

      On the desktop, I've yet to see a single application written in Java that didn't have huge flaws, even if you ignore the huge flaws in the JRE itself.

    12. Re:Why are people still using this? by Anonymous Coward · · Score: 3, Informative

      I know you were trying to be clever, but since you asked:
      https://en.wikipedia.org/wiki/Comparison_of_Java_and_C%2B%2B

    13. Re:Why are people still using this? by geekoid · · Score: 1

      Perl is a horrid 'language' for readability and maintainability.

      --
      The Kruger Dunning explains most post on /. http://en.wikipedia.org/wiki/Dunning%E2%80%93Kruger_effect
    14. Re:Why are people still using this? by gbjbaanb · · Score: 3, Informative

      good honest work :)

      All those things are artifacts of how crappy java is, in order to get anything done you need a metric ton of framework crap slapped on, and this is why people say "java is fast to develop in" - they mean, the frameworks make it faster to develop stuff, as long as you're developing exactly the kind of thing those frameworks are designed for. C/C++ world tends to have libraries that provide you with functionality you then plug in to your code, rather than having to code the way the framework wants you to (roughly).

      You could use Ruby on Rails and get much better developer productivity, or Python, or node.js

      As for C++, we don't tend to use EJBs - straight forward classes are fine, though you could use COM if you're on Windows (or COM+). The JSP frameworks are covered by either Microsoft's new Casablanca project or various web-server libraries like cppCMSS. C++ doesn't have much in the way of ORMs, preferring faster access to DB code but there are still plenty, eg ODB

      For example, you need tomcat to host your java beans and pages, but C++ would just run off Apache - either as a mod_xxx module, or via pass though to a running service. A C++ developer wouldn't necessarily embed a webserver into his code, instead expecting to reuse the existing web server infrastructure.

      Generally the best place to start looking for C++ libraries is Boost. From there, just use google for what you need.

    15. Re:Why are people still using this? by VGPowerlord · · Score: 1

      Yes, clearly the answer to someone asking what we can replace specific web technologies (the one thing Java is good at) is to suggest building local apps (one of the things C/C++ is good at).

      Hey, can you compile a version of your replacement app that runs on iOS? Android? Windows? Linux? OSX? FreeBSD?

      If you answered no to any of those, *bzzt* sorry, your solution has lost potential customers and is rejected out of hand.

      --
      GLaDOS for President 2016! "Well here we are again. It's always such a pleasure." -- GLaDOS, 2011
    16. Re:Why are people still using this? by geekoid · · Score: 1

      "Well your IT department has the same version of Windows installed on every system in your company, so what's the problem?"
      have you ever worked for a large organization? Ever looked t costs of this?

      Web applications have a lot of advantages over stand alone. It's a matter of risk/cost.

      And I have been a software engineer for decades. Not that it makes me right or wrong, only that I understand the pre-internet software world as well as the internet transition phase.

      --
      The Kruger Dunning explains most post on /. http://en.wikipedia.org/wiki/Dunning%E2%80%93Kruger_effect
    17. Re:Why are people still using this? by Anonymous Coward · · Score: 1

      It is possible to write beautiful, maintainable perl.

      It is not possible to write concise Java.

    18. Re:Why are people still using this? by Pieroxy · · Score: 3, Interesting

      Can you elaborate on what is awful about the Java platform? And no, lack of an open source option is NOT one of the drawbacks since Java has those as well (which is not true of C# btw where the open source alternative is not really operational).

      Now, before you jump in realize that I'm not asking about JAVA APPLETS, but about the Java platform.

      Go.

    19. Re:Why are people still using this? by pointyhat · · Score: 1

      *choke* OpenJDK?

    20. Re:Why are people still using this? by Dishevel · · Score: 1

      Other than allowing lazy people to kinda get stuff done what are the advantages of Java over C/C++?
      Are any of those advantages big enough out weigh the elephant in the room which is Oracle not giving one shit about Java and the massive number of security holes?

      --
      Why is it so hard to only have politicians for a few years, then have them go away?
    21. Re:Why are people still using this? by Pieroxy · · Score: 1

      Good desktop applications are rare in Java, and the only ones I'd recommend are developer tools anyways: Eclipse, SmartSVN.

      The only drawbacks are startup times for me.

    22. Re:Why are people still using this? by SuricouRaven · · Score: 1

      A program that tries to do all things does them all poorly.

    23. Re:Why are people still using this? by Pieroxy · · Score: 3, Interesting

      You have a far bigger problem with local apps. The problems are your APIs. You have (presumably) a web server somewhere serving data to your local apps. And every time you will release a new version of your app, you will also release a new version of your API. But you also should remember to keep the old one working, because guess what: Some people will upgrade, and then some will not.

      All of a sudden, you have your server and a gazillion apps out there, some more or less buggy than the others.

      THIS is the biggest benefit of a web based app, not the reach of the 1205 users of FreeBSD. You have a bug? Fix it. Instantly, no one has a bug anymore. THAT is convenient.

    24. Re:Why are people still using this? by elfprince13 · · Score: 1

      What the fuck do you think you were using when you did the rest of the code in Python? Cython is Python.

      Well, you just set off the "I don't know what I'm talking about" alarm. Cython is a derivative of Pyrex, neither of which should be confused with CPython. And of course CPython is not Python either, it's the reference implementation of an interpreter for the Python language.

    25. Re:Why are people still using this? by TheDarkMaster · · Score: 1

      The fundamental problem is to encapsulate the code in a VM when this code could use the native features of the operating system and hardware (such as a good old C application).

      Running the code in a VM is OK for a server, but it is a disaster (in terms of resource usage) for a desktop.

      --
      Religion: The greatest weapon of mass destruction of all time
    26. Re:Why are people still using this? by KlomDark · · Score: 4, Interesting

      Have you worked with C# under the .NET 4.x framework now that they've added Entity Framework to it?

      It is so much more efficient that any other data access abstraction I've ever seen. It even makes Hibernate/NHibernate look like a lame hack.

      I am able to do extremely complex things with 10% of the amount of code I used to have to write.

      Microsoft might be making a LOT of mistakes lately, but Entity Framework is not one of them. I don't know if I'll ever have the patience to use another language again - C# with Entity Framework is that much better.

    27. Re:Why are people still using this? by lindi · · Score: 1

      JOSM (Java OpenStreetMap editor) is not too bad Java application either. It is constantly improved to meet the demands on the mappers but still manages to stay fairly stable.

    28. Re:Why are people still using this? by binarylarry · · Score: 5, Informative

      You have provided some terrible answers. Please stop posting about technologies when it's clear you have little technical knowledge.

      Java is much, much faster than Flash.
      The JVM set bundled with OpenJDK is the same as the one bundled with Oracle Java (Oracle Java is built on OpenJDK)
      Java is cross platform, it's worked reliably for a long time
      Java is open source, so blaming Oracle for slow development isn't fair (not that I like them, Fuck Oracle)

      Some things that suck about Java:

      No runtime generics
      No lambda support
      You have define your maximum heap size when the application is started
      AWT and Swing are the official UI technologies and they're fucking terrible
      It's very hard to port to platforms where it doesn't exist already

      --
      Mod me down, my New Earth Global Warmingist friends!
    29. Re:Why are people still using this? by Anonymous Coward · · Score: 1

      Does it really matter how verbose a language is if it gets compiled down byte code?

      As others have said, verbosity is the antithesis of productivity. Productivity also directly translates into dollars. Thusly, the less productive one is, the more expensive a project becomes. As such, from the comparison above, projects coding in Java are more likely to be more expensive than projects coded in C/C++ and especially Python. Not to mention, its more likely the Java project will take the longest to deliver, with C/C++ coming in a little more quickly, with Python being yet ahead of that.

      Verbosity definitely matters for programming languages.

      I also find it interesting that a good thread came of someone's account and yet it was troll moderated. Sorta blows a hole in the theory it was a troll post. Oh well, troll moderation is simply a disproportionate element of moderations on slashdot these days.

    30. Re:Why are people still using this? by Blakey+Rat · · Score: 1, Informative

      Ignoring for a moment Eclipse's awful UI, its entirely broken in Windows because of the way it handles (or rather, fails to handle) per-user special folders. Last time I installed it, it basically engaged in a DoS attack against every other app trying to use named folders.

    31. Re:Why are people still using this? by fahrbot-bot · · Score: 1

      Good desktop applications are rare in Java ...

      Blame the developer - company and/or person - not the language.
      My Java applications are rock-solid, perhaps helped by my 25+ years of sysadmin and systems-programming background.

      --
      It must have been something you assimilated. . . .
    32. Re:Why are people still using this? by Blakey+Rat · · Score: 1

      If "manages to stay fairly stable" is literally the best thing you can say about it, it's shit.

    33. Re:Why are people still using this? by Anonymous Coward · · Score: 1

      perhaps you weren't around for the days when every program had direct access to hardware.

      take my word for it, it was -not- good times.

    34. Re:Why are people still using this? by Pieroxy · · Score: 4, Insightful

      To be fair to AC, Java is dead slow to start up. Once it's up and running there are no issues anymore, but on the desktop, the startup time is pretty bad.

      Also, IIRC, I think there are still a few libraries that are not open source (and that don't work well in OpenJDK)

    35. Re:Why are people still using this? by Anonymous Coward · · Score: 1

      Java is open source, so blaming Oracle for slow development isn't fair (not that I like them, Fuck Oracle)

      Java is open source in the sense of "watch boy see the source code ?" but you can't extend it, not without Oracle's ok. Did the whole Harmony fiasco (about the use restrictions and not giving the Apache project the compatibility toolkit) just wooooooooosh by you ?
      Oracle doesn't give a SHIT about making Java ready for the desktop, and it sure doesn't give a flying fuck about improving the language. As a language for server/infrastructure applications yes it has its place. On the desktop not by a long shot.
      My only regret is that a beautiful language as Scala has been implemented on the jvm instead of going the native route. By now we could have ditched C/C++ and enter into the modern era of computer languages.
      Oh well, until that time C++/Qt will have to do.

    36. Re:Why are people still using this? by Tanktalus · · Score: 1

      I type ~60 wpm for normal text, and writing code is not much worse. Try again.

    37. Re:Why are people still using this? by VGPowerlord · · Score: 1

      You have a far bigger problem with local apps. The problems are your APIs. You have (presumably) a web server somewhere serving data to your local apps.

      Actually, the GP addressed this by having the local apps talk directly to the remote DB, which means you'd have to have a separate DB account (with proper permissions, since you no longer have a web app doing security checks first and you can't trust any data coming directly from the client) for each and every user of your system.

      --
      GLaDOS for President 2016! "Well here we are again. It's always such a pleasure." -- GLaDOS, 2011
    38. Re:Why are people still using this? by Anonymous Coward · · Score: 1

      Ya, everyone should just use PHP.

    39. Re:Why are people still using this? by binarylarry · · Score: 1

      Why would you fork OpenJDK and then want a TCK like the Harmony project did?

      Scala is just C++ for the JVM. It's got the same schizophrenic feature set that makes it a terrible language but without the upsides of C++ (great performance and memory usage).

      If you want native Scala you already have it, it's called C++.

      --
      Mod me down, my New Earth Global Warmingist friends!
    40. Re:Why are people still using this? by Pieroxy · · Score: 1

      Swing is anything but simple. I'd dare call it fragile. It's not a library you can just jump in and program with. You need to understand the intricacies of the threading model before you can start soing anything good with it.

      Hence, I still can blame the language from coming with an overly delicate UI library.

      And yes, it is perfectly possible to make a good app with swing.

    41. Re:Why are people still using this? by VGPowerlord · · Score: 1, Interesting

      It really depends on what you're doing. If you're developing a database-backed website, I suspect that the Java solution* would be the quickest to deliver, followed by Python with C/C++ coming in dead last.

      *That is assuming that the dev team uses appropriate technologies such as Spring and Hibernate, and not straight Servlets/JSPs/JSFs and JDBC.

      --
      GLaDOS for President 2016! "Well here we are again. It's always such a pleasure." -- GLaDOS, 2011
    42. Re:Why are people still using this? by FloydTheDroid · · Score: 2

      All those things are artifacts of how crappy java is, in order to get anything done you need a metric ton of framework crap slapped on

      A C++ developer wouldn't necessarily embed a webserver into his code, instead expecting to reuse the existing web server infrastructure.

      I'll never understand why anyone thinks that having a large framework available is bad? Just because they supply you with a framework doesn't mean you have to use any of it at all.

      Saying that java is crappy because it uses libraries but then you proceeding to list libraries for C++ doesn't make sense. We don't develop green screens of text anymore... there's nothing wrong with using libraries or the best tool for the job.

    43. Re:Why are people still using this? by Pieroxy · · Score: 1

      That's not addressing the problem, that's doing it wrong. I mean, imagine facebook with a policy like that. How do you scale?

    44. Re:Why are people still using this? by Anonymous Coward · · Score: 1

      Why is it that whenever I see a criticism of Java, it's almost always a poorly informed one? You don't have to use the framework, but the web frameworks will most certainly make your life easier. There's a ton of them, and at the very least they're generalized down to the request/response, so it's hard for me to believe you couldn't find a framework that doesn't help you out quite a bit with some part of your project.

      I find your comment about how you "need tomcat to host java beans and pages" but for C++ you can "just run off Apache" to be a very odd comment. It' would seem that you personally aren't familiar with Tomcat, and are familiar with Apache. That's a pretty poor reason to tell other people to use one tool over another. I've used both, and they both have strengths and weaknesses just like anything else.

    45. Re:Why are people still using this? by Anonymous Coward · · Score: 1

      Seriously, nobody says development has to occur in Java. But it's not like the end user necessarily has a choice in the matter. And I'm far more worried about the stuff my people have to use from third parties - I can't just "turn off Java" or migrate to something else without significant time/money that I don't have to spend. ("Won't somebody think of the USER?" :D )

      And I'd guess, paraphrasing Robert Heinlein, that the answer to most all questions starting with, "Why?" is, "Money."

    46. Re:Why are people still using this? by VGPowerlord · · Score: 1

      All those things are artifacts of how crappy java is, in order to get anything done you need a metric ton of framework crap slapped on, and this is why people say "java is fast to develop in" - they mean, the frameworks make it faster to develop stuff, as long as you're developing exactly the kind of thing those frameworks are designed for. C/C++ world tends to have libraries that provide you with functionality you then plug in to your code, rather than having to code the way the framework wants you to (roughly).

      You could use Ruby on Rails

      Hypocrisy detected! Please check the highlighted sections.

      --
      GLaDOS for President 2016! "Well here we are again. It's always such a pleasure." -- GLaDOS, 2011
    47. Re:Why are people still using this? by RabidReindeer · · Score: 2

      Performance. Flash may be pure hell, but at least it runs, and doesn't bring one's Web browser to a lurching halt like Java does.

      No, it just causes my browser to slowly scroll to the ends of very long pages with no way to regain control over that or any other browser window until it's done, short of killing the browser itself and all browser windows, downloads, etc.

      As for Java version and platform issues, I call BS. Java is the ONLY programming environment (not just language) that I know of that has explicit deprecation mechanisms built into the core spec so that things will continue to run long after they're obsolete. And anyone who's writing OS-specific code in Java applets doesn't deserve the 13 rupees/hour that they were paid to do so. Java was explicitly designed to be OS- and hardware-independent. They even sued Microsoft - and won - in the battle to make SURE it stayed OS- and hardware-independent.

    48. Re:Why are people still using this? by Anonymous Coward · · Score: 1

      On the other hand, the very same thing is the biggest disadvantage: You accidentally introduce a bug? Instantly, everyone will have the bug. And not even have the option to avoid the bug in return of reduced functionality.

      What you are producing is effectively a monoculture. And monocultures are very prone to infections. Yes, the old version someone is running will have bug X which you eliminated in the new version. But at the same time it will not contain bug Y which you introduced at the same time, and which you probably don't even know about. So some people will be affected by bug X, but not bug Y. Others will be affected by bug Y, but not bug X. So unless an attacker targets both X and Y, no matter which of the attacks he chooses, he'll be successful only for some of the targets.

      Not to mention that with web applications, you still have to deal with users using different local software, namely the browser; just that you don't make that software yourself and therefore don't even have control over their security problems. And since that software is also used to access a lot of other web services, you can be sure that it is a much more likely target for exploits than a self-written local client.

      And finally, if you have to change (as opposed to simply extend) the API each time you release a new version of the client, IMHO you've done something wrong.

    49. Re:Why are people still using this? by RaceProUK · · Score: 1

      No runtime generics

      I seem to remember generics being added in SDK 1.5, but maybe I'm thinking of a slightly different type of generics to what you're thinking.

      --
      No colour or religion ever stopped the bullet from a gun
    50. Re:Why are people still using this? by Anonymous Coward · · Score: 1

      Such a comment suggests you're not aware of the Python frameworks which makes things like that trivial and fast. Its extremely unlikely Java would score the win there.

    51. Re:Why are people still using this? by binarylarry · · Score: 1

      Yep there are compile time generics in Java, but they're stripped out when compiled to bytecode. So at runtime, they don't exist.

      It's not as big of a deal as some .NET pundits would claim (.NET has runtime generics) but it'd be nice.

      --
      Mod me down, my New Earth Global Warmingist friends!
    52. Re:Why are people still using this? by oakgrove · · Score: 1

      Personally I like the Eclipse UI but blaming your dislike for it on Java seems a bit misplaced to me. IntelliJ and Netbeans are both written in Java and lots of people rave about them. As far as other popular applications written in Java there is Azureus, Oxygen XML, RSSOwl, Matlab, and plenty more. I'm sure you can nitpick them all but the same goes for applications written in any other language.

      --
      The soylentnews experiment has been a dismal failure.
    53. Re:Why are people still using this? by Blakey+Rat · · Score: 1

      I haven't tried IntelliJ, but Netbeans can't even render a font in the correct size. Seriously. It's that awful.

    54. Re:Why are people still using this? by Anonymous Coward · · Score: 1, Funny

      P'shaw, all you have to do is use java quickstart. On my PC JQS was somehow performing about 10GB of reads per day. So everything that needed to hit the HDD ran with long random delays. But at least java things started quickly, right?

    55. Re:Why are people still using this? by Pieroxy · · Score: 2

      Of course, you have the pros of your cons.

      And finally, if you have to change (as opposed to simply extend) the API each time you release a new version of the client, IMHO you've done something wrong.

      However, with AJAX you don't have to do that anymore. You can very well release a new API without touching your UI and you can release a new UI without releasing new DATA API. Look at gmail for example. They now have at least 5 different UIs (mobile, new, old, pure html, tablet, ...), and trust me, they have only one DATA API.

      As surprising as it may seem, the web has evolved since 1995.

    56. Re:Why are people still using this? by oakgrove · · Score: 1

      It's not really about laziness but about developer time = money. Java is faster to develop in than C and in the server environment it excels in, performance is really good. And Java Applets are a business staple that makes a lot of sense in a distributed corporate environment. There are also a ton of libraries for just about anything you're likely to ever want to do so why wouldn't you use it?

      --
      The soylentnews experiment has been a dismal failure.
    57. Re:Why are people still using this? by Nadaka · · Score: 1

      Memory footprint is Java's other issue.

      It's not so bad now that desktops have multiple gigs of ram, but on mobile and embedded systems it can still pose problems.

    58. Re:Why are people still using this? by Nadaka · · Score: 1

      This is true, because they are too busy trying to track down the memory leaks they caused.

    59. Re:Why are people still using this? by fdrebin · · Score: 1
      I agree with AC who said it is possible to write beautiful, maintainable perl. I have done so, and worked on a team of 6 writing nothing but perl for 2 years, and our code was as clean or cleaner than most of the C & C++ I've been involved with over the past few decades

      I will also agree that it is also possible to write perl that is practically indistinguishable from line noise. It just takes discipline.

      /F

      --
      Stupidity... has a habit of getting its way.
    60. Re:Why are people still using this? by Wootery · · Score: 1

      Wrong.

      Cython is a language that makes writing C extensions for the Python language as easy as Python

      As for your "reference implementation" pedantry, it's clear in

      What the fuck do you think you were using

      that he's referring to CPython being the most widely used Python implementation, and that it's implemented in C.

      That's not to say AC is correct, though: performance is a valid reason to rewrite Python code in C.

    61. Re:Why are people still using this? by davewoods · · Score: 1

      Not always, I think it depends a lot on the relativity of it all.

      Back when IM was a big thing, everyone was using multiple chat clients, then GAIM (Now Pidgin) came around and rolled everything into one nice package. The program itsself had a few bugs, i.e. "Fairly stable", but given the alternative, it was vastly superior to running multiple chat programs to have access to all the various protocols I required.

      Back then, I somehow managed to find friends that used AIM, MSN, ICQ, and Yahoo. I had to have some way of communicating with them without blocking off 90% of my 15" screen real estate, and the "Fairly stable" GAIM was the ticket.

    62. Re:Why are people still using this? by gbjbaanb · · Score: 1

      I make a distinctions between a library - where code is available for you to plug into your code, and a framework where your code has to be plugged into it.

      Sure they both provide features to make your life easier, pre-rolled code, the distinction is how they do go about it. Frameworks nearly always expect you to do things their way, but if you need to go beyond that, the framework starts to hinder you. a library doesn't have that flaw.

    63. Re:Why are people still using this? by elfprince13 · · Score: 1

      What are you ramblng about w.r.t. to Cython? It is a derivative of Pyrex, and it should not be confused with CPython. Being "easy as Python" is not the same as Python - and having written a good deal of both Cython AND Pyrex code, I can tell you they aren't nearly the same language as Python (support for strong typing, for example). And the AC could very well have been working with Unladen Swallow, IronPython, Jython, PyPy, etc. None of those CPython, but they are also implementations of the Python language. Don't use equivalence relations for things that aren't equivalent.

    64. Re:Why are people still using this? by bondsbw · · Score: 1

      .NET 4.x is a great development platform even without Entity Framework (which I don't use or need to use). It stands heads and shoulders over Java in probably every way except cross-platform compatibility, which is not a use case for which I develop.

      --
      All my liberal friends think I'm a conservative, all my conservative friends think I'm a liberal.
    65. Re:Why are people still using this? by metamatic · · Score: 1

      On the desktop, I've yet to see a single application written in Java that didn't have huge flaws, even if you ignore the huge flaws in the JRE itself.

      Try jEdit.

      --
      GCHQ Quantum Insert installed. If only our tongues were made of glass, how much more careful we would be when we speak
    66. Re:Why are people still using this? by maxwell+demon · · Score: 1

      Perhaps most moderators these days simply don't realize they are themselves a troll via troll moderation.

      So you say that's not the purpose of the "Troll" moderation? Then why does it say "Troll"?
      Next you'll tell me that "Funny" moderation is not about the moderator being funny!

      SCNR :-)

      --
      The Tao of math: The numbers you can count are not the real numbers.
    67. Re:Why are people still using this? by VGPowerlord · · Score: 1

      Was it advice or an opinion? Who first used the phrase "for every purpose" .. was it the parent or was it you?

      It was implicit when the GGP suggested using C/C++ instead of Java.

      --
      GLaDOS for President 2016! "Well here we are again. It's always such a pleasure." -- GLaDOS, 2011
    68. Re:Why are people still using this? by VGPowerlord · · Score: 1

      We were talking about using Java on the server side, not the client side.

      Thanks for playing, though!

      --
      GLaDOS for President 2016! "Well here we are again. It's always such a pleasure." -- GLaDOS, 2011
    69. Re:Why are people still using this? by Jonner · · Score: 1

      You sound like someone who shouldn't be giving technical advice.

      C/C++ has advantages over Java, just like Java has advantages over C/C++

      Saying you should use one over the other for every purpose is foolhardy.

      You can develop web site extensions in C++. It's a new-fangled technology called "ActiveX" and it's much more secure than Java applets.

    70. Re:Why are people still using this? by Fender+Gibson · · Score: 1

      How about Eclipse? I think that's pretty good...

    71. Re:Why are people still using this? by Jonner · · Score: 1

      I'm currently doing my internship at the IT dept. of a joint-municipal group responsible for about 15k windows computers(mostly for schools, vocational schools and a uni of applied sciences) and today the department heads made the decision to uninstall java from all machines except those in lab networks disconnected from outside world.

      It sounds like you're really interested in security, so while you're at it, uninstall Internet Explorer too.

    72. Re:Why are people still using this? by Pieroxy · · Score: 1

      Java Applet are a horrendous piece of crap. Everyone agree on this. Even on this thread. Thanks for playing though.

    73. Re:Why are people still using this? by theshowmecanuck · · Score: 1

      I knew a guy who preferred to right web apps in C as opposed to servlets, php, perl, whatever. This was in 2005. He did them for the corporate internal site, and they were pretty good. Not saying I would, but it does break the mold on what people think can or should be done.

      --
      -- I ignore anonymous replies to my comments and postings.
    74. Re:Why are people still using this? by theshowmecanuck · · Score: 1

      right... right... write... right

      --
      -- I ignore anonymous replies to my comments and postings.
    75. Re:Why are people still using this? by blippo · · Score: 1

      Wait, what?

      Have you ever tried compiling a couple of years old C++ code? Or actually compiled any code at all?

      Java's best strength is the platform - the well defined vm-spec and the rock-solid api that is almost totally backwards compatible.
      The language itself is stringent, which is really nice except in those places that it's causes som verbosity.
      The jvm:s are quite nice, fast and with good gc.

      The biggest problems are the lack of anonymous methods, and it's large userbase that includes a lot of morons, beeing an enterprisy language...

      The GUI integration on the client side, sucks though. Even a simple thing as naming runnable jars as jxe is not thought of...

    76. Re:Why are people still using this? by Anonymous Coward · · Score: 1

      I work with C# day-in and day-out, and I've found the Entity Framework to be somewhat of a pain in the ass.

      - You're limited to LINQ, which is a poor replacement for SQL.
      - Referential integrity is a joke. SQL enforces it one way, EF enforces it another. The two methods often conflict.
      - You can't drop back to a basic SQL query without going back to ADO.NET anyway.

      Maybe I'm just old-fashioned, but I find it much easier to use a SQL Server project in Visual Studio to build tables, stored procs, functions, etc. and then have a nice way to deploy all of that. Just right-click the project, click "Deploy", and watch VS make a schema file, compare it to an existing database, and merge all of your changes into a live database. It doesn't get any easier.

      System.Data.DataTable is more of a tool than a system. There are few restrictions on how it can be used, and it can be a handy replacement for more finnicky data structures (like hashtables, dictionaries, and nested lists). It also "just works" with 99% of anything that can be data-bound, including WPF stuff.

      I agree with you on not having the patience to use anything but C# (without a damned good reason). It really is that much easier than everything else, including its spiritual predecessors, C and Java. Also, the part about Hibernate being a hack... most ORM's are. They're a perfect example of the "sausage and code" principle.

    77. Re:Why are people still using this? by blippo · · Score: 1

      I needed more control over the serial port than the available serial libraries could give, so I rolled my own.

      It took me a couple of hours to implement a jna wrapper around linux terminal interface, without any suicidal tendencies, and I
      ended up with 700 lines of code... It's yours if you wan't it....

      JNA is quite nice, actually.

             

    78. Re:Why are people still using this? by Compaqt · · Score: 1

      Are you referring to the fact that you can't call into the GUI libs when you're handling events?

      Other GUIs work like that, too.

      --
      I'm not a lawyer, but I play one on the Internet. Blog
    79. Re:Why are people still using this? by Pieroxy · · Score: 1

      From what I remember, you can call the GUI lib in an event handler. You can call anything, but while handling the event, the UI is frozen. What you cannot do is modify the state of a GUI object while in any other thread than the "Swing Thread". The "Swing Thread" is the only thread allowed to touch anything UI related.

      The result is that you end up with countless anonymous "runnable" classes that you feed the Swing Thread for later execution.

      The concept holds water, but it is a pain to program with and it also is very fragile because calling anything UI related through another thread will have consequences that are no always immediately visible nor obvious.

    80. Re:Why are people still using this? by RabidReindeer · · Score: 1

      Java was explicitly designed to be OS- and hardware-independent. ....

      I take it then that you've never tried to write Java code that needs to communicate with USB or Serial devices. It cannot realistically be done in an OS independent manner.

      Been there, tried to "done that". Decided to shoot myself instead *

      Truthfully, it CAN be done. But it's a huge PITA.

      * Well, almost.

      That's getting the cart and horse transposed. JAVA was designed to be OS- and hardware-independent. If the OS or the hardware isn't independent, Java doesn't (directly) support it. It was, in fact, a major struggle to get environment variable access into Java, since not all OS's support environment variables. The war was only won when Sun realized that there was no net difference between no environment variables and an empty set of environment variables.

      I have, BTW, done serial programming in pure Java, but it was so long ago, I don't remember any of it. Java can also work with USB devices providing they present themselves as abstract filesystem mechanisms. However, if you want access to the guts of things, Java isn't designed for that, since, as you pointed out, such code isn't "write once/run anywhere", because the underlying hardware isn't "write once/run anywhere". Not just in Java, but in in C, C++, Python, Haskell, Perl, whatever. To get support for specific hardware attributes, etc., you need JNI to bridge the gap between the abstract and the specific, and JNI is not intended for portable code.

    81. Re:Why are people still using this? by godefroi · · Score: 1

      What sort of software do you write?

      --
      Karma: Poor (Mostly affected by lame karma-joke sigs)
    82. Re:Why are people still using this? by godefroi · · Score: 1

      I don't write in Java either, but I wasn't necessarily talking about Java. Doing things the "Java" way certainly requires a lot of boilerplate, but if the "Java" way sucks, there's noone holding a gun to your head...

      --
      Karma: Poor (Mostly affected by lame karma-joke sigs)
    83. Re:Why are people still using this? by Wootery · · Score: 1

      Now I see what you're saying, and yes you're right -- I misread both your post, and X0563511's :P

      Don't mind me.

    84. Re:Why are people still using this? by KlomDark · · Score: 1

      I haven't used EF against anything but MSSQL, so haven't ran into what you've experienced. Although I'd be hesitant to use it with something else, there's no way you'd get the deep integration with a third-party database server. But for solutions based on MSSQL, there's nothing better I've seen in any world.

      3. Usually when I run into issues like that, I'm doing something stupid. There's a few cases (Like working with Full Text Search) where I drop back and use a stored proc, but 99% of what I do, EF and Linq has not let me down.
      5. Check your project configuration, you can set it to push out the same version of EF that you used for development.
      6. Who the hell is modifying the database schema in production without going through proper QA? That's a management issue, not an EF issue.
      7. See #5

    85. Re:Why are people still using this? by KlomDark · · Score: 1

      PS, I built TonsOfCards.com (A site for sports card collectors, buyers, and sellers. Apologies for the blatant shilling...) entirely on EF 4.3.1 and it just flies, so it's definitely useful in production with sorta-big data (16 gigs with millions of records in the database currently)

  6. *sigh* by Anonymous Coward · · Score: 1

    Just like with the flash thing, it doesn't matter if YOU ditch it, we need websites to ditch it as well.

    1. Re:*sigh* by JDG1980 · · Score: 1

      Just like with the flash thing, it doesn't matter if YOU ditch it, we need websites to ditch it as well.

      What public websites still require Java? I haven't had this crap installed on my home PC in 3 years and I think I may have seen one random personal website that wanted it (and even then it was for menu buttons or some nonsense, nothing essential).

  7. Does anybody know? by Chrisq · · Score: 1
    The remark " Is it really time to ditch Oracle's java and go for an open source VM?" does not appear anywhere in the article. Does anyone know:
    1. is this a JVM or a library problem; from the description it sounds more likely to be a library issue
    2. Does this exploit also exist in open source implementations such as Apache Harmony or the OpenJDK?
    1. Re:Does anybody know? by makomk · · Score: 1

      Apparently it's a security regression in the JDK, was analyzed and then patched in IcedTea yesterday

  8. Ask Toolbar Really ? by Anonymous Coward · · Score: 5, Insightful

    This is the programming language that still bundles the "Ask Toolbar" crapware with their installer. Nuff said.

    1. Re:Ask Toolbar Really ? by GuldKalle · · Score: 1

      Nitpicking: It's not Java the language that bundles it, it's Java the VM.

      --
      What?
  9. Developer liability by Bogtha · · Score: 2

    As a developer, I totally understand the problems with holding software developers liable for security vulnerabilities. But when it comes to cases like this, I can't help but think there should be some legal liability for mega-corporations knowingly distributing vulnerable products.

    --
    Bogtha Bogtha Bogtha
  10. Re:Ditch Java entirely. by hsmith · · Score: 3, Insightful

    I mean, it is hard to run a business if you aren't running a profit and generating income.

  11. No by ExE122 · · Score: 5, Interesting

    This is not a sign that you need to start ditching Oracle. The reason more security loopholes are discovered in Oracle are because it is the most widely used JVM. Other VMs will still have a ton of issues, they just don't get attacked as much (yet).

    A similar argument used to be debated years ago with Apple v Microsoft... Apple toted it's superior security over MS when in reality, nobody gave a crap about attacking Mac users which only made up 10% of the market. Once they gained popularity, they started getting hit more as well.

    The real scary part is that MS at least takes its security flaws somewhat seriously. Oracle seems to have smugly ignored Mr. Gowdiak. He can now smugly turn around and give them a big "I told you so!"

    --
    Capitalism: When it uses the carrot, it's called democracy. When it uses the stick, it's called fascism.
    1. Re:No by X0563511 · · Score: 5, Insightful

      The real problem here is the quarterly patch cycle that seems to ignore the severity of security bugs. If you want to do a quarterly cycle that's fine - but you need to make exceptions for security bugs.

      --
      For large sets, this will be our guide even unto death, for the LORD will work for each type of data it is applied to...
    2. Re:No by geekoid · · Score: 2

      It isn't the loopholes, its the lack of response from Oracle that's the issue.

      --
      The Kruger Dunning explains most post on /. http://en.wikipedia.org/wiki/Dunning%E2%80%93Kruger_effect
    3. Re:No by geekoid · · Score: 1

      Billions of Java apps run cross platform with no problems.
      WTF is your problem?

      --
      The Kruger Dunning explains most post on /. http://en.wikipedia.org/wiki/Dunning%E2%80%93Kruger_effect
    4. Re:No by BanHammor · · Score: 2

      I don't honestly know about OpenJDK/IcedTea (The open-source reference implementation of Java.), but other open-source projects, even though they get a fair share of vulnerabilities, fix them quickly (look at openssl, or Linux kernel). Oracle Java does NOT fix security bugs quickly. That's the problem.

    5. Re:No by pointyhat · · Score: 5, Interesting

      Dear Blakey Troll,

      Java desktop application guy here

      Last place I worked, I was the lead architect for a real-time patient care system deployed to 120,000 users across 2500 hospital sites around western Europe across Windows, Linux and Solaris platforms.

      It stopped the users' patients from dying, so they are quite happy with it as are their patients. It is incredibly fast (2 orders of magnitude faster than the C++ based MFC native Windows app our competitor was throwing out), it has had no downtime (ever!) by nature of the architecture which must not go down under any circumstance (everything was fully distributed), the UI definitely does not suck and it's certainly not bloated at 52Mb including the JVM (our competitor hit 2Gb including the local SQL server instance installation).

      What do you propose we use instead and how do you propose we start rewriting the 1.9 million lines of code we've already got?

    6. Re:No by Blakey+Rat · · Score: 4, Funny

      Yeah, Lotus Notes "runs" also. Lots of shitty software "runs". My minimum bar isn't "runs" but is "not shitty".

    7. Re:No by pointyhat · · Score: 5, Interesting

      No - you are actually totally clueless here and are just trying to get karma by jumping on the anti-Java bandwagon.

      No our application is not contributing any such risk whatsoever:

      1. We shipped the JVM with the application in its own standalone directory. No applets, no browser plugins. It's launched by a wrapper exe on windows and a script on Linux+Solaris. Basically it runs java[.exe] -jar application.jar. There is no target vector for this exploit.

      2. we ship JVM 1.6 which is not vulnerable.

      3. It uses SWT which looks native on all platforms - look it's not ugly at all: http://www.eclipse.org/swt/

    8. Re:No by pointyhat · · Score: 1

      My point is there is no equal. We couldn't have delivered it with Python, Ruby, C, C++ or any other platform out there. Our competitors were struggling along adding features and dealing with maintenance issues with C++/MFC/Win32. It took us less time to build from scratch than it took them to get an interim release out of the door. Survival of the fittest.

      You said that the UI sucked. Based on your previous comments, I assumed you were naive enough to consider that to be appearance. I do not claim to be a usability expert (I doubt that there is such a thing as it's subjective and look where 'usability experts have left us': unity, metro, gnome 3). We had three experts from the target market and three separate input paradigms based on whether or not you had a probe or instrument in your hand or whether you just sat behind a normal workstation. None of the UI's "sucked" for the users either with respect to usability or appearance.

    9. Re:No by pointyhat · · Score: 1

      I think you nailed it here.

      I'm currently waiting for someone to build me a new workstation after a disk failure so I have nothing better to do than to sit here and get paid to do this. Life is bliss.

    10. Re:No by Anonymous Coward · · Score: 1

      Java 2 orders of magnitude faster than C++ ? I'm gonna have to call you out on that one. It may be faster than what your competitor was "throwing out" but that only means your competitor is incompetent.

      How much hardware are you throwing at that no downtime claim? How much does your competitor require? I run Java servers for a living and it goes down all the time. Sometime not even down, just needs a restart of the JVM. Sometimes only a recompile of the code will fix it (note, we do not change a single line, not even a comment, just recompile). Sometime, java just breaks. It's a fact of life. If my life depended on a Java program, I'd update my will.

      1.9 million lines of Java code? You have what I believe is the ultimate goal of Java - a job for life. Nobody is going to want to take that on and maintain it. I propose you demand a raise every 3 months.

    11. Re:No by Anonymous Coward · · Score: 1

      If you think "looks native" has ANYTHING to do with usability, you are entirely unqualified to judge the usability of an app. So I stand by my statement that your app is an unusable mess.

      On the behalf of all programmers, fuck you. You've never seen his software, never used his software, and you are in no way fit to judge it He fucking made something. He poured his blood, sweat, tears, and effort into it. He was under massive amounts of pressure to create mission-critical software that must not fail. It kept him up at night as he struggled with design and implementation decisions. It frustrated and delighted him, confused him at some times and at others enlightened.

      What have you done, besides be a little bitch on the internet? Perhaps you should look within to figure out why you're compelled to drag everyone down to your level of mediocrity. Do some shrooms, realize you're not special. Be a creator not a detractor.

    12. Re:No by VGPowerlord · · Score: 4, Informative

      If you think "looks native" has ANYTHING to do with usability, you are entirely unqualified to judge the usability of an app. So I stand by my statement that your app is an unusable mess.

      SWT doesn't just make it look native, it calls the OS's underlying libraries... SWT is (formerly) IBM's Java Native Interface library, written in C to do those calls. As such, its C code is wildly different on each OS. For that matter, the Linux/BSD versions require that GTK be installed, because there is no QT version of SWT.

      --
      GLaDOS for President 2016! "Well here we are again. It's always such a pleasure." -- GLaDOS, 2011
    13. Re:No by Billly+Gates · · Score: 1

      Java is here to stay in the corporate desktop. Manpower, Kronos, and a half dozen other intranet apps use it. Almost all banks require it for the finance and accounting departments. I am not talking of just checking money in a portal. I am talking about sophisticated lines of credit and finance analysis apps that need to use security exploits to communicate to excel for them.

      Because of this require ancient insecure versions. Some still only work in java 1.4 in XP. THis is the biggest pain. If the software worked in all versions of modern java that a sys admin could update without worrying about compatility.

    14. Re:No by ifrag · · Score: 1

      Then your competitor (if they can be called that) is garbage and it's no surprise at all they didn't get picked. Obviously there's no need to change anything at all. The question would have been far more interesting if the competitor actually did something better.

      --
      Fear is the mind killer.
    15. Re:No by GuldKalle · · Score: 1

      "Not shitty" is entirely up to the programmer. You bitch and bitch, but you provide no reason. Where does "the UI" fall short? Why is WORE not working?

      --
      What?
    16. Re:No by Golden_Rider · · Score: 1

      Because of this require ancient insecure versions. Some still only work in java 1.4 in XP. THis is the biggest pain. If the software worked in all versions of modern java that a sys admin could update without worrying about compatility.

      So true. The one thing I hate most about Java (on the desktop) is that despite all the claims of "Java works anywhere, on all platforms", it just doesn't. For some disgusting reason, many admin tools (HP iLO, IBM RSA, web interfaces for switches, pass-thru modules of IBM Bladecenter, ...) all use Java. And many of them are not happy with the current, mostly secure version of the JRE, they ONLY work with older versions (e.g. the FC pass-thru module of the Bladecenter H we recently got brand new explicitly states it ONLY works with 1.4.2). So I need to run a couple VM with various (known unsecure) versions of the JRE just to cover all the stuff I need to connect to. And it's also fun if we want to roll out security updates to our servers and application administrators tell us to please NOT update Java because it would break their applications.

    17. Re:No by putzin · · Score: 1

      Saying Lotus runs requires a better metaphor to counter than all the smartest minds on earth are capable of.

      --
      Bah
    18. Re:No by pointyhat · · Score: 4, Interesting

      Seeing as I made a claim, I'll explain further.

      No it's definitely faster if you know what you are doing. The reason C++ is "fast" is that you can easily sacrifice clean interfaces and modularity for raw performance i.e. by using raw memory and pointers etc. The moment you throw that away to build clean interfaces and modularity in (which is essential on larger projects like ours), your performance advantage goes out of the window. We're not doing it wrong - we're leveraging the right technology. It's easier to make serious mistakes in C++ as well and the additional checks required to verify that they are not being made are expensive. In Java, most of this is handled at compile time (g++ checks+valgrind are not sufficient btw).

      Regarding downtime. Consider CAP theorem. We use a PAXOS consensus algorithm based protocol between nodes and our own event driven message-oriented container which runs inside the client process. Effectively the system, per-installation is a big message bus. There is no central point of failure. There are no servers to fail. If a single node is up, the system is operational. Scalability comes from CAP theorem - we sacrificed C (consistency) yet apply P (partition tolerance) and A (availability). We have unique reliability requirements which means we don't use a COTS container like Tomcat, Glassfish or Jetty which is what you are most likely used to.

      1.9 million lines is due to the complexity of the product - the task it is required to do is not easy to visualize, is processing heavy and is complex. We also have about 2.9 million lines of jUnit and selenium RC tests. It's modular and well maintained as it's built by people who know what they're doing.

      I earn plenty thank you.

      This is a proper software engineering project, not a startup, internet fad, cost cutting low-rate business.

    19. Re:No by OdinOdin_ · · Score: 1

      Why use SWT at all I found it to be a collection of lowest common denominator APIs. Just use Qt directly in Java via the QtJambi project.

      IMHO If the SWT on Qt project should get more traction in the future it is better throught of as being an "SWT compatibility layer (to help migration away from SWT)" since the direct Qt API in Java is so much better and that API already works on the big 3 desktop enviroments (Windows, Unix and MacOSX). So what purpose does SWT continue to serve.

    20. Re:No by pointyhat · · Score: 1

      SWT works with selenium nicely.

    21. Re:No by VGPowerlord · · Score: 1

      Why use SWT at all I found it to be a collection of lowest common denominator APIs. Just use Qt directly in Java via the QtJambi project.

      IMHO If the SWT on Qt project should get more traction in the future it is better throught of as being an "SWT compatibility layer (to help migration away from SWT)" since the direct Qt API in Java is so much better and that API already works on the big 3 desktop enviroments (Windows, Unix and MacOSX). So what purpose does SWT continue to serve.

      SWT doesn't require a third-party UI library on OSX or Windows and thus acts like native programs do (since it's using native widgets).

      --
      GLaDOS for President 2016! "Well here we are again. It's always such a pleasure." -- GLaDOS, 2011
    22. Re:No by pointyhat · · Score: 1

      The application is 52Mb. The data varies between 400Mb and 1Tb per node depending on the installation size and imaging data.

      It is 100% uptime. It's up whilst it is turned on. It is designed so that a node failure and network failure is not important (eventual consistency) - in fact the nodes regularly power fail when they are taken offline to be moved around (some are attached to medical imaging platforms). It is not one single monolithic system - it's fully distributed.

      Erlang gets the wrong end of the stick. We evaluated it and threw it out. The conclusion is that the language/VM doesn't matter. The architecture, data model and communication medium does.

    23. Re:No by pointyhat · · Score: 1

      The competitor did have the better product. Ours was a naff embedded+C system. That's why we built this one, so please invert your argument.

    24. Re:No by tibit · · Score: 1

      Due to hotspot, Java is faster than any other non-JITted implementation of any programming platform, so perhaps comparing it to Python or Ruby is a bit unfair. As for C++, I'm sure it could have been done. Do you utilize runtime code generation anywhere? Because that's the only thing where Java really wins, it can't be trivially done in C++ other than writing out some code to a pipe or file and running it through the compiler to generate a dynamically linkable library (bleh). Other than that, I don't see anything architecturally that would make Java all that much better. You can do garbage collection, even non-conservative garbage collection, just fine in C++. Sure it won't collect arbitrary classes, but as long as you keep your object tree rooted and only use boxed types as generic types, you can have non-conservative GC in C++ or even C. I'd argue that being able to do manual memory management in C/C++ when you need it for performance is a plus.

      C++/MFC/Win32 in combination is a massive clusterfuck and I'm not surprised at all that your competitors couldn't get anything done right, because doing it "right" would imply pretty much maintaining a fork of MFC and bringing it in line with lessons that have since been learned in C++. Qt is a reasonable example of how to do a portable application development framework in C++. It has some rough edges, but they are nothing compared to MFC, and IMHO even nothing compared to any other popular C++ framework out there.

      --
      A successful API design takes a mixture of software design and pedagogy.
    25. Re:No by tibit · · Score: 1

      Amen.

      --
      A successful API design takes a mixture of software design and pedagogy.
    26. Re:No by tibit · · Score: 1

      The conclusion is that the language/VM doesn't matter. The architecture, data model and communication medium does.

      Ergo, it could have been done in C++ ;)

      As far as I can tell from your description, it is a cool system. Is there a whitepaper about it somewhere? I'd like to learn some new tricks.

      --
      A successful API design takes a mixture of software design and pedagogy.
    27. Re:No by pointyhat · · Score: 1

      Fair point!

      It is pretty cool. There is no whitepaper and I no longer work at the organisation unfortunately so publishing one is not likely. I will write it up in a blog post and post it against this at some point in the future (when time allows). None of the information is covered by proprietary rights in my contract so I can say as much as I like :)

    28. Re:No by pointyhat · · Score: 1

      There is no runtime code generation done. Everything is done at compile time. We have a custom written annotation processor that allows pre/post/invariant condition checks throughout the code. That is the only code generation.

      The application is modular (similar approach to OSGI) so it loads components at runtime on first request. This allows startup times to be minimal. There approximately 85 components which assemble themselves into the application at runtime on demand. This is not possible with C++ unless you resort to things such as CORBA, COM or at a low level dlopen, all of which multiply complexity. Have you ever tried memory management with CORBA? - it's horrid!

      I know you can inject the Boehm GC into C++ for example and use your boxing methodology, but that still leaves plenty of windows open and is just trying to turn C++ into Java (why bother?).

      Agreed about MFC/Win32/C++ - whilst the NT kernel is a really elegant piece of engineering, the Win32 subsystem on top is a steaming pile of dung. I'd rather have liked to have seen the OS/2 subsystem survive a little longer...

      I've used Qt (commercial) extensively (on QNX) and it's not up to the job at hand here. The support is good but you need it too often.

      If I was to pick an alternative to Java for this, I would probably pick Go with GCCGO and not C/C++.

    29. Re:No by tibit · · Score: 1

      I don't think anyone bothers to call dlopen() directly anymore if a decent framework is available. Look at Qt Creator. It's all plugins, about as many as the number of components in your application. Writing modular applications in C++ is not hard.

      I'd pick Go too, but that's a bit technically risky it seems. C++ has solid multivendor support.

      --
      A successful API design takes a mixture of software design and pedagogy.
    30. Re:No by tibit · · Score: 1

      Please do, and I do appreciate any time you'll spend writing it up.

      --
      A successful API design takes a mixture of software design and pedagogy.
  12. IBM by Spiked_Three · · Score: 3, Interesting

    Whatever happened to them? Didn't they at one time have a Java implementation?

    I'm not ready to give up on Java. It is not because I think it's the best, I still think C# beats it as a language, but at times when a client requires non-microsoft, it is my only choice for a modern language. Yeah, I know C++11, I've looked at it quite a bit, and it is better than it was, but as long as it needs header files, I don't put it into a modern language category.

    So, anyhow, Eclipse seems to have really gone in the dumpster as far as quality lately, and IBM is silent as a Java leader too. Is IBM bailing on Java? I see the have a new big push to virtualization to a level that makes sense, by using a mainframe. Maybe they have (bailed). So what post java, other than c#, is available?

    --
    slashdot troll = you make a compelling argument I do not like the implications of.
    1. Re:IBM by pointyhat · · Score: 1

      There genuinely isn't anything out there which matches it at any level simply because you can kick out functionality that works and has test coverage in unbelievably short amounts of time. I discount C#/.Net because the community is shitty and it is definitely not cross platform (sorry Mono - but you don't do WWF+WCF+WPF properly so you don't count).

      There is no post-Java (yet).

      Please don't mention virtualization - stupid fucking idea designed to generate even more revenue from people who don't actually get the fact that their servers can run more than one cleanly isolated process without having to invoke a VSphere license cost...

    2. Re:IBM by Simon+Brooke · · Score: 5, Informative

      Whatever happened to them? Didn't they at one time have a Java implementation?

      IBM's Java work is now part of OpenJDK. How close OpenJDK is to Oracle Java and whether it shares this exploit I don't know (although the OpenJDK home page says they are '...based largely on the same code'), but if it does it should be patchable.

      I'm not ready to give up on Java. It is not because I think it's the best, I still think C# beats it as a language, but at times when a client requires non-microsoft, it is my only choice for a modern language. Yeah, I know C++11, I've looked at it quite a bit, and it is better than it was, but as long as it needs header files, I don't put it into a modern language category.

      I could happily give up Java, but I wouldn't willingly give up Clojure. There's more (and better) languages for the JVM than just Java.

      --
      I'm old enough to remember when discussions on Slashdot were well informed.
    3. Re:IBM by Anonymous Coward · · Score: 2, Informative

      see http://www.ibm.com/developerworks/java/jdk/

    4. Re:IBM by robmv · · Score: 2

      Java is not the best language out there, but it has a good library of APIs and 3rd party libraries that put any other business application friendly language/runtime below it. You want a better less verbose language? running on the JVM, just try one of the many. I personally recomment Scala

      Note: I am really tired of news like this when people start bashing Java instead of the real problem that is Oracle slow response, IcedTea (and OpenJDK variant used by many Linux distros is already pushing updates for this). I don't see people going crazy with every browser vendor because they had security bugs and you only notice them when you read the release notes for their updates. "Remove Firefox/Chrome from your system, every 6 weeks there are security bugs". If you don't need Java do not install it or remove it, this apply for every software in the world, reduce code that could have vulnerabilities in your system, and if someone still is using applets with new code today, please take him/her to the corner of the room and punish him/her with the donkey ears hat, please

    5. Re:IBM by Viol8 · · Score: 1

      "but as long as it needs header files, I don't put it into a modern language category."

      Sorry , what? Where do you propose putting common definitions then shared by many modules? Or do you seriously think the moronic everything-in-a-class approach of java is a sensible way to do things?

    6. Re:IBM by gbjbaanb · · Score: 1

      So you think web services are non-modern either, as they use a header file - otherwise known as a WSDL.

      That's the way to think of C++ headers, like interface definitions for the implementation cpp files. For that, they work great, so I actually prefer them over a large file with definitions and implementation all listed in it, that you *need* an IDE to figure out what is in each class. At least with C/C++ you can look at the header and see quickly and easily.

    7. Re:IBM by AwesomeMcgee · · Score: 3, Interesting

      I must say, and take a deep breath before reading this so your don't laugh yourself hoarse, but after you're done laughing listen to me. I'm an ardent C# developer for years, but I have found another extremely high level modern language that I would use in place of C# in a non-microsoft shop... Haskell. I know I know.. "academic bla bla bla" whatever, seriously, it's garbage collected, strongly typed, loaded with type inference to help you develop faster, has tons of packages for most things you may want to do, has *nix and windows compilers which will build the same code (you'll just have to swap out the modules you use for FFI to librarys if the dependent libs like UI you use are different).

      Though I preface that with, while people have done UI's in Haskell, the idea to me is mindboggling, and I would just stick with UI in HTML using Haskell to serve web-pages in a non-microsoft shop. I wouldn't use java for UI in a non-microsoft shop anyway, java UI is absolutely gnarly bad and we all know it. If forced to do a desktop UI app in non-microsoft I would immediately be looking at tcl/tk, yes- ugly, but no one can argue with the fact that it always performed very well.

    8. Re:IBM by godefroi · · Score: 2

      What about the D programming language? Object-oriented, memory management, C ABI compatible, compiles down to native code and requires no runtime components, I don't believe. There's a GCC-based compiler, an LLVM-based compiler, and the reference implementation.

      --
      Karma: Poor (Mostly affected by lame karma-joke sigs)
    9. Re:IBM by godefroi · · Score: 1

      I'm not sure what you're saying. Having the "common definitions" inside a class or outside a class is orthogonal to requiring header files. Why can't "common definitions" simply be derived from the source files, as they are in pretty much all "modern" languages?

      --
      Karma: Poor (Mostly affected by lame karma-joke sigs)
    10. Re:IBM by godefroi · · Score: 1

      Except that the programmer doesn't (generally) have to create and manage the WSDL file, it's generated on-demand by the framework or toolkit in use. If the header files were generated automatically behind the scenes, and included where necessary all invisibly, then they'd be great.

      --
      Karma: Poor (Mostly affected by lame karma-joke sigs)
    11. Re:IBM by mark-t · · Score: 1

      .... but as long as [C++] needs header files, I don't put it into a modern language category.

      From a usage perspective, there is no real difference between header files and import statements. The only significant difference between them, in fact, is in their creation, where a programmer must explicitly separate the interface from the implementation.

      As it's entirely possible to write software that generates header files from an implementation (with suitable markup), and this phase can be added to the initial part of any automatic build process, I really wouldn't agree with your notion that this characteristic alone makes C++11 unworthy of the "modern language" category, while at the same time Java or C# would be.

    12. Re:IBM by eyrieowl · · Score: 4, Insightful

      This is something I struggle with. Lots of people would reply "python", but I think they're off their rocker. Yes, python is probably just fine for a lot of website development, and yes, I know some enterprises are using it heavily, but when you dig into it, it's really a hacked up POS that carries WAY too much of its evolutionary baggage. Java certainly has a bit of that as well, mostly in the bundled libraries, but they are much more consistently architected than the Python libraries. Plus, the lack of true multi-threading support is just...unconscionable for a modern language, I think. Yeah, it simplifies things for the hoi polloi, but that should hardly be the standard we aspire to.

      Unfortunately, the only languages I know which have the features I expect from the next great modern language are all research languages at this point. What I'd really like: Start with Java (convenient syntax that is familiar to many people, and a VM with a lot of important concepts). Go through the standard library and rework it to make it consistent, ditch the older paradigms that still hang around to support backwards compatibility. Rework generics, also ditching compatibility but to improve usefulness. Add support for design-by-contract. Add in language level (not library level) features to support fork-join with support for some mechanism to declare affinity between work units and data so that the VM can optimize thread placement and data placement in memory. Add better built in support for both dynamic class creation and bytecode injection. Add a smart/flexible int/float/number types where the VM will take care of sizing depending on how big the number is, something which can flow up to the Big range without needing to keep track of sizes yourself...and crucially, where the math operations work regardless of number size, efficiently (i.e., under the covers, this would mean allowing for a mutable big integer/decimal). Also add support for primitive collections...but do it in such a way that it's made as transparent as possible. This would probably mean it would allow treating primitives as Objects from a parameter passing perspective, so, say, your Map put method would still be put(K,V), but if you used a map which supported primitives (which would be a lot easier to write with the smart-number facility), it would pass a primitive straight through without any boxing/unboxing.

      I'm sure if I thought a bit longer, I could come up with some other features I'd like to see. Importantly, this language still has a VM...I think that becomes more important for the future, not less, as we move to higher core/processor counts and NUMA becomes a bigger and bigger issue. There will always be a place for lower level coding a-la C/C++; but I think that a higher level language really...you need a VM. And, as with the JVM/CLR, I would want the VM for this language to offer support for running bytecode which could be compiled from a multitude of languages. People who have done work developing those sorts of compilers would probably have suggestions on how that could be even better supported, and I certainly think that input would be important for ensuring that support is done right.

    13. Re:IBM by Anonymous Coward · · Score: 1

      This is something I struggle with. Lots of people would reply "python", but I think they're off their rocker. Yes, python is probably just fine for a lot of website development, and yes, I know some enterprises are using it heavily, but when you dig into it, it's really a hacked up POS that carries WAY too much of its evolutionary baggage. Java certainly has a bit of that as well, mostly in the bundled libraries, but they are much more consistently architected than the Python libraries. Plus, the lack of true multi-threading support is just...unconscionable for a modern language, I think. Yeah, it simplifies things for the hoi polloi, but that should hardly be the standard we aspire to.

      The only thing you said there which was reasonable was the threading criticism. The rest is 100% bullshit. Having said that, Python has the multiprocessing module. So while the threading idiocy in Python is horrible, its not like good alternatives don't exist.

      The simple fact is, Python has language features many languages would kill for. Its a powerful and expressive language with a powerful and large standard library and an even richer third party pool of possibilities. Saying its a "hacked up POS that carries WAY too much of its evolutionary baggage" flies in the face of reality.

      Perhaps you'd care to expand on how it is a "hacked up POS that carries WAY too much of its evolutionary baggage." Perhaps you might also care to declare if that's python in general or python 2.x or python 3.x. I would be especially interested given that 3.x addressed almost all of the FEW oddities which surrounds 2.x. And even still, given that there are so few and they rarely actually effect anyone in 2.x, I'd really like to know what the hell your trolling on about.

    14. Re:IBM by Viol8 · · Score: 1

      Huh? A C/C++ header file is a source file. It simply has a different file extension by convention indicating it contains common definitions. At least try and understand what you're talking about.

      And if you didn't have header files how would you expect the compiler to know that variable "foo" used in module bar.cpp but defined in stuff.cpp is - for example - an int? C/C++ compilers compile ONE module at a time, not all of them in one go. They retain some state information for templates and thats complicated enough , but doing it for ALL variable definitions would be absurd given that header files are clear and simple and allow obvious compile time error checking.

    15. Re:IBM by pointyhat · · Score: 2

      Actually no. I think my views on the matter are summed up nicely here: http://whatupdave.tumblr.com/post/1170718843/leaving-net

    16. Re:IBM by tajribah · · Score: 1

      Using threads with locks and other traditional synchronization primitives is a walk across a minefield. More than 90% of multi-threaded programs I've ever seen are full of race conditions and other subtle bugs, which are not easily visible, but which make the program unstable on the long term (it is not unusual that a program suddenly deadlocks after running for several months). If you really want to write something parallel, use a language which provides a better abstraction, one of the possibilities is transactional memory.

    17. Re:IBM by gbjbaanb · · Score: 1

      of course the coder has to generate the WSDL - you're not suggesting you write a bunch of methods and expect the system to write your definitions for you?! I know there are systems that do this - but you still have to decorate your methods with the appropriate codes to make the generator work correctly.

      Mind you, there are generators for .h files, and also for .cpp generators too - Visual Assist for VS does it as does Dehydra from Mozilla. And for years cproto has been around though that doesn't understand C++, only C.

      quick google: http://www.hwaci.com/sw/mkhdr/makeheaders.html

      works for c++, though I don't know how complete its functionality is for advanced C++ features.

    18. Re:IBM by eyrieowl · · Score: 1

      Scala does indeed have some of what I want...but some number of those features would require VM support to really properly put in place. Without VM support, you could perhaps emulate some of them at the language library level, but you're not going to get the true performance that you would have if the VM were intelligently doing many of the optimizations at a lower level. And I don't think many of those things will end up in the JVM b/c Java's too beholden to backwards compatibility...and since the primary language won't ever support those features there's little motivation to add extra complexity to the VM to support them. I do think the JVM would make a reasonable starting point...people have put a lot of work into developing a number of features which would continue to be very important for the next generation language, and if some of that work can be reused, it would certianly help jumpstart such a project. I do think there's not much point without VM support. A next generation language isn't going to be viable if it exposes nice features but they are slow/expensive. And that, I think, is one big reason why uptake on Scala hasn't been better than it has. I'd have dig around to find it again, but last I saw, there were several significant benchmarks for which Scala performed much slower than Java due to aspects to how the language is designed. Google's little paper notwithstanding, most benchmarks I could find in just looking around (such as the Computer Language Benchmarks Game http://shootout.alioth.debian.org/ ) have Scala coming in a bit behind Java...but well behind it on the high end. I think the next paradigm...it will have to offer more than Scala does, and do it with top-flight performance. There needs to be a real clear benefit which goes beyond appealing to CSey types and which can be used to make a compelling argument to business folk why they should let their development team(s) run off and use something new. I think several of the features I lay out would really help the language get even closer to C++ performance for a variety of computational tasks...still not as good as tuned C++, but maybe close enough that for an even broader category of problems, the extra productivity made possible by the higher level nature of the language would make it the way to go.

    19. Re:IBM by Great+Big+Bird · · Score: 1

      Virtualization is not a "stupid fucking idea", it has been used on mainframes since the 80s if not before. There are places where it is fabulous and the right solution.

    20. Re:IBM by Spiked_Three · · Score: 1

      " At least try and understand what you're talking about."

      I think you are confused who is clueless.

      --
      slashdot troll = you make a compelling argument I do not like the implications of.
    21. Re:IBM by Spiked_Three · · Score: 1

      "'To be able to install this JRE your computer must be an IBM system, as shown by a BIOS check"

      WTF does that mean? surely not what it says?

      --
      slashdot troll = you make a compelling argument I do not like the implications of.
    22. Re:IBM by Viol8 · · Score: 1

      "I think you are confused who is clueless."

      You want to try repeating that in intelligable english?

    23. Re:IBM by godefroi · · Score: 1

      of course the coder has to generate the WSDL - you're not suggesting you write a bunch of methods and expect the system to write your definitions for you?! I know there are systems that do this - but you still have to decorate your methods with the appropriate codes to make the generator work correctly.

      Yes, that's exactly what I expect. I currently write code in C#, and I use WCF for my SOAP webservices, so my "decorations" consist of [ServiceContract] on the class and [OperationContract] on each method that is part of the service. I've never, ever, in my entire life, hand-coded a WSDL.

      --
      Karma: Poor (Mostly affected by lame karma-joke sigs)
    24. Re:IBM by godefroi · · Score: 1

      If headers are required for the features you list to work, then how does C# do it? How does Java do it? How does Perl do it? How does Python do it? I guess either they don't have compile-time error checking, or they're "absurd".

      --
      Karma: Poor (Mostly affected by lame karma-joke sigs)
    25. Re:IBM by Viol8 · · Score: 1

      Simple - none of them are compiled down to machine code like C++ is. They're either scripting languages (perl,python) or use VMs (java, C#). If your code is running via some sort of interpreter it can do all sorts of runtime loading and analysis of program code which you can't do with a raw binary.

    26. Re:IBM by pointyhat · · Score: 1

      Yes it is. It's an awfully unnecessary abstraction.

      There are many more ways which are simpler to solve the problems that virtualization supposedly solves.

      Virtualization is just an excuse for an IT department to get away with shitty infrastructure planning, poor product selection and bad quality software.

    27. Re:IBM by Spiked_Three · · Score: 1

      Are you serious? You don't have a clue what you're talking about do you? Seriously dude, I think using a web page is out of your league. No one is going to reply with a technical explanation to someone who obviously doesn't have any idea. Do yourself a favor, spend some time with the free visual studio, or even Java if you don't mind having your computer pWned (for the last few days anyhow) - and try it. It has nothing to do with runtime loading and analysis, that is known as reflection. it has to do with the COMPILER being smart enough to look at a library, as opposed to only being able to load in source and compile it. Its not that hard really, and again, it IS a top priority of the C++11 committee. They acknowledge its desirability and are working towards resolution on implementation. Oh damn, I took the time for a newb (rolling eyes).

      --
      slashdot troll = you make a compelling argument I do not like the implications of.
    28. Re:IBM by Spiked_Three · · Score: 1

      No need. you and everyone else who read it, knows exactly what it says.

      --
      slashdot troll = you make a compelling argument I do not like the implications of.
    29. Re:IBM by Viol8 · · Score: 1

      I love arrogant students who try and be intellectual and end up talking out of their arse. :o)

      "it has to do with the COMPILER being smart enough to look at a library, as opposed to only being able to load in source and compile it."

      Way to go on completely missing the point - which since you clearly can't read properly - was why does C/C++ required definitions in header files shared between source files. Presumably you thought that tossing in something about linking with libraries and C++11 makes you sound like an intellectual? I've got bad news for you sonny...

    30. Re:IBM by Spiked_Three · · Score: 1

      oh, your right

      "was why does C/C++ required definitions in header files shared between source files"

      Never thought anyone would be ignorant enough to even consider that, when the compiler has to compile both and can simply keep a symbol table between the files. I though you were on to something less obvious and less basic.

      --
      slashdot troll = you make a compelling argument I do not like the implications of.
    31. Re:IBM by Viol8 · · Score: 1

      "Never thought anyone would be ignorant enough to even consider that, when the compiler has to compile both and can simply keep a symbol table between the files"

      Wtf are you talking about???? Do you even know the difference between declaration and definition? Why don't you go and buy a ticket on the clue train you utter fucktard.

      Over & out.

  13. A Different VM by mkkohls · · Score: 1

    But Oracles VM is OpenJDK right? Why not just fork it and mantain an updated patched version?

    1. Re:A Different VM by robmv · · Score: 2

      Not a fork, but a variant of OpenJDK already exists today, at least for Linux systems many distrutions use it (but people still insist on installong the Oracle one!!!!) IcedTea and they already patched this bug

  14. Re:Ditch Java entirely. by Anonymous Coward · · Score: 1

    Yes, actually, it does. Everything we do has a business case attached. The level of effort we put into the business case is proportional to the money involved, but yes, we do a business case analysis for each decision. With decent mentoring, it teaches your employees to think about the second order affeects of decisions. Risks and assumptions are clearly stated, and it's very easy to defend risks that didn't work out, since they've already been defended. Good for everyone.

  15. In a Word? by casca69 · · Score: 1

    Yes

  16. Re:Why Sun why? by Anonymous Coward · · Score: 1

    The saddest day of my life was the day I found out Sun was selling java to oracle.

    WHAT? Oracle bought Sun, Sun are gone. Java was part of the deal/

  17. Re:Ditch Java entirely. by cduffy · · Score: 2

    I mean, it is hard to run a business if you aren't running a profit and generating income.

    Sure, but some actions are taken to minimize cost centers.

    Like cleanup after a security breach.

  18. Re:Ditch Java entirely. by characterZer0 · · Score: 5, Insightful

    Ditch Java applets entirely.

    --
    Go green: turn off your refrigerator.
  19. Re:Time to Revive Microsoft's JVM by X0563511 · · Score: 1

    What hokey coded-overnight-while-drunk were you running, that routine JVM updates broke things?

    --
    For large sets, this will be our guide even unto death, for the LORD will work for each type of data it is applied to...
  20. All bugs should be reported opening by Nyder · · Score: 3, Insightful

    This is why reporting bugs to the software developers is stupid. Post the bug into the public, so they have no choice but to upgrade. Corporations are run by people who want to spend as little as possible to make as much money as possible. They won't patch bugs unless they are forced. They need to be forced.

    --
    Be seeing you...
    1. Re:All bugs should be reported opening by Nyder · · Score: 2

      ah shit, fucked the title up. I'd fix it, but no one is forcing me.

      --
      Be seeing you...
    2. Re:All bugs should be reported opening by swillden · · Score: 1

      This is why reporting bugs to the software developers is stupid. Post the bug into the public, so they have no choice but to upgrade. Corporations are run by people who want to spend as little as possible to make as much money as possible. They won't patch bugs unless they are forced. They need to be forced.

      Not untrue, but too broad. There are companies who not only do fix the bugs reported to them, but even thank those who give them the reports with large checks.

      Granted that they're the exception, and Oracle is clearly not one of them.

      --
      Note to ACs: I usually delete AC replies without reading them. If you want to talk to me, log in.
  21. As a former Oracle dev by juancn · · Score: 5, Insightful
    Oracle is a huge organisation. I mean mindbogglingly huge (think planet Vogon). There is a lot of red tape that you have to cut to get anything done, and in 4 months they're probably still scheduling meetings to figure out if it should be fixed, and when, and by whom.

    Unless an SVP gets involved, it's unlikely that it will be rushed.

    1. Re:As a former Oracle dev by NettiWelho · · Score: 5, Insightful

      Perhaps they should, you know, have a department dedicated to handling these kinds of things in a timely manner then?

    2. Re:As a former Oracle dev by Len · · Score: 3, Insightful

      If that's the way they work, they should not be selling mission-critical software that is exposed to the internet.

    3. Re:As a former Oracle dev by Anonymous Coward · · Score: 1

      Obviously you don't work for a Fortune 30 company. If you did you would know how ludicrous your statement is. :)

    4. Re:As a former Oracle dev by juancn · · Score: 1
      The thing is that even the way they relate to their customers is different. For example, once a customer came to visit Oracle HQ (it was a large European bank that shall remain unnamed) and I got pulled for some technical question that they had regarding an old version of some product.

      I found astonishing to see the way the customers asked for things. The power play was reversed, rather than the vendor trying to convince the customer that his was the right way, it was the other way around. It was the customer trying (even begging) to sell us on some ideas that we should consider including in our roadmap for the next two or three years (pretty pleaasee?).

      I actually was acquired by Oracle, so I started in a small company, and ended up in the belly of the beast. So I was used to thing being the other way around, more like having demands from customers, or we'll go to other vendor. In this case it was more like: we'll buy anyway, but please add this, it will make our lives a lot easier.

      I'm not defending them, but an Oracle-size company is a very unusual beast. At the very least it should not be surprising that it takes them some time to move.

  22. Re:Ditch Java entirely. by rsmith-mac · · Score: 2

    Indeed.

    Microsoft, Mozilla, Google, and Apple should all be seriously considering enacting the death penalty after this latest exploit. These browsers should be actively blocking the Java plugin by default. Java applets have outlived their usefulness and now are good for little else besides drive-by exploits.

  23. Re:java is an abomination by macbeth66 · · Score: 1

    Really? In what way? Specifics, man!

    According to my info, it has some Java, but it is mostly C, C++ and Python and is based on the Linux kernel.

  24. Stop spreading ridiculous myths by Zero__Kelvin · · Score: 2

    "A similar argument used to be debated years ago with Apple v Microsoft... Apple toted it's superior security over MS when in reality, nobody gave a crap about attacking Mac users which only made up 10% of the market. Once they gained popularity, they started getting hit more as well."

    Really. When did this happen? The claim that Microsoft has more viruses because they have more market share is patently ridiculous, if only becaue Linux has a huge market share on the targets that hackers really want, to wit servers. It is a classic myth pulled out of the ether by people who have no understanding of security. The fact which every security expert knows is that you can't layer security on; it needs to be designed in from the ground up. Microsoft has always been more concerned about making money than anything else, and only began to take security seriously when it started to affect their bottom line (i.e. after the fact, rather than from the ground up.) This is the reason why Windows hosts well over 90% of the exploits, and for no other reason.

    --
    Guns don't kill people; Physics kills people! - John Lithgow as Dick Solomon on Third Rock From The Sun
    1. Re:Stop spreading ridiculous myths by tnk1 · · Score: 4, Insightful

      First of all, I think the comparison was Apple to Microsoft, not Linux to MS.

      Second, when you talk desktop to server, you are talking apples (heh) to oranges. Desktops are important hosts for viruses because of what they are used for and who they are used by. Which is to say they tend to run on-demand applications and web browsing, and are run by anyone, usually amateurs who are easy to socially engineer.

      A server is going to be run by professionals who operate services that are either developed in-house, or purchased and supported professionally. They will not frequently install new software, and that will usually be vetted carefully, if only because they will tend to spend money on purchase or support. You can still socially engineer professionals, but you will tend to have a lot harder time doing it, as they usually receive training covering that very contingency.

      Consequently, while server exploits definitely exist, exploits that are directly related to a server tend to be fewer and more difficult to make use of where they exist, so Linux is going to have a much lower exploit penetration simply by virtue of being used mostly as a server, despite its market share of the server business. Hence, the comparison of the Windows market share, which is primarily desktop computing, to the Linux market share, which is mostly servers, is going to show significant deviation based on their usage patterns. That invalidates a direct comparison of their market shares in this instance and fatally undermines the argument.

      Desktop market share is a big deal for viruses particularly if it is as high as that for Windows. The argument that Microsoft only cares about money doesn't cut it when you'd consider that Apple only cares about making money as well. MacOS is not a community project like most distributions of Linux, it may have more links to Open Source, but that doesn't mean that Apple is immune to profit motive, as we well know. You may well argue that Microsoft ignored the issues in favor of their vision of interoperability and control, but simple profit motive alone is not going to explain the differences without further elaboration.

      Apple did and does have a smaller market share. It was also used, primarily, for purposes like design until it became more popular for developers in the last few years. While Apple probably has better security, part of which is inherited from it's UNIX roots, this is not going to be sufficient to deter malicious coders if there is interest in penetrating the MacOS share of PCs. In short, Apple users are a minority who don't really have a usage pattern that will be useful for most exploit developers. This is a real effect which decreases number and extent of exploitation and it *does* make using that platform safer, but it is a smokescreen, not a shield against future attacks.

      You could make more of an argument for the security of an iOS specifically than Apple in general. However, even that security model was built more on the need to generate revenue than it was to prevent infections.

      So, market share does matter significantly. While amateur hackers may well like the challenge of cracking something like a Mac or an Amiga for that matter, the more professional exploiters are going to spend time on the platform that they can generate the most effect from for the smallest initial investment. These professional exploiters will be more effective and more persistent than amateurs, which means they will tend to keep at exploits until they work well enough for significant penetration. This is a primary reason that Windows is riddled with exploits and would continue to be riddled with them even with better security measures.

    2. Re:Stop spreading ridiculous myths by tnk1 · · Score: 2

      Are you really making the definition of "hacker" and "cracker" part of your response? I just can't generate a serious response to that. All I can say is that I've learned my lesson and I'll consult the Jargon File the next time I make an argument. I am chastened and bow before your neckbeard. And your bolding skills.

      Sorry, there I go again... I meant your use of the "strong" tag. Or was I supposed to use CSS here?

      Still, you do realize that you can't actually refute something by simply labeling it "moronic", right? I wish that was the case, because I've always wanted to shake my fist at people and yell, "NO, YOU FOOLS," when faced with counter-arguments, but it never seems to work.

      This is what happens when you attack the person instead of the argument. People get all sarcastic and stuff. Kittens die, mountains crumble and Republicans are elected in Chicago. Nobody wants to see that. Except the Republicans, of course. And the terrorists.

    3. Re:Stop spreading ridiculous myths by Zero__Kelvin · · Score: 1

      "This is what happens when you attack the person instead of the argument."

      Claiming a strawman attack has been launched when the person actually successfully countered your argument is second only to an actual strawman attack in the gallery of last gasps of the debate loser*. When you clearly exhibited a lack of knowledge of the subject matter, pointing that out is not a strawman attack.

      * No. That wasn't a strawman attack either. I didn't say you were a loser, merely the one who lost the debate.

      --
      Guns don't kill people; Physics kills people! - John Lithgow as Dick Solomon on Third Rock From The Sun
  25. Re:Time to Revive Microsoft's JVM by ekgringo · · Score: 2

    Any software written by ADP?

  26. Re:Ditch Java entirely. by bennomatic · · Score: 3, Informative

    I'm pretty sure Apple (a) doesn't include Java by default and (b) even once you install it, they make you jump through hoops to allow it in the browser/applet context. I seem to recall them being called evil for making those decisions a while back.

    --
    The CB App. What's your 20?
  27. Re:Ditch Java entirely. by Anonymous Coward · · Score: 1

    Everything we do

    I'd like to see the formal business case you made for posting on Slashdot.

  28. Re:Ditch Java entirely. by AwesomeMcgee · · Score: 1

    No.. I think his business model is:
    1) Ditch Java
    2) Use mono or LLVM or .NET one of assuredly many other available VMs
    3) Profit!

    Not too extreme really..

  29. Re:Ditch Java entirely. by binarylarry · · Score: 3, Insightful

    Mono sucks and is inferior to OpenJDK
    LLVM is awesome but a different technology all together
    LOL @ .NET

    --
    Mod me down, my New Earth Global Warmingist friends!
  30. Re:Ditch Java entirely. by chfriley · · Score: 4, Informative

    And if you have not used Java in 30 days, Apple disables it in the browser. (At least Java 6 and I believe any Java version). :-)

    e.g., see http://www.christopherprice.net/making-sense-of-oracle-java-7-for-os-x-2119.html

  31. Re:Ditch Java entirely. by Dishevel · · Score: 1

    Networking is good.

    --
    Why is it so hard to only have politicians for a few years, then have them go away?
  32. Re:Time to Revive Microsoft's JVM by Anonymous Coward · · Score: 1

    WAY back in the day, the company I work for paid a LOT of money for a technology known as "Arcot WebFort" which was some sort of secure login technology. There was a client-side (browser) applet that managed a "wallet" which contained some sort of keys that let you log into the website. If your "wallet" didn't have a key for the site you were logging into, you had to answer a bunch of questions, etc. It was shit, and we knew it even then, but the investors liked the shiny logos.

    We found that the browser applet stopped working after some particular update. This was back in the 1.2 or 1.3 days, I believe. The client needed a very specific version, 1.2_35_b41 or some confusing version number (hey, it's been over a decade now...), or the applet would simply never create the wallet, appearing to be hung. Well, we decompiled that thing, and it was failing to create a random number for some strange reason on other versions of the JVM, so we wrote in a quick fix, recompiled it, and off we went.

    Posting anonymously for obvious reasons.

  33. Re:Time to Revive Microsoft's JVM by godefroi · · Score: 1

    Amen to that.

    --
    Karma: Poor (Mostly affected by lame karma-joke sigs)
  34. Ditch Java? Done ages ago! by Kwpolska · · Score: 1

    Is it really time to ditch Oracle's java and go for an open source VM?

    I, for one, got rid of all Java from my machine a long time ago. I think that everyone at slashdot did that too. You don’t know how angered I am when my set-top box has some problems (eg. today it stopped sending audio over HDMI, I needed to set it to standby and wake it up again) or when I got my Kindle today. Both are in Java. Unfortunately.

  35. Re:java is an abomination by Kagetsuki · · Score: 4, Insightful

    !? Java is basically the only language you can seriously use to write apps on Android. The NDK? It's awful. I love Android but I seriously hate Java. As a language it's terrible, and anyone who says otherwise needs to pull their head out of their ass and play with some other languages. What's awesome about Java is the JVM... which is basically just an open standard. It doesn't necessarily need to run Java code just Java *bytecode*. There are some fantastic alternatives that run on the JVM too, like Scala (and in sort of a different way JRuby). Unfortunately Scala on Android isn't so mature and is a nightmare to get working or really use.

    Not fully supporting the NDK is one of the biggest things that pisses me off about Android. I'd drop Java in a heartbeat for C++ if the NDK was decent. Google would do well to start supporting some scripting languages natively too - there's a reason there are so many projects trying to make platforms in Python and Ruby for Android, but they all end up half assed or running out of time/money and they start going non-free.

    Seriously Google, give us some alternatives. Java is the absolute worst part of Android.

  36. Re:Security and Security Through Layering by Kagetsuki · · Score: 1

    Is that a Gosling quote from when he says Ruby is inferior without actually knowing anything about Ruby and just making shit up, or is it from the time when he claimed non-optimized Java bytecode will run faster than hand optimized ASM on ARM?

    Oh, and while I'm here let me just give a shout out to James: Hey James! Fucking die!

  37. C++ header files by bLanark · · Score: 1

    Yeah, I know C++11, I've looked at it quite a bit, and it is better than it was, but as long as it needs header files, I don't put it into a modern language category.
     

    This is the most bizarre statement I've seen here today. Can you explain your reasoning?

    --
    Note to ACs: I won't mod you up, even if you are being funny or insightful. So take a chance! It's not real life!
    1. Re:C++ header files by RabidReindeer · · Score: 1

      He's an idiotic Java weenie who thinks that 5000 long source files just to read the interface specification is a good thing rather than having it cleanly separated in a separate file. Managing header files is pretty much the least of your problems with C++ so he's clearly never used the language for anything but toy projects.

      Unless you're still using COBOL, if you have 5000-line source files, you need to be slapped around some. Even 1000 lines is pushing it. That's not modular programming, it's spaghetti code, even when the language is structured and OOP.

      Discrete header files were OK in C - there were rarely that many. In C++, it got a lot nastier, though You could have one header/class, multiple classes/header or mix-and-match - there really wasn't a standard. And THEN you got into "header hell", where the header and implementation got out of sync.

      In Java, either you're working directly with the target class, so you're probably already going to end up referencing the source code anyway, or you're working with a generic API or SPI, in which case, and those are normally implemented as Interface classes, which are rarely more than a page or 2 long (at least if the author wants to foist it on me and continue living). Interface classes are a lot like C/C++ headers, but because they are bound more intimately with the class implementations, it's a lot harder to get them out of sync.

    2. Re:C++ header files by Spiked_Three · · Score: 1

      Sure, I can explain it.

      C#/Java, import runtime library (dll or jar) of rich libraries, write new classes (using nice readable names), usually one file per class (but in c# I can combine them into 1 file), compile run.
      c++, include header files, write new classes (using hideously complicated naming and syntax), write duplicate definition in own header files, add libraries (already included) to linking process, compile, run.

      One way is smooth and logical, the other is barbaric, and a top priority of the standards committee to get rid of, just hasn't happened yet. If its so ok, why have they said it's got to go?

      --
      slashdot troll = you make a compelling argument I do not like the implications of.
    3. Re:C++ header files by Spiked_Three · · Score: 1

      He presses F2 and gets an outline of the entire API including developer provided docs. A java programmer does similar things. Apparently you aren't old enough to wipe your ass yet.

      --
      slashdot troll = you make a compelling argument I do not like the implications of.
    4. Re:C++ header files by bLanark · · Score: 1

      Sure, I can explain it.

      C#/Java, import runtime library (dll or jar) of rich libraries, write new classes (using nice readable names), usually one file per class (but in c# I can combine them into 1 file), compile run.

      c++, include header files, write new classes (using hideously complicated naming and syntax), write duplicate definition in own header files, add libraries (already included) to linking process, compile, run.

      One way is smooth and logical, the other is barbaric, and a top priority of the standards committee to get rid of, just hasn't happened yet. If its so ok, why have they said it's got to go?

      It's not clear to me, still. Please give concrete examples, from your point of view, showing the difference between the two? And please avoid emotive terms like "barbaric" That's adding nothing.

      Nothing needs to be complicated about naming in C++, in fact it's easier than system.io.println, IMO. I am free to give my class and methods meaningful name - what's your point here? Better than giving everything a com.myco (well, actually we were taken over, so _myoldco_ - we don't want to break anything).system.subsytem prefix.

      In Java *or* in C++, if you change a class interface, the dependencies need to be rebuilt. Most Java IDEs will do that on-the-fly, and you might have to invoke another tool (E.g. make) to build, especially if you are doing multi-platform development. But the building happens no matter what. If your C++ build tool does too much work when you make a change, then that effort can probably be avoided.

      Please don't mix up Windows DLLS with shared objects in other systems, mentioning them is nothing to do with C++ per se.

      --
      Note to ACs: I won't mod you up, even if you are being funny or insightful. So take a chance! It's not real life!
    5. Re:C++ header files by Spiked_Three · · Score: 1

      Sorry, I don't engage in prima donna intellectual conversations. If you don't like my emotions, skip over them. But why do you ask to leave them out, then use one as your first argument (ie naming)? I will admit, I was using a beta product that had trouble with namespaces, so my bitch about naming is withdrawn, although I still think STL names are very hard to read compared to C#s or even Javas.

      And I think you are agreeing with me on the next subject - IF C++ could deal with changes to an interface, on its own, without the need for me to tell it in a second file, perhaps by a compiler maintained header / equivalent of a library (.dll or otherwise) with imbedded cargo information, then C++ would be acting like a modern language. What do you know, we both agree with C++11 committees as well, that is where they are headed. Its not clear to me what your point about DLLs has to do with anything, and why you think I am mixing them up with .... well I have no idea.

      Anyhow, I am glad we agree, on everything substantive.

      --
      slashdot troll = you make a compelling argument I do not like the implications of.
  38. Re:Ditch Java entirely. by nedlohs · · Score: 1

    No it doesn't. And the goal of every action is certainly not profit.

    There was no business decision being made when I had peach with my breakfast instead of grapefruit this morning. There was no profit when we played Alhambra last night instead of Carcassonne.

  39. Good Java Desktop Application by naroom · · Score: 1

    ImageJ is a wildly popular image processing toolkit written in Java. Users are able to write their own plugins as .jar files, and thanks to that, there are loads of plugins for doing every image transform imaginable.

  40. Re:Ditch Java entirely. by nedlohs · · Score: 2

    Posting anonymously is not networking.

  41. Re:Why only Oracle's Java? by rvw · · Score: 2

    Maybe it's time to ditch Java altogether!

    Can I keep LibreOffice if I remove Java completely?

    Calm down... You can keep it - sure.
    (Whether it still works is another question. ;-)

  42. Java on Slashdot is almost a meme now by GodfatherofSoul · · Score: 3, Insightful

    Same old jokes and criticisms. Reading these posts, you'd think Java was relegated to driving outhouse fans in Siberia and not the #3 language by popularity in the world.

    That being said, the Java *browser* vulnerabilities need to be taken far more seriously. The only exploit that I know I've been hit by was through an unpatched Java install and it was nasty; as in rebuild my laptop from the ground up nasty.

    --
    I swear to God...I swear to God! That is NOT how you treat your human!
    1. Re:Java on Slashdot is almost a meme now by pnot · · Score: 1

      Same old jokes and criticisms. Reading these posts, you'd think Java was relegated to driving outhouse fans in Siberia and not the #3 language by popularity in the world.

      Jokes and criticisms mainly seem to be coming from those who conflate the JVM, the Java language, the JRE, the Oracle Java browser plugin, and more or less anything else with a J in the name. "Browser plugin compromised, omg that means your GCJ desktop application is broken!"

    2. Re:Java on Slashdot is almost a meme now by JDG1980 · · Score: 3, Insightful

      Same old jokes and criticisms. Reading these posts, you'd think Java was relegated to driving outhouse fans in Siberia and not the #3 language by popularity in the world.

      A lot of these problems could be resolved if the Java installer didn't include the browser plugin. That should be a separate download, or at least it should require the user to affirmatively check a box. At this point, Java in the browser is, for most users, little more than a giant security hole. Virtually no legitimate public websites require it.

    3. Re:Java on Slashdot is almost a meme now by pnot · · Score: 3, Interesting

      Amen to that. As any /. Java comment thread demonstrates, the chief functionality of the Java browser plugin these days is tarnishing the reputation of the entire Java platform and ecosystem.

      Doubtless there are still websites out there that need the plugin, but I don't remember the last time I saw one. Definitely time to make it opt-in, not opt-out.

    4. Re:Java on Slashdot is almost a meme now by makomk · · Score: 1

      Is GCJ actually capable of running any Java desktop applications these days? Last I heard it had kind of been left behind by improvements in Java.

    5. Re:Java on Slashdot is almost a meme now by pnot · · Score: 1

      Is GCJ actually capable of running any Java desktop applications these days? Last I heard it had kind of been left behind by improvements in Java.

      I doubt you could use it as a drop-in replacement for a modern JRE. I did manage to compile a (very) small Swing application unmodified a year or two ago, but the Swing component implementations proved to be a bit buggy. AIUI, gcj was mainly created to address Java's non-freedom and slow execution speed; OpenJDK removed the first selling point, and JIT the second.

      pdftk is the only program I use day-to-day which I know to be gcj-compiled. This illustrates perhaps gcj's sole remaining niche: smallish non-interactive command-line utilities where the start-up time of a JVM would impose a significant slow-down.

  43. Re:Ditch Java entirely. by Dishevel · · Score: 1

    It is if your name is Anonymous.

    --
    Why is it so hard to only have politicians for a few years, then have them go away?
  44. Question on Java by sinij · · Score: 1

    I am not a web developer, and haven't worked as one since dot com (doh, first one in the 90s, not the social media meltdown that going on right now) bubble. Back then you could make a clear case that java was absolutely necessary.

    What about today? Can we do without it? I run with no-script on all the time, and only occasionally have to enable something, it hardly ever breaks web pages these days.

  45. Zero Day? by BenSchuarmer · · Score: 3, Insightful

    I don't think that word means what you think it means

  46. Re:Ditch Java entirely. by AliasMarlowe · · Score: 4, Funny

    Everything we do has a business case attached

    I'd like to see the formal business case you made for posting on Slashdot.

    Well, it was originally a 78 page densely-written scenario analysis document circulated four weeks ago to more than 20 executives and managers. They liked it, so I was authorized to spend a week making 45 slides to reinforce the case, and these were presented two weeks ago to a specially selected focus group of at least 30 managers and engineers. We discussed it for a whole day at the meeting. There were lots of fancy headings, beautiful fonts, pie charts, animations, etc., and I got excited and did a lot of arm-waving which helped persuade the focus group to pass the business case onwards. I'm not sure which team they passed it to, but our processes must be streamlined, because it already got approved today, which was pretty fast.

    Anyway here it is, reduced disgracefully down to a single paragraph:
    "By encouraging all businesses to waste effort making business cases to justify every decision (including trivial ones), we can cripple our competitors in terms of costs (their management overheads skyrocket), reaction time (all their decisions get delayed), and flexibility (they must omit/neglect some possible decisions). Posting as an AC on Slashdot will advance this goal."

    --
    Those who can make you believe absurdities can make you commit atrocities. - Voltaire
  47. Re:Java is used everywhere in the office by Billly+Gates · · Score: 3, Interesting

    As someone pointed out in the last story it is the IE 6 that wont go away, or at least the Cobol of the 21st century.

    Every banking site requires it so it can wrap win32 com objects like excel spreadsheets for lines of credit reportsthat can be cut and pasted using security holes from 1.4.1 or some ancient version. So java is used to activeX like functionality with no security controls and is a requirement for anyone in finance. Some support java 6 but have to include some security holes so they can access windows dlls for the accountants.

    Manpower and Kronos for clocking employees in and out also use Java. Java is still the most widely used language in the world if you check any website.

    The irritating thing is not that Oracle wont fix java and should be liable, but rather apps and banking sites require such ancient versions of it that only work with XP and are filled with 30 or more security holes.

    Many of these accountant laptops just get re-imaged on a weekly basis from infections. These same accountants only look at the cost of upgrading and not the productivity loss.

  48. The US Patent Office may have known about this by Steve1952 · · Score: 1

    The US Patent and Trademark Office (USPTO) requires Java in order for outside users (such as patent agents and attorneys) to access their files on the USPTO servers. They have been warning for months that their systems are not compatible with Java 7, and only work with earlier versions of Java.

    This is a big pain, since it forces you to keep your entire system at Java 6.X. Earlier I thought that this delay was mere bureaucratic foot dragging. Now I'm thinking that perhaps they had a "heads up" warning.

  49. Re:Ditch Java entirely. by Bobtree · · Score: 1

    It goes more like this:

    1) ???
    2) Ditch Java
    3) Profit!

  50. Re:Why only Oracle's Java? by RaceProUK · · Score: 1

    Maybe it's time to ditch Java altogether!

    Can I keep LibreOffice if I remove Java completely?

    Calm down... You can keep it - sure. (Whether it still works is another question. ;-)

    IIRC, Java's only used for LibreOffice Base - the rest will work fine without it.

    --
    No colour or religion ever stopped the bullet from a gun
  51. Re:Ditch Java entirely. by oakgrove · · Score: 2

    Um, could you forward me those slides?

    --
    The soylentnews experiment has been a dismal failure.
  52. Report to OpenJDK as well by David+Gerard · · Score: 2

    If you find a security 'sploit in Java, test in OpenJDK/IcedTea and report it to the security teams at Red Hat, Ubuntu and Debian. They are rather less likely to sit on it for months. I notice a fix in OpenJDK came through in Ubuntu this morning.

    --
    http://rocknerd.co.uk
  53. Not a zero day bug by slashkitty · · Score: 4, Informative

    It's not a zero day if it was privately submitted over a month before. Zero Day means "a previously unknown vulnerability". It just wasn't public, so they didn't have as much urgency in fixing. Just stop calling it a zero day bug if the developers knew about it before hand.

    --
    -- these are only opinions and they might not be mine.
  54. VM? by QuantumRiff · · Score: 1

    I know they are referring to an open source Java Machine.. but using a term like "open source VM" is kind of unclear. Especially when oracle has both Virtualbox and a product called "Oracle VM" http://www.oracle.com/us/technologies/virtualization/overview/index.html?origref=http://duckduckgo.com/post2.html

    --

    What are we going to do tonight Brain?
  55. Re:Why only Oracle's Java? by ais523 · · Score: 2

    Unlike OpenOffice.org, LibreOffice has been intentionally trying to reduce or remove Java dependencies. (I don't know whether it's because they're worried about Oracle too, or for some other reason, like "why would an office suite need Java anyway?".)

    --
    (1)DOCOMEFROM!2~.2'~#1WHILE:1<-"'?.1$.2'~'"':1/.1$.2'~#0"$#65535'"$"'"'&.1$.2'~'#0$#65535'"$#0'~#32767$#1"
  56. Re:java is an abomination by macbeth66 · · Score: 1

    I was referring to Android, the OS, that the AC was blasting, not the development kit(s).

    I have not tried to develop for the Android because I was so disauded by others by the very issues you bring up.

  57. Processes in overly-large & complicated orgs by zooblethorpe · · Score: 2

    Oracle is a huge organisation. I mean mindbogglingly huge (think planet Vogon). There is a lot of red tape that you have to cut to get anything done, and in 4 months they're probably still scheduling meetings to figure out if it should be fixed, and when, and by whom. Unless an SVP gets involved, it's unlikely that it will be rushed.

    Perhaps they should, you know, have a department dedicated to handling these kinds of things in a timely manner then?

    Oh, don't worry, it's in the works -- the planning meeting for starting the process of organizing to set up such a department is scheduled for early 2013.

    --
    "What in the name of Fats Waller is that?"
    "A four-foot prune."
  58. Re:Wow. Time for a class action suit, then. by lorenlal · · Score: 1

    IANAL, so I have to ask. If the company *knows* their software has a security hole, and intentionally disregards it, do they then become liable for some or all of the damages?

    I have to imagine that if they were seriously trying to fix this, and it was just taking a while that there would not be such an outcry. Would it be necessary in the suit to prove that they are ignoring the problem?

  59. Re:Ditch Java entirely. by denvergeek · · Score: 1

    They all just say "Synergy" over and over...

  60. Re:Ditch Java entirely. by spongman · · Score: 1

    1) Profit
    2) Java
    3) Ditch
    4) ???

  61. Oracle doesn't care about Java in the browser by SomewhereInTheUs · · Score: 2, Interesting

    Java is worthless in the browser and I doubt that Oracle cares if it's removed. They might even prefer it.

    Rather, Java's worth to Oracle is primarily as an internal tool for creating products/services and secondarily a means for providing easy extensibility and connectivity to developers that code to the interfaces those products expose.

    The days of Sun evangelizing Java as the Second Coming and pimping it everywhere they can are over. It's just a means to an end at Oracle.

  62. Re:java is an abomination by MrSteveSD · · Score: 1

    Seriously Google, give us some alternatives. Java is the absolute worst part of Android.

    Indeed. I'm finding it's particularly bad for game development where you want to avoid continuously allocating objects on the heap. So if you need to continuously call some mathematical function from the game loop that uses a temporary vector as part of the calculation, this is an issue. How do you create this temporary vector? If we create a new one in the function, it will go on the heap, so we don't want to do that. You could have some module-level variable that the function uses, but that's rather messy. I ended up having to make an object caching system. When a function needs a vector, I pop one off the global vector cache, do the calculations, then push it back. This is messy and dangerous in its own way too though.

    In C# you could just implement the vector as a struct, since structs go on the stack rather than the heap (and in C++ you can put what you like on the stack). C# stucts have value semantics too, which I think is an added bonus for something like a mathematical vector. Java is quite crippled in this respect. Another annoyance I immediately found with Java is that you can't pass parameters by reference. Why does Java have such a restriction? Even Visual Basic 6 could pass by reference. It's not that often that I want to pass a parameter by reference, but sometimes you really need to.

    I also made the mistake of trying to use Generics in Java. I knew ahead of time that due to type erasure, there would be no performance improvement, but I didn't quite realise how crippled the Generics were. I first noticed this when trying to declare an array of a generic type. This does not work due to type erasure. Java Generics really is a train wreck.

    It's a shame C# is so strongly tied to windows (and Microsoft) because it's one of the most advanced modern languages there is. Compared to Java, it really is a joy to use. It doesn't get in the way of what you want to do.

  63. Re:Ditch Java entirely. by steelfood · · Score: 1

    Amazon did it for a couple of years. So did E-Bay. They had income, but no profit.

    All you need is enough venture capitalists to keep you going until you hit critical mass.

    --
    "If a nation expects to be ignorant and free in a state of civilization, it expects what never was and never will be."
  64. Re:Ditch Java entirely. by Culture20 · · Score: 1

    More like
    1) Ditch Java
    2) Prevent potential catastrophic loss
    3) Profit!

  65. Re:Why only Oracle's Java? by hairyfeet · · Score: 1

    Have they removed the pop ups yet? The last time I installed LO it complained left and right because the system didn't have Java on it, one of the reasons I don't ever install LO the traditional way anymore, I just go to Ninite and use their fully automated install for LO along with any other must have software the user needs, no bitching about Java with Ninite and no Java install either, double good.

    --
    ACs don't waste your time replying, your posts are never seen by me.
  66. Re:java is an abomination by Kagetsuki · · Score: 1

    Let me try and sum that up for you: Java lacks a lot of language level functionality and has an over-simplified object and instance model which means you need to write massive blocks of code with the sole purpose of implementing functionality that's immediately available in other languages.

    Oh man don't even get me stated on this. I've written hundreds of lines of code in Java to mimic functionality that can be achieved with a single operator with Ruby. Java has so many weird quirks too, like the fact that you can't compare a string object and a string literal with ==... I mean I get it for obejct comparison but seriously, how often do you compare string objects with other string objects to determine if they are the same object instance? I've done that... never. How about at least allowing operator overriding for [] so we can use vector... err.. "ArrayList" or whatever a little cleaner. And why can't we override or append constructors (without intentionally leaving an overridable method call)? I could go on forever here... but seriously anybody who wants to start attacking me for these complaints should sit down with Scala for a few hours. There's reasons Scala exists and just some of those are what I listed here - all the advantages of the JVM without having to write method after method of crap that should be a language feature to begin with.

  67. Not about how bad the product is by dutchwhizzman · · Score: 1

    My suggestion to look for an alternative VM was because of how Oracle deals with the vulnerabilities. It's not about how bad the VM is, because given all alternatives, it's one of the best out there in terms of features, stability and performance.

    When you deal with large amounts of software, several platforms and millions of people using it, you are going to get bugs. Nasty, insecure, application breaking bugs. Given the same quality of code, what differentiates the good from the bad vendors, is how they deal with those bugs. Oracle seems to default to dealing with grave security problems by keeping the submitters and their end users in the dark and not fixing them for over 3 months, even though their release cycle is every three months. I consider that to be bad.

    If this 0-day didn't get the exposure it got, we would all probably be still vulnerable to it for who knows how long. We know about this vulnerability, but Gowdiak reported more. There are more people like Gowdiak. Statistically speaking, chances are probably very close to 100% that Oracle is sitting on more known severe 0-day bugs that they haven't fixed for many many months.

    If that is Oracle's policy, they have a dangerous VM and it will remain dangerous until they either change the policy, or it gets replaced by an alternative. That's why I think that people that choose to use Java for who knows what reason, should seriously consider looking at alternatives for the Oracle Java VM.

    --
    I was promised a flying car. Where is my flying car?
  68. Re:Wow. Time for a class action suit, then. by amicusNYCL · · Score: 1

    Proving that they intentionally disregarded it when they have a fix planned for the October update would be pretty difficult. I don't think you can charge a company with a crime because they have a 4-month patch cycle. Instead I would like to see browser vendors make a move to block the Java plugins by default and require explicit user activation to enable them on a 1-time-use basis (obviously with advanced options to fine tune this behavior). If Oracle doesn't want to update Java frequently fine, but someone needs to protect the users if it's not Oracle.

    --
    "Our two-party system is like a bowl of shit looking at itself in a mirror." - Lewis Black
  69. It's even worse by Myria · · Score: 2

    This is the programming language that still bundles the "Ask Toolbar" crapware with their installer. Nuff said.

    It asks you whether you want to install the Ask Toolbar, defaulting to yes, of course, every time you install a security update.

    --
    "Screw Sun, cross-platform will never work. Let's move on and steal the Java language." - Visual J++ Product Manager
  70. Re:Time to Revive Microsoft's JVM by jimmifett · · Score: 1

    Everything back in the days prior to 1.4 was a nightmare. Unfortunately, that is were most criticisms of java originated. Quite a few enterprise apps i've been forced to use have never been recompiled since 1.3 and are very temper-mental, usually requiring an older JVM and swing was horrid back then. Java really came into it's stride IMO once it hit 1.5. Since then, most (not all) complaints about performance, ui performance, and a lot of other things are moot, but people still like to kick those cans down the road. It'll never be as fast as c++, but it's pretty damn fast in the modern era.

  71. Android by theshowmecanuck · · Score: 1

    And what about on Android devices. Since Android is basically a Java based technology.

    --
    -- I ignore anonymous replies to my comments and postings.
  72. Tuxedo Server Is or Was The C/C++ JEE Alternative by theshowmecanuck · · Score: 1

    Tuxedo Server has been been around since the 1980s and is the C/C++ analog to JEE servers. From my understanding it started out for use with C and COBOL and then C++ to solve the same issues JEE back end containers are meant to solve. I have seen it used with other languages as well (as clients) including Visual Pascal, Visual Basic, and Visual C++, as well as tying into JEE systems and other web based clients. It started with AT&T, moved to BEA, which was then bought by Oracle. So you have come back full circle to the Oracle cunnundrum. And it isn't open source and it isn't free. But it works very well and scales massively. I have seen it run systems that handle tens and hundreds of millions of customer accounts, and highly complex and incredibly high volume of transactions.

    --
    -- I ignore anonymous replies to my comments and postings.
  73. Re:Ditch Java entirely. by makomk · · Score: 1

    .Net's not bad but ties you into Windows. Mono though, ugh - memory leaks out the wazoo on long-running servers that run fine under Microsoft .Net, a garbage collector that sucks compared to what Java had in 1992 let alone 2012, and as for backwards compatibility...

  74. Re:Ditch Java entirely. by Lime+Green+Bowler · · Score: 1

    I'll bet it failed because the slides weren't in Comic Sans.

  75. Re:Ditch Java entirely. by bennomatic · · Score: 1

    Well, you're right, except that the modern, non-vulnerable version was apparently vulnerable!

    --
    The CB App. What's your 20?
  76. Re:Wow. Time for a class action suit, then. by doccus · · Score: 1

    Aren't repeated letters to a manufacturer, that remain ignored, evidence of "ignoring the problem"? As far a the"patch cyle" goes, can they really get away with.. "it's only caused infected or hijacked PCs for a third of a year, that's neither s a significant amount ,nor our responsibility .. That appears how this played out, to me,...

  77. Re:Wow. Time for a class action suit, then. by amicusNYCL · · Score: 1

    You're going to have to prove that they ignored the problem internally, rather than simply not sending a reply to the letter. I don't reply to every bug report, but I still fix them. Considering that they already released a patch for this issue yesterday though, it sounds like a moot point. Obviously they didn't ignore it.

    --
    "Our two-party system is like a bowl of shit looking at itself in a mirror." - Lewis Black