Slashdot Mirror


Oracle Claims Google 'Directly Copied' Our Java Code

itwbennett writes "On Wednesday, Oracle amended the lawsuit it filed against Google in August, saying that 'approximately one third of Android's Application Programmer Interface (API) packages' are 'derivative of Oracle's copyrighted Java API packages' and related documents. In particular, 'the infringed elements of Oracle America's copyrighted work include Java method and class names, definitions, organization, and parameters; the structure, organization and content of Java class libraries; and the content and organization of Java's documentation,' Oracle says. 'In at least several instances, Android computer program code also was directly copied from copyrighted Oracle America code,' Oracle alleges."

675 comments

  1. Here we go again (SCO) by Anonymous Coward · · Score: 5, Insightful

    Fire up Patty at Grocklaw./.... this is identical to the IBM vs SCO case

    1. Re:Here we go again (SCO) by poetmatt · · Score: 4, Insightful

      Also, is oracle really trying to state that they have never heard of clean room design? Oracle is pretty screwed on this case, and with google's intent to fight hard, all Oracle is going to do is kill their own business off.

      Java has now become a liability, so now people won't want to use it. Simple.

    2. Re:Here we go again (SCO) by wonkavader · · Score: 5, Insightful

      I don't think it's that bad, but certainly ORACLE becomes a liability -- don't use anything they control.

    3. Re:Here we go again (SCO) by ozmanjusri · · Score: 0, Troll

      I wonder how much Microsoft is paying Oracle.

      --
      "I've got more toys than Teruhisa Kitahara."
    4. Re:Here we go again (SCO) by medv4380 · · Score: 2, Insightful

      Too much infrastructure is tied into Java for this to kill it quickly. It will be a slow and painful death as people move away if they can.

    5. Re:Here we go again (SCO) by Anonymous Coward · · Score: 0

      How did this comment get 5/Insightful? "Java has now become a liability, so now people won't want to use it. Simple." is simple alright, but it's not even remotely true. Java is used as an enterprise language by thousands of (large, cold, don't-care-that-you-don't-approve-of-oracles-legal-disputes) companies and by hundreds of thousands of (hopefully busy, don't-care-that-you-don't-approve-of-oracles-legal-disputes) developers making a living from crafting Java. They all aren't going to drop java because Oracle thinks Google is infringing on their patent. And who knows (you don't), maybe they are.

    6. Re:Here we go again (SCO) by Surt · · Score: 2, Insightful

      I'm sure oracle HAS heard of clean room design (legal), but that does not typically result in methods reproduced word for word, as happens when you copy the methods using cut and paste (judgement for the plaintiff).

      --
      "Who is the Journal of Quantum Physics going to believe?" --Stephen Hawking
    7. Re:Here we go again (SCO) by bsDaemon · · Score: 1

      Larry Ellison seems like the kind of guy who would put his hatred for Microsoft above his willingness to make money, so I doubt they're getting paid out. If .NET gets any boost out of this, it'll be purely accidental from Oracle's point of view. Although, I could be wrong.

    8. Re:Here we go again (SCO) by Z00L00K · · Score: 3, Insightful

      And then the question is - move to WHAT?

      C# is too windows-oriented to really be useful, but maybe this will be a revival for Ada?

      However - it's more likely that a spoof of Java called something else will spring up.

      --
      If builders built buildings the way programmers wrote programs, then the first woodpecker would destroy civilization.
    9. Re:Here we go again (SCO) by Joce640k · · Score: 5, Insightful

      Well, at least we found out why Oracle bought Java...

      --
      No sig today...
    10. Re:Here we go again (SCO) by digitalunity · · Score: 4, Insightful

      Oracle isn't going anywhere. This lawsuit isn't going to be anything at all like SCO/IBM or SCO/Novell because Oracle is many times larger than SCO is and is at least 2 orders of magnitude more relevant.

      Java is everywhere. Schools teach it. Companies use it.

      If Google really copied things from the Java source like actual source code or documentation, they might be screwed. It sounds like from the summary that the bulk of this 'copying' was the API, which I don't think is even eligible for copyright(not artistic).

      --
      You can't legislate goodness. Let each to his own destiny, by will of his freely made choices.
    11. Re:Here we go again (SCO) by Anonymous Coward · · Score: 1, Interesting

      i agree.

      we are currently laying out requirements to recode our gui system (linux based, using old motif code)

      java was mentioned as a possible solution, but was quickly shot down due to its liability, and due to the fact that oracle seems intent on killing it.
       
      we can't rewrite code & update systems using code that isn't going to be supported here in a few years.

    12. Re:Here we go again (SCO) by freeshoes · · Score: 1

      Whats wrong with C, why do people need a runtime to hold their hands. It makes everything slower.

    13. Re:Here we go again (SCO) by ThePhilips · · Score: 1

      I can't tell the GP's point precisely, but it might be again the old naming issue: "Java as JVM" vs. "Java as Java SDK".

      I presume that GP means by "Java" the Java SDK, implying that as soon as an organization starts using the SDK not the way Oracle envisions, one might become target of a lawsuit. Just like Google. And how many organizations can afford a stand in court against the Oracle?

      And to me too that would mean the (slow) death of Java by being converted from "programming language" to "product licensed by Oracle." Because livelihood of a language (or a platform) to me is precisely defined by the new strange things people can do with it.

      --
      All hope abandon ye who enter here.
    14. Re:Here we go again (SCO) by Z00L00K · · Score: 1

      Never underestimate the power of money.

      And large businesses - they play by their own rules. Just because they are fighting on one front doesn't mean that they do fight on another. Some of the fighting is just to get publicity and free marketing.

      --
      If builders built buildings the way programmers wrote programs, then the first woodpecker would destroy civilization.
    15. Re:Here we go again (SCO) by man_of_mr_e · · Score: 3, Informative

      Uh.. what?

      C# has absolutely nothing windows oriented to it. It's a completely platform agnostic language.

      Now, if you're talking about .NET, that's a slightly different story, although much of it, especially the CLI is also platform neutral. The only parts that are windows specific are things that can be replaced, such as the GUI framework.

    16. Re:Here we go again (SCO) by kyz · · Score: 1, Interesting

      Programmer time costs more than machine time in almost all cases. Why have programmers reinventing the wheel when you can have a library of well tested code to cover most of what programmers need to write?

      --
      Does my bum look big in this?
    17. Re:Here we go again (SCO) by Anonymous Coward · · Score: 1, Informative

      Look at the summary:

      the infringed elements of Oracle America's copyrighted work include Java method and class names, definitions, organization, and parameters; the structure, organization and content of Java class libraries; and the content and organization of Java's documentation

      It's talking about header files and auto-generated (or at least function-derived) documentation. Copyright covers creative expression. Function is not copyrightable. The fact is that if you want something substantially compatible with Java, the class names, definitions and parameters must be the same. Even the "organization" (the order of functions appearing in the code etc.) has to be the same if you want to have certain types of binary compatibility, because it determines the layout of data members in memory, which is functionally significant.

    18. Re:Here we go again (SCO) by man_of_mr_e · · Score: 1

      Because devices run on different hardware and CPU's. C requires that you (at a minimum) recompile for every platform, and ship a different binary for every platform.

    19. Re:Here we go again (SCO) by freeshoes · · Score: 4, Insightful

      Yeah like all the C libraries out there?

    20. Re:Here we go again (SCO) by John+Hasler · · Score: 2

      There are C libraries. Lots of them.

      --
      Warning: this article may contain humor, sarcasm, parody, and perhaps even irony. Read at your own risk.
    21. Re:Here we go again (SCO) by Anonymous Coward · · Score: 3, Insightful

      Anon because skewering is anticipated....

      Really? Comparing to SCO?

      I'm replying to a post that is thinking it through vs. some of the others.

      I know Google can do no wrong in some people's eyes, but isn't it possible that some middle manager and his crack wiz kids didn't think and indeed copied code directly from Oracle's Java (it pains me to say that name...I already miss Sun). I've seen this many times where people see code, use code, and don't think of the legal ramifications. I'm sure everyone on Slashdot looks at the copyright language for every snippet of code they find on websites but doesn't mean everyone does.

    22. Re:Here we go again (SCO) by UnknowingFool · · Score: 2, Insightful

      I don't know enough about the specifics in this case but clean room implementation is not always a ironclad defense. The specifics will matter since this is about code that is copyrighted and not just patents. The code might match up but Google will have to show that such code was trivial and obvious. For example if you have a method that adds integers together:

      public int add(int a, int b) { return (a+b); }

      There are only a handful of ways to do this. If two different implementations come up with the same way, although the code might have been copyrighted, it's not infringement per se. Google may have to show (1) it really was a clean room implementation (and that code really wasn't stolen) and (2) such similarities were inevitable given the goal of the implementation.

      The infringed elements of Oracle America's copyrighted work include Java method and class names, definitions, organization, and parameters; the structure, organization and content of Java class libraries; and the content and organization of Java's documentation

      From the complaint, some of parts the code are most likely not copyrightable, especially if you doing an implementation like Google has done. The method and class names and the parameters might fall under Scènes à faire. The rest will have to determined by what may be a long and painful fight if Oracle wants it to be.

      --
      Well, there's spam egg sausage and spam, that's not got much spam in it.
    23. Re:Here we go again (SCO) by Anonymous Coward · · Score: 0

      And good riddance if they do.

      Somehow, and I'll let the Java folks give their idea about why, *every* *single* program I've ever seen that was written in Java manages to suck. Really. Every last one. They're always slow, annoying to use, don't feel like native apps, use a ton of memory for what they do.

      I'm not sure what the deal is, but there you have it. Of course, *some* programs written in C++ also suck due to programmer incompetence, but a bunch of them don't suck, as well. But I've never seen one in Java that didn't suck.

    24. Re:Here we go again (SCO) by Anonymous Coward · · Score: 0

      because an error in java halts the part you're working on, an error in c crashes the whole program...

      until you put it in a managed container.

      and the trend is going towards getting cheapo interns to do the low bidding of programming....

    25. Re:Here we go again (SCO) by zach_the_lizard · · Score: 2, Insightful

      C can have just as large amounts of well-tested library code as Java or any VM or interpreted language can. A better point would be that these languages have features that make it easier to write code, such as garbage collection.

      --
      SSC
    26. Re:Here we go again (SCO) by pitdingo · · Score: 0, Flamebait

      who controls the c# specification? I am not talking about what organization rubber stamped it, but what standards body controls it?

    27. Re:Here we go again (SCO) by C_Kode · · Score: 1

      Also, is oracle really trying to state that they have never heard of clean room design? Oracle is pretty screwed on this case, and with google's intent to fight hard, all Oracle is going to do is kill their own business off.

      Java has now become a liability, so now people won't want to use it. Simple.

      The issues is Google recreating the JVM. Most people who use Java do not do that. While Oracle's actions may put some people off, Java's use is far to wide spread for people to just stop using it.

      Nobody is liking Oracle right now, but I'm sure any serious developer isn't going to let what happen stop them from using Java if it's the best tool for the job. I mean do you realize how many major applications / frameworks are built using Java?

      It's just not going to happen. Oracle would have to do something a whole lot worse for that to happen.

    28. Re:Here we go again (SCO) by man_of_mr_e · · Score: 5, Insightful

      What I find ironic is that everyone was worried about Microsoft suing open source implementors of .NET, and claiming that Java should be used instead. ... Oops.

    29. Re:Here we go again (SCO) by DrgnDancer · · Score: 4, Insightful

      C isn't portable. If I write something in Java it will probably (for a very high value of "probably" too) work on any of a dozen platforms. If I write something in C I have to port it. Porting it costs programmer time and we've already established that programmer time is more costly than machine time. In theory C could be made to be somewhat portable (It would still have to be compiled on every platform and the binaries distributed separately), but in practice this would require a lot of OS vendors that hate each other to standardize a lot of APIs. It's probably not going to happen.

      --
      I don't need a million points of light, just two points of multi-mode fiber and a 10 Gig-E router.
    30. Re:Here we go again (SCO) by man_of_mr_e · · Score: 1

      I'm not sure how your question has anything to do with whether the C# language is platform agnostic or not.

      C# is an ECMA and ISO standard.

    31. Re:Here we go again (SCO) by freeshoes · · Score: 1

      C is portable, everything with a CPU has a C compiler.

    32. Re:Here we go again (SCO) by freeshoes · · Score: 0, Troll

      So you give up order of magnitudes in performance over the life of the running application, to save a few minutes compiling, or some disk space, for each build.

    33. Re:Here we go again (SCO) by poetmatt · · Score: 1

      Uh, this lawsuit is exactly like SCO/IBM, and everything shows the same way so far in how Oracle is playing it. Oracle wants money for licensing and to claim they own the entirety of Java, and that was, well, the SCO scenario but for linux.

    34. Re:Here we go again (SCO) by freeshoes · · Score: 1

      Fix the error, write good code. That the problem, "look with our programming language you can write shit code", moral hazard.

    35. Re:Here we go again (SCO) by nschubach · · Score: 1

      But there's also the fact that C is not abstracted enough from bare metal that it's hard to create an application in C that works on x86, x64, PowerPC, ARM and any variation of hardware that comes available.

      While there are libraries for this stuff, most of them require some boilerplate code to interface with. Java and other higher level languages eliminate most of that allowing you to develop apps without spending days or weeks worth of time copy/pasting code in order to write logic.

      --
      Every time I start to have faith in humanity, I ruin it by driving to work between 7 and 8 am.
    36. Re:Here we go again (SCO) by poetmatt · · Score: 1

      Google didn't recreate the JVM, they went around it via Dalvik. Please please please don't make me dig up the articles explaining this.

      Java is huge, but this will put people off of oracle and java in many different ways.

    37. Re:Here we go again (SCO) by man_of_mr_e · · Score: 1

      There are literally hundreds of different processors out there, some are binary compatible with each other, some aren't. It would quickly devolve into an unmanageable mess trying to compile apps for each platform, then you have to confuse the user by making them choose which platform to download.

      Microsoft used to do that with Windows mobile, and it was a mess.. and it put severe limitations on what platforms could be used.

      This way, if a new processor comes out, someone need only write a vm for it, and all apps work developers won't need to recompile for new platforms.

    38. Re:Here we go again (SCO) by drinkypoo · · Score: 4, Insightful

      I don't think it's that bad, but certainly ORACLE becomes a liability

      Becomes? You must be new.

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    39. Re:Here we go again (SCO) by binarylarry · · Score: 0

      C is more portable than Java.

      I develop with Java, I like Java. But C is everywhere, Java is not.

      It's easier to port C because it has a much simpler runtime environment. The leanness means less work to get all the tools and libraries working.

      --
      Mod me down, my New Earth Global Warmingist friends!
    40. Re:Here we go again (SCO) by freeshoes · · Score: 1

      You can write portable C code that will run without altering the code.

    41. Re:Here we go again (SCO) by Moridineas · · Score: 1

      Why do people need a compiler? Just use an assembler, all that C bloat makes everything slower.

      Can handcoded assembly be faster than C be faster than Java? Sure. The reverse is true as well, and with today's multicores, complicated pipelines, etc, chances are that compilers (or VMs) are going to be better at it than you are.

      There's something to be said for JIT optimization and profiling, and the runtime information that virtual machines can gather and then optimize for.

    42. Re:Here we go again (SCO) by freeshoes · · Score: 1

      Yeah while you wait someone to write a VM, 5 years earlier recompiled my C program and now have the market share.

    43. Re:Here we go again (SCO) by nschubach · · Score: 1

      Java is an ISO standard, yet we are still here.

      What makes ECMA more resilient than ISO?

      --
      Every time I start to have faith in humanity, I ruin it by driving to work between 7 and 8 am.
    44. Re:Here we go again (SCO) by Anonymous Coward · · Score: 0

      Oh sure, and Java has absolutely nothing to do with Oracle.

    45. Re:Here we go again (SCO) by Moridineas · · Score: 1

      So since it's not designed by committee, that's bad?

      What about java? Or C for the first 20 years of its existence?

    46. Re:Here we go again (SCO) by Anonymous Coward · · Score: 0

      C is a systems language. Anyone using it for applications development is stuck in the 90s.

    47. Re:Here we go again (SCO) by Issarlk · · Score: 1

      You can ship shit code that still runs, or not ship at all and go under because your C programmers leave too many bugs in the code that make the app crash hard.

    48. Re:Here we go again (SCO) by Nethemas+the+Great · · Score: 1

      I'm curious to see how this is going to play. Given that Java technology are open specifications is a "Clean Room" implementation a doable defense?

      --
      Two of my imaginary friends reproduced once ... with negative results.
    49. Re:Here we go again (SCO) by freeshoes · · Score: 0, Troll

      Idiot "Look I rewrote this in Java now everyone can download it and install it". Other: "Why is running so slow, also 99% of our users are on Windows, Linux or OSX, wouldn't it be easier to release 3 binaries?" Idiot: "Yeah but what if a new platform comes out?" Other: "But would there be a Java runtime?" Idiot: "Not right away, maybe in a few years" Other: "You're fired"

    50. Re:Here we go again (SCO) by AmaDaden · · Score: 5, Informative

      James Gosling confirmed this some time ago "During the integration meetings between Sun and Oracle where we were being grilled about the patent situation between Sun and Google, we could see the Oracle lawyer's eyes sparkle. Filing patent suits was never in Sun's genetic code. Alas.... " http://nighthacks.com/roller/jag/entry/the_shit_finally_hits_the

    51. Re:Here we go again (SCO) by Anonymous Coward · · Score: 2, Informative

      So you give up order of magnitudes in performance over the life of the running application

      [citation needed]

      In order for the citation to count, it has to be significant enough that, using modern hardware, it would be easily noticeable and detrimental to non-mission-critical applications and/or not intended for a realtime OS (which is to say, ordinary, common-use applications).

      I'll give you the benefit of the doubt and simplify the need to prove magnitudes in performance to just one magnitude if need be, as multiple magnitudes of order seems to either be logically unsound, magically turning, for instance, a O(n) function into O(n!); or semantically unsound, as "magnitudes" would imply a horrifying execution time increase which would have stymied the development of ANY higher-than-C-level language, a situation which is provably untrue due to the proliferation of languages that are, in fact, higher-level than C and are very frequently used in the modern world.

      And because you appear to be arguing C over any other language, please provide citations for as many not-C languages as possible (Java, C#, Obj-C, etc, etc). As I have used many not-C languages in my life and have not noticed execution time and performance decrease by magnitudes except in the most extreme of cases, "everyone knows this" does not count as a citation.

    52. Re:Here we go again (SCO) by DrgnDancer · · Score: 5, Insightful

      C is portable, a given piece of C code is not necessarily. I guarantee that if I write a program of any complexity in C on Windows, and don't make specific efforts, that program will not compile on Linux or MacOS. You're continuing to ignore the point. Yes, you can write stuff in C and port it to any platform. No one is denying that. The point is that it costs extra money to port it, when you could just write it in Java and have it work on all those platforms. This is a significant cost savings for multi-platform apps.

      There are a great number of applications (and the number grows every time Moore's Laws increments) that simply don't need more performance. The person behind the keys simply doesn't care that his/her accounts receivable application *could* have responded in .0005 seconds had it been natively compiled but instead responds in .001 seconds because it runs through an interpreter. Faster than human thought is faster than human thought.

      For lots of things performance remains important. For those things, people will keep using compiled languages and dealing with the headaches of porting. For everything else, Java is fine, and a huge cost saver in a lot of cases.

      --
      I don't need a million points of light, just two points of multi-mode fiber and a 10 Gig-E router.
    53. Re:Here we go again (SCO) by freeshoes · · Score: 1

      Git

    54. Re:Here we go again (SCO) by gtall · · Score: 1

      Most organizations have no reason to move away from Java because of Oracle's lawsuit since most organizations aren't attempting to do what Google is trying to do with Java (the language)...if indeed we can actually call what Google has implemented Java.

      The reason organizations might wish to move away from Java is because Oracle is more or less boneheaded when it comes to software development. That's the right reason to move.

    55. Re:Here we go again (SCO) by antek9 · · Score: 1

      I miss Sun, too, but she was Jin's woman anyway, you know...

      --
      A World in a Grain of Sand / Heaven in a Wild Flower,
      Infinity in the Palm of your Hand / And Eternity in an Hour.
    56. Re:Here we go again (SCO) by erroneus · · Score: 1

      Then let's hope the outcome is also identical. I'd like nothing better than for Oracle to fail under their own weight. They are over-priced and under-performing. Until now, they have been surviving on name recognition and business doesn't mind shelling out millions to companies like Oracle. But once the spotlight is put on such companies, business will start to see through their bluster and see nothing there.

    57. Re:Here we go again (SCO) by shentino · · Score: 2, Insightful

      That's easy enough to resolve.

      Be a good programmer and don't make naive assumptions about types.

    58. Re:Here we go again (SCO) by man_of_mr_e · · Score: 1

      We're talking about mobile devices here, in which 99% of the users are NOT on windows.

    59. Re:Here we go again (SCO) by tofubeer · · Score: 2, Informative

      Only if you have A CPU that directly executes C code. You can, however, write portable C code that can be compiled without altering the code.

      Source portability is not the same thing as binary portability.

    60. Re:Here we go again (SCO) by Anonymous Coward · · Score: 0

      Since when has this ever been the case?

      Name one instance where you can download the Jar file and have it run on the system without downloading the entire JRE.

      Download OpenOffice and guess what, you need to download the JRE. How many damn idiots know how to do anything other than double-click on an exe? See the problem here is that Java is less portable than ... Flash. Flash you can download the .swf and run it, yay, look at it go. Apple is pushing away the Java and Flash bundles, guess what that means, less "oh just download it and run it"

      At least with C, C is the goddamn Batman of programming languages. There's a tool to make it work, on any platform.

    61. Re:Here we go again (SCO) by man_of_mr_e · · Score: 1

      Java is not an ISO standard. Where did you get that idea?

    62. Re:Here we go again (SCO) by Anonymous Coward · · Score: 0

      hey, don't mock at me, I *do* agree that this is a moot point, but the problem lies with business going the cheap route just because there is one.

      remember all the 4G language fiasco? the premise is the same, a good programmer costs good money, if you can get barely working code at half speed paying a third of the money then it's all good and well, because quality is no more a selling point.

    63. Re:Here we go again (SCO) by man_of_mr_e · · Score: 1

      I'm sorry, were you trying to make a point?

      If so, you failed.

    64. Re:Here we go again (SCO) by gtall · · Score: 1

      No, few people were worried about MS suing open source implementors of .NET because no one in their right mind would bother using such a thing that MS call pull the rug from underneath were they to get any traction. Sun with Java was the right decision. Oracle with Java might still be the right decision, but it won't be because of this lawsuit. It will be because Oracle will bollix the Java implementations they shift. Has anyone ever pointed with pride at Oracle software?

    65. Re:Here we go again (SCO) by Anonymous Coward · · Score: 0

      Parrot virtual machine

      http://www.parrot.org/

    66. Re:Here we go again (SCO) by voidptr · · Score: 2, Insightful

      It sounds like from the summary that the bulk of this 'copying' was the API, which I don't think is even eligible for copyright(not artistic).

      Good API design is hard. Saying that it's just API design and not artistic is severely disingenuous to engineers who are actually good at it (and engineers who cringe and suffer when forced to deal with bad API designs.)

      --
      This .sig for unofficial government use only. Official use subject to $500 fine.
    67. Re:Here we go again (SCO) by khb · · Score: 1

      I know the internet sometimes behaves like a memoryless system (odd, since google caches "everything") but this is a bit absurd.

      At stake isn't Java, but Java ME. This was thrashed out days ago. People like Gosling observed that Oracle is "right" in that Google misbehaved, and did it knowingly and over Sun's objections.

      One summary is available at: http://www.infoworld.com/d/developer-world/why-oracle-was-right-sue-google-392-1?page=0,1

    68. Re:Here we go again (SCO) by Anonymous Coward · · Score: 0

      And spend the next 40 years dealing with string pointers. Or better yet, just use floats and hope they work the same across all processors and that you have no binary computations against said floats.

      Maybe you can predict if said program will be running on a EBCDIC or ASCII system... or do you store everything in Unicode?

    69. Re:Here we go again (SCO) by cynyr · · Score: 1

      Python + QT?

      --
      All of the above was encrypted with a Quad ROT-13 method. Unauthorized decryption is in violation of the DMCA.
    70. Re:Here we go again (SCO) by delinear · · Score: 1

      He said 99% of users are on Windows, Linux or OSX (okay, in the phone world it's iOS, but it's derived from OSX).

    71. Re:Here we go again (SCO) by cynyr · · Score: 1

      postgresql as well. Granted i don't have a good alternative to openoffice.

      --
      All of the above was encrypted with a Quad ROT-13 method. Unauthorized decryption is in violation of the DMCA.
    72. Re:Here we go again (SCO) by Anonymous Coward · · Score: 0

      You can in theory, but that takes years of additional hardware study, and 99% of C programmers already fail at writing portable code. Take any 10 random C libraries you can find and they all probably fail to account for unaligned memory access across platforms (because most code is written with x86 in mind).

      Typical programmers just want to write code, not fuck about with the hardware unless absolutely necessary. It's masochistic of you to suggest they should.

    73. Re:Here we go again (SCO) by delt0r · · Score: 1

      However java, for the most part is *not* slower. I have a some java code that replaces some C. Its more than 5x faster.

      --
      If information wants to be free, why does my internet connection cost so much?
    74. Re:Here we go again (SCO) by idontgno · · Score: 1

      Sure, given enough

      #ifdef

      blocks and the willingness to write alternate-platform versions of, say, 25% of the codebase. It's perfectly portable. And if someone wants to run your code on a platform you've never heard of, screw'em.

      --
      Welcome to the Panopticon. Used to be a prison, now it's your home.
    75. Re:Here we go again (SCO) by farble1670 · · Score: 1

      to be fair, sun was just as up-in-arms about google + java as is oracle (gosling's words). the difference? sun had shallower pockets, fewer lawyers, and some concern about how such a suit would be viewed by outsiders.

    76. Re:Here we go again (SCO) by Jason+Earl · · Score: 1

      Yes, there are a lot of organizations that are stuck on Java. They have made significant investments in this language, and now, despite the fact that Oracle is using its ownership of Java as a weapon against a competitor, these organizations can not do anything about it.

      However, there are also plenty of organizations that are just now choosing their tools, or are deciding how they will invest their development funds in the future. For these people, if they have even a lick of sense, Java is off the table. Google has not done anything wrong. Heck, it isn't really even using Java, it has its own VM that just looks like Java, and it is primarily using the Harmony classpath re-implementation. Oracle is suing Google because it thinks that it can game the legal system, and because it wants to damage Android's growing lead in the mobile sector.

      Oracle is a big company, and these days most developers compete with Oracle on some level. What's to say that they won't sue you as well?

    77. Re:Here we go again (SCO) by cynyr · · Score: 1

      we could just use python....

      --
      All of the above was encrypted with a Quad ROT-13 method. Unauthorized decryption is in violation of the DMCA.
    78. Re:Here we go again (SCO) by gstoddart · · Score: 3, Insightful

      A better point would be that these languages have features that make it easier to write code, such as garbage collection.

      And, my personal favorite ... generics.

      God, I love being able to declare a hash table of without needing to care any more about how one would write the innards of a hash table.

      For me, having data structures on tap is one of the best features of modern languages. That and the huge libraries of code which I can just use to accomplish my task instead of starting from scratch. I'm not interested in writing an XML parser -- I just need it parsed in as few lines of code as possible.

      Java isn't perfect, but I fear Oracle is ruining it.

      --
      Lost at C:>. Found at C.
    79. Re:Here we go again (SCO) by UnknowingFool · · Score: 1

      It's actually more doable because the specifications are open because there is no question where the specifications came from. Google will have to show that the actual code was not available to the developers and thus could not have been copied. For example if the specifications say there must be an add method called "addInt" to add two integers together and return another integer, Google comes out with which is very similar to Oracle's code:

      public int addInt (int a, int b) {return (a+b);}

      Now that is very generic and Google could argue the similarities are trivial. However if the actual Oracle code was the following and it matches Google's code, some would question whether the code was copied.

      public int addInt (int mySuperInt, int myGreatInt) { return (mySuperInt+myGreatInt);}

      It would be a matter of digging into the specifics. If the specification mentioned the integers "mySuperInt" and "myGreatInt", then it's likely not copying. If the specifications did not mention the names of the parameters but only their types, then this is a hint that copying was done. Digging into the specifics is something that could take a long time if Oracle decides to pursue it.

      --
      Well, there's spam egg sausage and spam, that's not got much spam in it.
    80. Re:Here we go again (SCO) by kyz · · Score: 1

      Well, this one example does look pretty copied. Sun wrote sun.security.provider.certpath.PolicyNodeImpl - notice it's fully documented, and authored by Seth Proctor and Sean Mullan. It's not part of the standard Jaa library, it's part of the JVM's private implementation, and was released later on as part of OpenJDK.

      Google have exactly this same code, minus the comments in their copy of Apache Harmony, but it's not in the official Apache Harmony, at least since 2005 (Don't believe me? Run svn log -v http://svn.apache.org/repos/asf/harmony | grep PolicyNodeImpl).

      However, this code isn't central to Android. It's part of the test suite, it doesn't run on any phones.

      On the one hand - this looks like a cut and dried infringement. On the other hand, it's a pretty trivial part of the project. Is that the best Oracle can find? If it is, then it's on a par with SCO holding up malloc.h as the "smoking gun".

      --
      Does my bum look big in this?
    81. Re:Here we go again (SCO) by idontgno · · Score: 1

      She's on the job!

      And she does actually use the phrase "It's SCO II".

      And, it appears that Google's counter to the copyright infringement claims is that the code in question was open sourced between copyright registration and Google incorporation. Quoting Groklaw:

      As to Oracle's copyright claim, the Complaint alleges that "Oracle America owns copyrights in the code, documentation, specifications, libraries, and other materials that comprise the Java platform" and that "Oracle America's Java-related copyrights are registered with the United States Copyright Office, including those attached as Exhibit H." Compl. 11. Exhibit H to the Complaint consists of certificates of copyright registrations obtained by Sun for two identified works, named "Java 2 Standard Edition 1.4" and "Java Standard Edition, Version 5.0" (the "Asserted Copyrights"). Compl. Ex. H. These registrations appear to relate to versions of certain Sun Java materials that were released as open-sourced software in 2006 and 2007.

      (Emphasis mine)

      So, is it just me, or does anyone else conclude that Oracle really doesn't understand the licensing basis of their own copyrighted API codebase? If we can believe Google's statements, either it's that or Oracle is trying to take back code it released to the Open community 3 years ago.

      --
      Welcome to the Panopticon. Used to be a prison, now it's your home.
    82. Re:Here we go again (SCO) by Nethemas+the+Great · · Score: 4, Informative

      I thought most of us saw the obvious reasons already. Sun was rather like a gift wrapped fruit basket.

      • They were constantly struggling with money problems making them weak to takeovers.
      • MySQL, Oracle's database division's biggest threat was purchased by Sun.
      • Sun owns Java, and more importantly J2EE--the technology powering the overwhelming majority of every corporate back-end that isn't .NET.
      • Sun railed hard against software patents, Oracle loves software patents, uses them as a profit center
      • Sun possesses a 10-year, patent non-aggression pact with Microsoft (started in 2004)
      • Sun has a somewhat sizable patent portfolio, including pertaining to Java, anyone not deriving from OpenJDK (which has permanent indemnification) is subject to litigation.
      • Most of Sun's software patents were as yet untapped (they never sued for licensing agreements) potential points of licensing revenue.
      • The Java specifications are copyrighted. There are a number of APIs that have similar designs
      --
      Two of my imaginary friends reproduced once ... with negative results.
    83. Re:Here we go again (SCO) by man_of_mr_e · · Score: 1

      Well, oracles core database products is very good, and is used in a lot of high visibility applications. So one cannot say that everything oracle does is shit.

      However, you are wrong about open source people not being worried about MS and .NET. There are entire websites built up around trying to fight .NET gaining a foothold in open source software. And the majority of the argument is that they are afraid Micorosft will sue people that implement .net in open source software.

      Now, it turns out that the Java camp were the first ones to sue.

    84. Re:Here we go again (SCO) by ADRA · · Score: 1

      The wording of the summary leaves me to understand that they're suing over the API of the language which is as much as can be assumed as not copyrightable. Maybe the real question would be is how much of the public Java API stack are determined strictly 'API' vs. implementation. Would HashMap be considered an API class even though its a concrete class?

      --
      Bye!
    85. Re:Here we go again (SCO) by iamwahoo2 · · Score: 1

      I would disagree and say that the underlying architecture that drives the designer to an API requires some creativity and critical thinking, but not the API themselves. I immediately think of three equivalent hardware device that I recently had to work with that all had seperate driver APIs. Since the functionality of the cards were the same in order to confrom to a standard, the APIs had to provide access the same types of functions and that drove them to have APIs that were practically identical except for the actual function names and parameter names.

    86. Re:Here we go again (SCO) by drewhk · · Score: 3, Insightful

      There are two types of fools:
      1. The fools who trust in the optimization skills of the compiler/JIT compiler
      2. The fools who trust in their own optimization skills

      My personal experience is that Type 1 fools are harmless, you can speed up their code easily. Type 2-s on the other hand do a lot of mess, code in assembly, whatever and still manage to fuck up performance and it is a pain to correct it later. Modern CPU architectures are extremely complex, and different architectures have different characteristics (e.g Atom vs Pentium 4). There are many programmers that used assembly in their college years and think that those skills apply on current systems.

    87. Re:Here we go again (SCO) by Anonymous Coward · · Score: 0

      Hard or easy doesn't have anything to do with it. Lots of things are hard but not covered by copyright.

      It only applies to "original works of authorship fixed in a tangible medium of expression." API, pretty much by definition, is divorced from implementation. The only parts that would be covered by copyright would be "original works of authorship". If they are complaining about copied names, for example, copyright probably wouldn't apply to any names that came out of other sources (like design patterns.) Only the parts of the API which are truly original are even potentially covered by copyright, and then there's a bunch of other tests. My guess is that they will be ruled a specification and not a work of authorship; hard, but not protected.

    88. Re:Here we go again (SCO) by russotto · · Score: 1

      C requires that you (at a minimum) recompile for every platform, and ship a different binary for every platform.

      Fine, let's define a C virtual machine. It'll probably look roughly like a 64-bit extension of the Motorola 68020.

    89. Re:Here we go again (SCO) by Thiez · · Score: 1

      Yes, I suppose one could make a case that Linus is stuck in the 90s :p

    90. Re:Here we go again (SCO) by L7_ · · Score: 1

      The CEO of VMWare Paul Martiz thinks that everyone is moving to Python/Ruby, specifically Django and Rails as replacements for the J2EE stack. http://www.enterpriseirregulars.com/27968/vmware-ceo-django-rails-open-frameworks-packaged-apps-as-commodity-and-the-new-kingmakers/

      Think of it what you will, but unless you've tried to write a small-medium sized project in Python (as suggested by ESR: http://www.linuxjournal.com/article/3882 ) then you don't know what you're missing, especially if you're moving from Java.

    91. Re:Here we go again (SCO) by Anonymous Coward · · Score: 0

      More than 5x faster and more than 20x the RAM. More, more, more!

      There's no optimization in any HLL that can't be done in C or in the rare case; ASM. Claims of $language being faster than C are bogus. Did you think about the language used to write the JVM before you claimed Java is faster?

    92. Re:Here we go again (SCO) by Sheik+Yerbouti · · Score: 1

      You mean like source code that was open sourced already under the GPL v2 http://openjdk,java.net/legal

      I am not sure are class and method definitions considered copyrightable I mean that's like header files being copyrightable. Sounds to me like ole Larry said sue them his lawyers said OK and no one at Oracle has a clue what they are doing.

    93. Re:Here we go again (SCO) by bjourne · · Score: 1

      The names of the parameters are also part of the specification as published in the javadocs. Furthermore the coding style guidelines for the Java language, are fairly strict with regards to brace placement, brackets, variable names and so on. Therefore it is not inconceivable that large pieces of Google's implementation will be identical to Oracle's one if they are using the same coding style guidelines.

    94. Re:Here we go again (SCO) by JorDan+Clock · · Score: 1

      Except the point with Java is that you don't port it. You just run it with a Java runtime and it should work. While that's not true 100% of the time, with C you HAVE to rewrite things to get it to work on another OS. Are you sure you program with Java? Because I think you're completely missing the point of the language.

    95. Re:Here we go again (SCO) by sydneyfong · · Score: 2, Insightful

      Name a dozen platforms that runs Java.
      Bonus question: Name a dozen platforms that runs Eclipse.

      --
      Don't quote me on this.
    96. Re:Here we go again (SCO) by man_of_mr_e · · Score: 1

      Actually, a version of C++, which includes C, runs on the .net virtual machine, called C++/CLI

    97. Re:Here we go again (SCO) by s73v3r · · Score: 1

      Not every application needs those "orders of magnitude in performance". In fact, most of them don't, and would benefit more from the increased developer productivity in getting the application created faster.

    98. Re:Here we go again (SCO) by ChristopherBurg · · Score: 1

      That depends on what you mean by portable. I can take a Java application of decent complexity and run it on Windows, Linux, and Mac OS with little or no changes. In the case of Mac OS the same Java binary will usually run on both a PowerPC machine and an Intel one with no changes.

      With C there will be work involved in porting from platform to platform. Yes it can be done but it is certainly a lot more work in most cases than using Java. It's also true C is almost everywhere while Java is not so if you need to port an application to a more obscure platform Java won't be an option.

      Both languages have their ups and downs but as far as ease for porting for most situations I'd much rather use Java than C.

    99. Re:Here we go again (SCO) by ADRA · · Score: 1

      That is port-able, but you still have to write all the tweaks and hacks appropriate for every platform, and invariably you have franken-ifdef's scattered throughout C code. Macro's are one of the primary reason's why C can never be reasonably statically analyzed. If you don't think its relevant, take a look at what modern Java based IDE's can really do with code and your jaw will drop.

      The fact is that when I write a java app, I don't NEED to write a single line of platform specific code. Some apps are ham-strung to specific platforms, but the base language is not.

      --
      Bye!
    100. Re:Here we go again (SCO) by ChristopherBurg · · Score: 1

      Those "orders of magnitude" are irrelevant in most end-user software. What does a user care if his/her media player is running "orders of magnitude" faster if they can't tell the difference?

      Frankly in those cases if it doesn't hamper the user's experience I'll save myself time having to recompile and test multiple binaries by using something more portable. After all what advantage would the user derive if they can't tell the difference?

    101. Re:Here we go again (SCO) by shugah · · Score: 1

      It's highly unlikely that Google made this mistake; they were well aware of the legal ramifications. Google set out to do a clean room implementation of Java (at least the JME VM) knowing that if they messed it up, it would be extremely costly. I don't know how Google did it, but generally when you do a clean room implementation, it means you have two development teams - one that has access to the original code/documentation and basically writes the specs, and another team that has no access to the original code or documentation, and writes the "clean room" code based on these specs developed by the first team. In that scenario, everyone is aware of the implications of cut and paste, so it is unlikely.

      --
      If you aren't part of the solution, then there is good money to be made prolonging the problem
    102. Re:Here we go again (SCO) by nschubach · · Score: 1

      Oh, pardon me. I had read some time back that they were submitting it but never followed up to find it wasn't admitted.

      --
      Every time I start to have faith in humanity, I ruin it by driving to work between 7 and 8 am.
    103. Re:Here we go again (SCO) by ADRA · · Score: 1

      *shrugs* Oracle DB is a hodgepodge internally (how old is it now?) but it runs very well from my experience. I can't say about other pieces of their software stack, but the DB deserves the market share it gets.

      --
      Bye!
    104. Re:Here we go again (SCO) by poetmatt · · Score: 1

      I noticed someone mentioned this on groklaw as well, that it's been open sourced by sun - but I thought google wasn't using openJDK, anyway?

      What is the significance if it's being used in testsuite?

    105. Re:Here we go again (SCO) by Anonymous Coward · · Score: 0

      At least with C, C is the goddamn Batman of programming languages. There's a tool to make it work, on any platform.

      I will find a way to work this quote into at least one conversation every day. For the rest of my life.

    106. Re:Here we go again (SCO) by thePig · · Score: 2, Insightful

      Even though I want to support Google in this case, we cannot be sure - unless we go through their whole set of comments.
      Note that android code was not written by Google - it was by Android Inc - and so we cannot just discount it by saying why would google need to do that.
      This will be a fun fight to watch though.

      --
      rajmohan_h@yahoo.com
    107. Re:Here we go again (SCO) by samjam · · Score: 1

      So you are saying that the second type of fool is the cure for the first type of fool.

      No, wait a minute, you are saying that YOU are the cure for the first type of fool.

    108. Re:Here we go again (SCO) by Surt · · Score: 1

      "structure, organization, and content" seems pretty clear to me. If you've got all of those, you're not looking at a clean-room implementation.

      --
      "Who is the Journal of Quantum Physics going to believe?" --Stephen Hawking
    109. Re:Here we go again (SCO) by UnknowingFool · · Score: 3, Informative

      The main difference is that SCO didn't own the copyrights (and we all knew they didn't) but it took a long, protracted court case to work that out. Once that was settled, SCO didn't have any legal standing to sue IBM for copyright infringement. It is clear that Oracle owns the Java copyrights. The code will probably be similar; it's a matter of how much quibbling Oracle is willing to do. Unlike SCO, Oracle has lots of their own money to battle this out.

      --
      Well, there's spam egg sausage and spam, that's not got much spam in it.
    110. Re:Here we go again (SCO) by Crayon+Kid · · Score: 1

      Aren't both Java and Dalvik open source? If that was the case (verbatim copy of pieces of code) wouldn't it have come to attention much sooner?

      Furthermore, why all this beating around the bush? Why doesn't Oracle come out and say "there, that file, that piece in Dalvik, is copied byte for byte from that file and that piece in Java".

      --
      i ate crayons when i was a kid and now i have two braincells and the blue ones taste nicer
    111. Re:Here we go again (SCO) by man_of_mr_e · · Score: 1

      Lol.. yeah, 10 years ago.. they backed out of the process twice. Really pissed off a lot of ISO people that had invested a lot of time and effort into it.

    112. Re:Here we go again (SCO) by RedMage · · Score: 1

      There are two types of fools:
      1. The fools who trust in the optimization skills of the compiler/JIT compiler
      2. The fools who trust in their own optimization skills

      [...]

      Yeah, but there's rules for them:

      1. Don't optimize.
      2. Don't optimize YET.

      Rule 1 is for type 1 - and is generally the best case. Then you can come along and after rule 2 has expired, make the improvement where it matters. Type 2 fools skip both rules and make a mess.

      --
      }#q NO CARRIER
    113. Re:Here we go again (SCO) by Crayon+Kid · · Score: 1, Interesting

      C# has absolutely nothing windows oriented to it. It's a completely platform agnostic language.

      Q1: Where's a complete FOSS implementation of it, not tied to or dependant on anything from .NET and/or Microsoft?

      Q2: How confident are you that, should you build the next big thing on such an implementation, Microsoft won't come after you one day, like Oracle is coming after Google now?

      --
      i ate crayons when i was a kid and now i have two braincells and the blue ones taste nicer
    114. Re:Here we go again (SCO) by Anonymous Coward · · Score: 0

      implying that as soon as an organization starts using the SDK not the way Oracle envisions, one might become target of a lawsuit.

      But that's the mistake that people are making here. Oracle isn't going after Google for using Java, they're going after Google for creating a version of Java that's incompatible with Oracle's Java. Google has shown a pattern in this regard for creating Java based solutions that only implement a subset of the Java API...AppEngine and GWT also both support only a subset of the Java API.

      If you're a business, this in no way indicates that Oracle will go after you for using or even distributing Oracle's version of Java. All it means is that if you're going to create a version of Java that's incompatible, you have to be absolutely sure that you don't use any of Oracle's code or patented technology in doing so. Which kind of sucks because it means that it's impossible to make a partially compatible Java version like Android since whatever compatible interfaces you do include are subject to Oracle's copyright.

      Out of all the companies that have chosen Java, almost none create their own version rather than using one of the major ones (Oracle-Sun, Oracle-Bea, IBM, etc.) So most companies have nothing to worry about other than that the FUD spread by people like the OP will scare people away from using Java and the ecosystem that makes Java such an appealing value proposition will die.

    115. Re:Here we go again (SCO) by Anonymous Coward · · Score: 0

      Good API design is hard. Saying that it's just API design and not artistic is severely disingenuous to engineers who are actually good at it (and engineers who cringe and suffer when forced to deal with bad API designs.)

      Good recipe, car, and clothing designs are all hard too and all are ineligible for copyright protection. Thankfully the standard for copyright protection is a little more stringent than, "but it was hard, dude!"

    116. Re:Here we go again (SCO) by Anonymous Coward · · Score: 0

      1. MySQL was not a threat to Oracle. PostgreSQL was always a larger threat from OSS and there are MSSQL and DB2 and others.

      2. Oracle now controls the FULL STACK. Hardware OS (Solaris) Java DB.

      #2 is as clear as day to being the most important part. MySQL and other crap is just bonus.

    117. Re:Here we go again (SCO) by Amouth · · Score: 1

      Also after SCO - no lawfirm will be nearly as stupid as SCO's..

      --
      '...if only "Jumping to a Conclusion" was an event in the Olympics.'
    118. Re:Here we go again (SCO) by meloneg · · Score: 2, Insightful

      All right. I'll probably cheat and hit google before I'm done writing this.
                        Mac OS X
                        SunOS
                        Solaris
                        Irix
                        HP/UX
                        Windows NT
                        Windows Vista
                        Windows NT
                        Android
                        Linux
                        FreeBSD
                        AIX

      Nope. No google needed. I've personally run and/or written Java/Swing applications on all but 3 of those.

    119. Re:Here we go again (SCO) by meloneg · · Score: 1

      Gee. Why have I been installing Flash players for all these years? I thought I had to download and install that particular VM in order to run those .swf files.

    120. Re:Here we go again (SCO) by iplayfast · · Score: 1

      I've got a largish app written in c++ that runs on windows/mobile/and as a cgi under linux. The mobile stuff was the biggest difference, with byte offset problems with some of the data files. I do have a file class, but that is more for ease of use then OS differences. There are some, like windows uses chsize and Linux uses ftruncate, but for the most part the same code runs on each.

      I don't think it would be a big problem to move windows and linux closer together. Maybe an include to cover the differences.

      Output is the largest difference since windows doesn't use X. But if you can use printf as your output standard I would estimate it closer to 5% difference.

    121. Re:Here we go again (SCO) by Anonymous Coward · · Score: 0

      A dozen platforms that run Java:

      1. Linux
      2. FreeBSD
      2. Windows
      3. Mac OS
      4. Solaris
      5. AIX
      6. Tru64
      7. Android (close)
      8. Symbian (J2ME)
      9. Blu-ray (BD-J)
      10. Smart cards (JavaCard)
      11. BlackBerry OS
      12. QNX

    122. Re:Here we go again (SCO) by Anonymous Coward · · Score: 0

      What I find ironic is that everyone was worried about Microsoft suing open source implementors of .NET, and claiming that Java should be used instead. ... Oops.

      The risk is still high for both .NET and Java. Both are heavily patented, both are controlled by large corporations. It is clear that using either is potentially risky. Better to use truly open alternatives, that are not controlled by a single large corporation - basically anything but Java and .NET (C, C++, Python, Ruby, JavaScript, etc.).

    123. Re:Here we go again (SCO) by paulsnx2 · · Score: 5, Insightful

      Just because something is "hard to do" doesn't mean you can copyright it. And it doesn't mean that something is primarily an artistic expression.

      It is instructive to consider why you cannot copyright fashion in current law (something that the Fashion copyright bill intends to change). Fashion is considered primarily utilitarian, i.e. you wear a shirt to cover your top, and wear pants to cover your bottom. To allow copyright to control basic utilitarian functions would be hugely damaging to the fashion industry. Even the Fashion Copyright bill acknowledges this fact, restricting fashion copyright to 3 years, and only to identical copies.

      Nobody says making attractive cloths isn't hard to do. Nobody is saying that poorly designed cloths make some people cringe. In fact, there can be huge artistic components to the design of both cloths and APIs.

      But at the end of the day, you wear boots to cover your feet, gloves to cover your hands, and hats to cover your head, and belts to hold up your pants, etc. etc. You use APIs to paint buttons and fields on windows, write to files, access the internet, etc. etc.

      These functions are primarily utilitarian in nature...

      APIs are designed to allow certain functionalities in computer systems, and the market is ill served by restricting the control of their use perpetually to one company.

      If copyrights are allowed for APIs, then we are all screwed. Let's count the ways:

      Copyright on APIs would amount to a nearly 100 year lock on building systems that conform to various interfaces. APIs are all derivative, and companies like IBM could assert control over vast ranges of APIs that are clearly derived from their earlier systems. At the same time, changes to APIs produce opportunities to produce new copyrights (even as their use might be prohibited due to infringement on other APIs). Copyrights on APIs would effectively drive all small businesses out of programming, as nothing can be done without the use of an API, and all the control of APIs would reside with the historical companies who first designed the APIs we all use. Even the big companies today might not be able to assert control over APIs whose original authorship might be hard to nail down today.

      As I have pointed out in the past, not one single company has secured all the IP required to produce a smart phone. If the courts side with Oracle on their claim that they have a copyright on an API, then no company will be able to secure the IP required to write a single program. Only by having vast army of lawyers can any company produce a smart phone today. Allow copyrighted APIs, and only by having a vast army of of lawyers can anyone write a program.

      I can only hope our courts can see the problem with this idea.

    124. Re:Here we go again (SCO) by Anonymous Coward · · Score: 0

      Java? C#? Maybe you guys should think about dropping the training wheels, and really learn how to program.

    125. Re:Here we go again (SCO) by gnasher719 · · Score: 1

      It's highly unlikely that Google made this mistake; they were well aware of the legal ramifications.

      Like it was highly unlikely that Google's cars would be recording unencrypted wireless traffic while driving through Europe and throwing encrypted wireless traffic away. People sometimes do very stupid things when they think they can get away with it.

    126. Re:Here we go again (SCO) by jbengt · · Score: 2, Informative

      Regardless of API design work, the API is considered functional and there are not many substantially different possible ways to express it, so it is not considered copyrightable. (not to mention that it is required for programming that must interface using it)
      IANAL, YMMV, etc.

    127. Re:Here we go again (SCO) by igomaniac · · Score: 1

      I would disagree and say that making a good API instead of just exposing the underlying architecture directly is an art. With experience you start to see how people often go wrong in the same ways when trying to use your API and it becomes a game of trying to make the API in such a way that 1) all errors are caught 2) all the possible ways you can use the API which is not an error actually work and 3) that it's relatively intuitive to write good code with good performance.

      --

      The interactive way to Go -- http://www.playgo.to/iwtg/en/
    128. Re:Here we go again (SCO) by Dr.Dubious+DDQ · · Score: 1
      "And then the question is - move to WHAT?"

      A whole collection of other things, at least as far as Android is concerned.

      From what I remember seeing pop up so far since this started, Android actually is not really "Java® based". It looks like the Java® programming language was chosen for writing Android applications initially just because "mobile" developers would be used to it.

      Android's "Dalvik" interpreter is apparently not actually a Java® interpreter at all. There's a translation that takes place when preparing and Android package that converts the Java-language code to the native Dalvik stuff.

      The point is that there's no reason other languages can't have their own converters, allowing someone to write Dalvik-based applications in just about any language you might want.

      If I were Supreme Emperor of Google, I'd be looking at the possibility of Python and their own "Go" language, at least.

      (This is just my understanding of the situation - corrections are welcome.)

    129. Re:Here we go again (SCO) by bobaferret · · Score: 1

      In my experience, It's a balancing act. And has a lot of back and forth. When I design an API, I generally write a reference/spike implementation. Extract out the API. Check the API for usability and clarity of intent, change it, and then reimplement the app to use the new API. Then expand the app with additional features that need to be extracted out. Rinse/repeat about 3 times. I deal mostly with plugins and protocals, as oppsed to drivers which may have a little less feature creep or abstraction. When I'm building something new from scratch I find it impossible to really design a decent API from a pure theorectical standpoint without first trying to solve the real problems I'm trying to address. Although alot of API's can generally benefit from some research of related problem areas and exiting API's. And I wouldn't write one from scratch if there was already a perfect match. Anything I publish for the general public tries to focus on readability and ease of use. I abhore API's that commite based, and don't take this into account. The w3c dom API comes to mind as crack addeled, esp. when viewed against jdom.

    130. Re:Here we go again (SCO) by HereIAmJH · · Score: 1

      C isn't portable.

      Take the Java and .NET approach, create VMs for various platforms. Even better, build one to support C++. Although hardcore C++ purists might have to choke on a little syntactic sugar for it to gain wide acceptance. A write once, run anywhere C++ with Borland style properties and I'd change in a heartbeat.

      --
      Another day, another update to a Google android app.
    131. Re:Here we go again (SCO) by Anonymous Coward · · Score: 0

      Actually it doesn't, it ships native 'unsafe' assembly combined with the CIL bytecode -- only a subset of C++ is implemented on top of the CLR.

      Also C++ is not a strict superset of C. Casting, VLAs, introduced keywords, etc. all make it unable to compile 100% of C code.

    132. Re:Here we go again (SCO) by Anonymous Coward · · Score: 0

      Windows NT Windows Vista Windows NT

      Your resume must be interesting.

    133. Re:Here we go again (SCO) by Anonymous Coward · · Score: 0

      Wait.. you think Moore's law increments?

      Is it like back in the day when everything turned from black and white to color?

      Oh wait nevermind.. you're just not a programmer so you don't understand what Moore's law is. Or.. you are one but you're just too stupid to understand a continuous progression?

      Ugh.. now I'm at a loss because that means pretty much whether or not you're a programmer, your entire post was written by someone completely unrelated to the subject he was talking about.

      Ugh. More Slashdot trash. Ugh.

    134. Re:Here we go again (SCO) by pavon · · Score: 1

      So, is it just me, or does anyone else conclude that Oracle really doesn't understand the licensing basis of their own copyrighted API codebase?

      OpenJDK is released under the GPL. The android versions of the libraries have had the license changed to Apache v2.0. That is a legitimate copyright infringement. It looks like an isolated case where someone copied the file to use for testing, but who knows why they changed the license. Someone in the android development team screwed up.

      See this groklaw comment for direct links to the files in the repositories.

    135. Re:Here we go again (SCO) by the+Haldanian · · Score: 5, Insightful

      Also after SCO - no lawfirm will be nearly as stupid as SCO's..

      You mean represent an insanely deluded client who throws all of their money away at them?
      The *lawfirms* would *fight* for that chance!

    136. Re:Here we go again (SCO) by Anonymous Coward · · Score: 0

      This is yet another example of those who know the least having the strongest opinions (mostly anti Oracle). In any case those of you who are foaming at the mouth should be aware that the only outcome of cases like this is money transfers between large corporations that can well afford them.

    137. Re:Here we go again (SCO) by HolyCrapSCOsux · · Score: 1

      Of course, the courts ARE a vast army of lawyers...

      Not that I'm cynical or anything...

      --
      0xB315AA8D852DCD3F3DCA578FD2E0BF88
    138. Re:Here we go again (SCO) by pavon · · Score: 1

      The android version of the file has had the license changed to Apache v2.0.

      I worded that poorly.

    139. Re:Here we go again (SCO) by Ornedan · · Score: 1

      There are no optimizations in any HLL that can't be done in C, provided you reimplement the HLL's runtime in C. The point being that you're not going to be able to apply runtime optimization techniques without a high level runtime. At which point the question is, do you really want to code $HLL in C or in $HLL?

    140. Re:Here we go again (SCO) by GooberToo · · Score: 0, Flamebait

      Java is almost always slower and typically by a wide margin. When its not slower its typically some obscure corner case which rarely affects runtime performance, or where the C code is lacking in optimization. If you have some Java code which runs 5x faster than C code, it screams the C code was complete crap and nowhere near optimal. Its kind of like bragging how much smarter you are than the retarded kid down the street.

    141. Re:Here we go again (SCO) by gangien · · Score: 1

      z/OS

      granted no Swing..

    142. Re:Here we go again (SCO) by koiransuklaa · · Score: 1

      It's highly unlikely that Google made this mistake; they were well aware of the legal ramifications. Google set out to do a clean room implementation of Java...

      Android was originally developed by Android Inc, not Google.

    143. Re:Here we go again (SCO) by para_droid · · Score: 1

      All right. I'll probably cheat and hit google before I'm done writing this.

                        Mac OS X

      Not any more it doesn't.

      SunOS

                        Solaris

      Two versions of the same OS

      Windows NT

                        Windows Vista

                        Windows NT

      Three versions of the same OS

      Android

      Dalvik is Java-like but it aint Java.

    144. Re:Here we go again (SCO) by butlerm · · Score: 4, Informative

      In Baystate v. Bentley Systems (1997), a district court held that technical interfaces including programmer APIs are not copyrightable under the scenes a faire and other copyright doctrines. If this logic is followed by the court in the Oracle case, Google will be held harmless from any claims of copyright infringement.

      This all despite the creativity that went into the API design in the first place. The practical benefit of not proscribing the copying of technical interfaces should be obvious. If such copying was proscribed, no one could make compatible software without permission of the original manufacturer anymore. File formats themselves might be protected to the degree that in the absence of any patent, it might be illegal to write code that reads and writes your own data.

    145. Re:Here we go again (SCO) by Anonymous Coward · · Score: 0

      "structure, organization, and content" seems pretty clear to me. If you've got all of those, you're not looking at a clean-room implementation.

      Sure, if "content" is a significant portion of the alleged infringement. But if they're talking about the fact that some five line functions that are supposed to do the same thing happen to look similar, I don't see it getting them very far. And that is really going to be the problem with this sort of code: The large majority of these functions in Java are going to be substantially identical to the equivalent functions in the libc or C++ STL implementations that predate it.

    146. Re:Here we go again (SCO) by binarylarry · · Score: 0

      I mean how about running your existing Java application to an iPhone or a Nintendo Wii.

      If it was written in C or C++ it would be a simple process.

      Java the platform is not nearly as portable as plain old C.

      --
      Mod me down, my New Earth Global Warmingist friends!
    147. Re:Here we go again (SCO) by jbengt · · Score: 1

      Copying is not necessarily infringement. The devil is in the details.

    148. Re:Here we go again (SCO) by icebraining · · Score: 1

      Except Dalvik isn't Java. If Google had actually used Java (OpenJDK) and shared their code as GPL, they wouldn't get sued for copyright infringement.

    149. Re:Here we go again (SCO) by binarylarry · · Score: 0

      I think you're out of your depth here.

      --
      Mod me down, my New Earth Global Warmingist friends!
    150. Re:Here we go again (SCO) by Nethemas+the+Great · · Score: 1

      PostgreSQL has earned a following over the years, but its usage in corporate back-ends is minimal. You'll find PostgreSQL primarily deployed in lightweight consumer facing web applications. This isn't Oracles primary DB market.

      While it might be technically true that Oracle now has a "full stack" it is also true that hardware and operating systems were the lead weights in Sun's portfolio. Linux largely made Solaris irrelevant, just as Dell has mightily eroded their servers. If Oracle is to keep these two, then there will need to be a significant investment made to make them competitive.

      --
      Two of my imaginary friends reproduced once ... with negative results.
    151. Re:Here we go again (SCO) by icebraining · · Score: 1

      Java was released as GPL, Android is under the Apache License. Taking GPL'ed code and relicensing it or derivatives as Apache is copyright infringement.

    152. Re:Here we go again (SCO) by Anonymous Coward · · Score: 0

      It's been mentioned that the default Kismet configuration records ALL unencrypted traffic. Anyone here would probably commit the same accident when using it for the first time.

      So yes, I think it's highly likely in fact. And you're probably an idiot if you think Google was the first or last to capture your data. At least in Google's case it's plausibly deniable.

    153. Re:Here we go again (SCO) by makomk · · Score: 2, Insightful

      C# has absolutely nothing windows oriented to it. It's a completely platform agnostic language.

      Yeah, so long as you exclude all the standard library functionality like access to files, networking, I/O in general, threading, etc, etc - basically everything you need in order to actually write useful applications in C#. If you want to actually use it for application development, though, it's very much Windows oriented.

    154. Re:Here we go again (SCO) by Blakey+Rat · · Score: 1

      This is one of the areas where I with the open source movement were more pro-active. Why isn't there already an open source Java/.net-alike?

      I mean, the closest that exists now is Mono, which I personally don't have a problem with, but enough open source developers do that it'll probably never catch-on.

    155. Re:Here we go again (SCO) by Anonymous Coward · · Score: 1, Interesting

      1995 called, it wants its java back. Also claiming that C coders are just shit doesn't really help the cause.

      One example is the benchmark of Jake2 (a clone of Quake 2 written in Java by translating the original GPL C code). The Java 5.0 version performs better in some hardware configurations than its C counterpart[37]...

      ... high performance computing applications written in Java have recently won benchmark competitions. In 2008 and 2009, Apache Hadoop, an open-source high performance computing project written in Java was able to sort a terabyte and petabyte of integers the fastest.[63][64][65][66]

      the rest is here, with citations

    156. Re:Here we go again (SCO) by Yvan256 · · Score: 1

      I don't know any OS that can run .swf files.

    157. Re:Here we go again (SCO) by makomk · · Score: 1

      Not only that, but some of the patents Oracle is using to sue Google almost certainly also apply to .Net implementations like Mono. So this lawsuit just means that anyone using Mono has to worry about hostile legal action from Microsoft and Oracle.

    158. Re:Here we go again (SCO) by Anonymous Coward · · Score: 0

      Oh crap, I writing complex C applications that run on Windows, Linux, Solaris, and various embedded systems, with not a single #ifdef needed.

    159. Re:Here we go again (SCO) by gilesjuk · · Score: 1

      What next?

      Oracle suing people for writing a JDBC driver? after all, they're creating code with identical method names to their own drivers.

      Since when have method names and packages been copyrightable?

    160. Re:Here we go again (SCO) by Anne+Thwacks · · Score: 1
      no one at Oracle has a clue what they are doing.

      Nothing new there, then.

      --
      Sent from my ASR33 using ASCII
    161. Re:Here we go again (SCO) by Anonymous Coward · · Score: 0

      But it won't have GUI. At best it will be just command line app. And even then the concepts of standard input/out etc are not universal.

      Or you have soo many #ifdefs that you may have well wrote the thing X times.

    162. Re:Here we go again (SCO) by aeoo · · Score: 1

      If what you're saying is true, that means many competent engineers will naturally arrive at the same design. So if that's even copyrightable, it shouldn't be. It's like trying to copyright a single, naturally arising solution to an integral that any competent mathematician will arrive it, and yes, it can be a hard integral to solve. It's hard precisely because there is only one solution and all competent people find the same solution.

    163. Re:Here we go again (SCO) by Vintermann · · Score: 1

      C# is too windows-oriented to really be useful, but maybe this will be a revival for Ada?

      Oooh, wouldn't that be fun! But no. What Java always had going for it was the virtual machine approach and the tightly enforced standards (until Android came along, that is... still, I don't think they did anything illegal). Ada has tightly enforced standards, but no virtual machine targets that I know of! Also, it's 10 to 20 years behind on standard library features for anything except embedded.

      --
      xkcd is not in the sudoers file. This incident will be reported.
    164. Re:Here we go again (SCO) by matfud · · Score: 1

      Get your code to work on a 4,8 or 16 bit proc with varying memory architectures. I'm stareing at a Tini board from Dallas Semi. Well Maxim now. It runs Java although only version 1

    165. Re:Here we go again (SCO) by julesh · · Score: 1

      Name a dozen platforms that runs Java.

      Without googling:

      Windows; MacOS (system 9); MacOSX; Linux on several different hardware platforms; BSD on several different hardware platforms; Solaris; Symbian; Blackberry; Windows CE/Windows Mobile; the system whose name I don't know but which runs most TV set-top boxes; Blu-Ray DVD players; JX.

      The obvious exclusion is Android, which doesn't actually run Java (but for which a Java-to-local-vm translator is available).

      Bonus question: Name a dozen platforms that runs Eclipse.

      I'm not sure there are a dozen platforms out there that are capable of running eclipse.

    166. Re:Here we go again (SCO) by AnRkey · · Score: 0

      I don't think it's that bad, but certainly ORACLE becomes a liability -- don't use anything they control.

      I completely agree. Anything that Oracle touches turns to shit these days. Oracle, you worry me and the rest of the world... YOU BUNCH OF CHOPS!!!

    167. Re:Here we go again (SCO) by Will.Woodhull · · Score: 1

      Oracle is picking legal fights with everyone around them. It reminds me of Lotus, and how that company went from dominant to dregs real quick when it decided its legal department was more important than the software development team.

      I am glad that LibreOffice has abandoned ship; Oracle is looking too much like the Titanic. I hope that MySQL comes through this okay-- what it does, it does quite well, and it would be a pain to have to replace it.

      --
      Will
    168. Re:Here we go again (SCO) by julesh · · Score: 1

      All right. I'll probably cheat and hit google before I'm done writing this.

                        Mac OS X

      Not any more it doesn't.

      http://support.apple.com/kb/dl972

      Seems to be available to me.

    169. Re:Here we go again (SCO) by matfud · · Score: 1

      Oh and C compilers are not all the same. Some of the ones for micro controlers are truely shocking. Mind you some of the ones for linux are not much better

    170. Re:Here we go again (SCO) by Anne+Thwacks · · Score: 1
      Maybe you can predict if said program will be running on a EBCDIC

      I doubt you could even test that... Are there any EBCDIC machines still running? Have you got an IBM model 026 card punch in your basement? Do you even know the punch code for curly braces?

      If you mean by storing binary in floats, storing bit patterns, then you are nuts. If you mean that binary representation of floats is not portable, then dont do it: send the numbers in printable representation, like sane people do. However, almost all modern hardware does IEEE floating point, and you should not buy hardware thar doesnt if you want meaningful answers to floating point calculations. Of you are reall desperate, I will let you use the software IEEE floating point libraries on your hardware.

      --
      Sent from my ASR33 using ASCII
    171. Re:Here we go again (SCO) by para_droid · · Score: 1

      It's currently available, but it's been depreciated so no sensible developer is going to use it for new projects:

      http://apple.slashdot.org/story/10/10/21/125222/Apple-Deprecates-Their-JVM

    172. Re:Here we go again (SCO) by forsey · · Score: 1

      I agree with all your points, but Java using an interpreter?

      Java has used JIT complication of a very long time now http://en.wikipedia.org/wiki/Just-in-time_compilation.

      In fact some JVMs can even recompile on the fly after it gathers runtime data for even better performance http://www.ibm.com/developerworks/library/j-jtp12214/.

    173. Re:Here we go again (SCO) by Anne+Thwacks · · Score: 1
      e, let's define a C virtual machine.

      No need: C was the assembler of the PDP11, so the PDP11 is the answer you are looking for!

      --
      Sent from my ASR33 using ASCII
    174. Re:Here we go again (SCO) by Haxamanish · · Score: 1

      Also, is oracle really trying to state that they have never heard of clean room design?

      When Oracle hired Informix people who had created the Informix online hot backup and shortly after that released hot backups for Oracle, they pleaded that the folks who came over from Informix did not work on that and that Oracle did a clean room design. They could perhaps claim that the _names_ of the Java API calls are the copyrighted material, but if that would stick, no compatibles APIs would be possible anymore at all.

    175. Re:Here we go again (SCO) by shutdown+-p+now · · Score: 1

      The issue here is not with the language. Oracle's patents don't have to do with Java the language, but rather with implementation techniques used in the JVM, which are, ostensibly, not Java-specific (i.e. if you were to make a high-performance VM for any language, you'd probably run afoul of them). I've also seen claims that Microsoft licensed those very same patents from Sun back in the day to be able to develop .NET.

    176. Re:Here we go again (SCO) by Anonymous Coward · · Score: 0

      Not only that, but some of the patents Oracle is using to sue Google almost certainly also apply to .Net implementations like Mono. So this lawsuit just means that anyone using Mono has to worry about hostile legal action from Microsoft and Oracle.

      Microsoft used to pay Sun for several Java patent licenses. I'm sure they're now paying Oracle. Hell, that might be what gave Oracle the idea: "why isn't everyone paying us for this shit?"

    177. Re:Here we go again (SCO) by caywen · · Score: 1

      no one in their right mind would bother using such a thing

      I guess these companies are out of their minds then: http://www.mono-project.com/Companies_Using_Mono

    178. Re:Here we go again (SCO) by shutdown+-p+now · · Score: 1

      I think GP's point is that, while C language is portable, C standard library is too primitive for many real-world complex cases. So you inevitably end up using platform-specific APIs to do what you need. Now you can write an abstraction layer, and there are quite a few out there already (like GLib & Gtk), but there is no single standard one, so when you have two bits of code, each of which uses a different layer, you'll have a hard time mixing them.

    179. Re:Here we go again (SCO) by Anonymous Coward · · Score: 0

      1995 called, it wants its java back.

      2010 called, it wants its reality back.

      Also claiming that C coders are just shit doesn't really help the cause.

      Agreed. As such, you should stop making such claims.

    180. Re:Here we go again (SCO) by rtechie · · Score: 1

      Mod the AC up.

      Oracle clearly wanted the vertical stack due to support problems with Oracle on Linux. Remember "Oracle Linux"? Having a OS and application framework (Java) built for Oracle DB gives them a huge advantage. Imagine if they tie changes to J2EE to Oracle DB implementations (they own the 2 open source competitors), this will completely lock out competitors like DB2. This is already largely true. AIX+DB2, Windows+MSSQL, and Solaris+Oracle are the 2 big platforms.

    181. Re:Here we go again (SCO) by amorsen · · Score: 1

      With Java you're tied to a particular JVM, unless you go out of your way to make your code portable. With C you're tied to a particular machine model and operating system unless you go out of your way to make your code portable. The former is slightly better than the other, unless you're on an architecture/OS not supported by the particular JVM required by the application. In that case you need to run the JVM in an emulator, which really really sucks.

      Even OpenJDK and Oracle Java are nowhere near compatible, despite the fact that they're pretty much the same code.

      --
      Finally! A year of moderation! Ready for 2019?
    182. Re:Here we go again (SCO) by Anonymous Coward · · Score: 0

      Speaking as someone who spent a good part of the day cringing and suffering when forced to deal with the Java API, I think the point stands.

    183. Re:Here we go again (SCO) by shutdown+-p+now · · Score: 1

      Be a good programmer and don't make naive assumptions about types.

      The good question is, what is actually "naive". Most C programmers these days wouldn't expect long to be 32-bit, but how many realize that a perfectly valid C implementation can have a 32-bit char (all other integral types are also 32-bit there, i.e. sizeof(short)==sizeof(int)==sizeof(long)==1)?.

    184. Re:Here we go again (SCO) by Anonymous Coward · · Score: 0

      I agree. Who wants to use Java if they have to deal with Oracle or the fallout from this type of craziness. I've already junked Java and moved on (to Python, as it worked for me).

    185. Re:Here we go again (SCO) by Anonymous Coward · · Score: 0

      I'd love to hear the budget estimates for my current Spring/JEE project to be done in C, or even in standard C++.

      To be fair, I could actually see a WFF solution in .NET being workable. But that's the .NET world's way of solving the same kinds of problems that are addressed by the Java-centric frameworks.

      I could also see a Rails or Django solution but this approach does tend to run into some issues when it comes to a really large project scope (think "manufacturing ERP for a large aerospace and defense company" to understand what I mean by "scope").

      I like C, a whole lot. But I wouldn't want to do business software in it, because I'd like to actually have some free time in my life. There are applications I would do in C (system software, certainly) and in C++ (I'm a KDE/QT enthusiast and I love it). But there are jobs where Java is nearly alone in terms of serious choices.

    186. Re:Here we go again (SCO) by amorsen · · Score: 1

      It's unfair that you count Windows 3 times, and the whole point of the Oracle lawsuit is that Android doesn't run standard Java. Besides, does Java really exist for SunOS 4.x? Irix is dead, and you can't get a recent Java for it. So you're at 7, really.

      --
      Finally! A year of moderation! Ready for 2019?
    187. Re:Here we go again (SCO) by shutdown+-p+now · · Score: 1

      C# specification is effectively derived from new Microsoft releases - that's no secret.

      But who cares? There's nothing stopping you from taking the spec as it stands, and developing it in your own (potentially incompatible) direction from there. It still beats developing a Java replacement language completely from scratch. Especially since having an existing implementation is a proof of soundness of the spec (something that was sorely missing for e.g. HTML4).

    188. Re:Here we go again (SCO) by meloneg · · Score: 1

      Doh! One of those was supposed to be 7.

    189. Re:Here we go again (SCO) by t2t10 · · Score: 1

      Good API design is hard.

      Yeah, and if you want to see how hard it is, just look at how awful the Java APIs are despite all the money Sun invested in it.

    190. Re:Here we go again (SCO) by shutdown+-p+now · · Score: 1

      This is one of the areas where I with the open source movement were more pro-active. Why isn't there already an open source Java/.net-alike?

      There are plenty. E.g. all those Smalltalk implementations. The problem is that they never get popular.

      That said, Vala is quite interesting, and seems to be getting popular lately. It's not a VM-based language - rather it compiles to C - but it does have automatic memory management (reference counting, handled behind the scenes by the compiler) and is memory-safe to the same extent as C# (most constructs are safe, those which are unsafe are deliberately distinct). And, in general, it borrows a lot from C# syntax-wise.

      The nice part about it is that it uses GLib object model, so it can readily use any existing C library written against that, and any Vala library is immediately usable from C.

    191. Re:Here we go again (SCO) by Anonymous Coward · · Score: 0

      >Are there any EBCDIC machines still running?

      You'd be surprised how much banking and finance software still has EBCDIC requirements and how much goes on in 3270 emulation.
        IBM mainframes not only support it today, but it's the default character encoding on mainframe peripherals.

    192. Re:Here we go again (SCO) by meloneg · · Score: 1

      Actually, somebody (go google it, I'm lazy) has a mechanism to run JAD/JAR games on android.

      Despite the level of ugly in it, J2ME has done a heck of a job achieving "Write Once, Run Anywhere" with cellphone games. Still too painful to actually use for me. Played with it a couple times. It hurt. And, I've been doing professional Java for about 10 years.

      But, that reminds me. I can add Symbian, SonyEricson phones and a few others to the list up there. Oh, and .Net/CLI is really a platform in its own right. Java will run on it too.

    193. Re:Here we go again (SCO) by shutdown+-p+now · · Score: 1

      If you already have code in C or C++, you really can't go wrong with Qt. It's more portable than Java in practice (compiles on more platforms), is just as easy to work with, has excellent performance, and great development tools on any platform (Qt Creator).

    194. Re:Here we go again (SCO) by Anonymous Coward · · Score: 0

      Name a dozen platforms that runs Java.

      Windows, OS X, Linux, FreeBSD, NetBSD, Solaris, AIX, HP-UX, Symbian, DoJa, Blackberry OS, and, amusingly, SCO OpenServer.

      What's my prize?

    195. Re:Here we go again (SCO) by freeshoes · · Score: 1

      Yeah who cares if the video is stuttering, as long as we (might) be able to run the media player on every system that has a JVM. John: "Hey this JMediaPlayer keeps stuttering" Joe: "Yeah but you can run it on you washing machine, maybe"

    196. Re:Here we go again (SCO) by GooberToo · · Score: 1

      The other Anonymous is absolutely correct. Get a grip. The continuous stream of completely bogus performance claims coming from the Java camp only serves to completely undermine Java.

      Also claiming that C coders are just shit doesn't really help the cause.

      I never made such a claim. You're trolling.

      .. high performance computing applications written in Java have recently won benchmark competitions. In 2008 and 2009, Apache Hadoop, an open-source high performance computing project written in Java was able to sort a terabyte and petabyte of integers the fastest.

      To wit:

      I'll be that this is an I/O bound benchmark - by design. The hdfs (hadoops distributed filesystem) is an abstraction layered atop native (OS-embedded) filesystems. These native filesystems are implemented as optimized, native code. These native filesystems are always (originally) written/tuned in native C (and optimized by C compilers).

      There may be significant performance overhead/latencies in the TCP/IP stack (processing) too. TCP/IP drivers are implemented as optimized, native code (even if off-loaded to a fancy TCP/IP Off-load engine - TOE). All of this is originally written/tuned in C as well.

      In addition, Hadoop's designers choose to employ native compression libraries - for 'performance reasons' (and due to non-availability of Java alternatives). See http://hadoop.apache.org/core/docs/current/native_libraries.html

      So yes, this bencmark manages to use a dollup of Java code to spread the heck out of some relatively simple 'record-sort' benchmark logic. A lot of the run-time observed is system time - not user time. The JVM hardly matters. In this benchmark, it just runs a dollup of logic that spreads around the sort work - to lots of commodity class servers (running Linux). On each server, that logic drives lots of native/C code - in parallel. By ganging thousands of such servers (versus mere hundreds of such servers in the previous record-setting attempt), this new bechmark effort manages to set a world speed record. Sure. So what?

      This same result could have been achieved with Python ... or Perl ... or Ruby ... or whatever. This is really just a demonstratation the power of distributed, parallel 'sorting' - irrespective of the implementation languages involved. It is hard to imagine that the modicum of top-level logic is anywhere close to being the rate limiting step. Therefore, this benchmark says little about the performance of Java - or any other scripting language that might have been employed to this same end.

      This isn't about Java (performance). This is about the performance advantages of the distributed, map-reduce algorithm. It hardly matters whether this distributed, map-reduced sorting benchmark was implemented in JAVA, C/C++, Python, VB, Ruby, Perl or whatever! Lets not miss the whole point.

      Cheers, Steffen.

      So basically this has nothing to do with Java. The fact it was written in Java is barely worth mentioning. What was novel was the implementation, which could have been in any number of languages and in fact, the language choice would likely have zero or very, very little impact on the over all benchmark.

      And that's the trouble with everyone constantly pushing Java is uber fast. Pragmatically its not. Period. It is, however, faster than many language alternatives. It can, however, come occasionally come close to C and/or C++ in some obscure corner cases. But without a doubt, if you have some Java code which runs 5x than C code, the C code is absolute crap and the differences likely stem more from implementation details or improper benchmarking.

      Just because Java is not as fast as C/C++ does not mean its useless. If that were true, languages such as Lua, Python, Perl, Ruby, so on and so on, would simply not exist. For a large number of use cases, fast enough is certainly fast enough. Just the same, constantly making completely bogus claims about Java's pragmatic performance only serves to derail the language as a whole.

    197. Re:Here we go again (SCO) by mattsucks · · Score: 1

      C# is too windows-oriented to really be useful, but maybe this will be a revival for Ada?

      Having used Ada for years, starting in the 80s, let me say....

      oh God please no :-(

    198. Re:Here we go again (SCO) by Anonymous Coward · · Score: 0

      At which point the question is, do you really want to code $HLL in C or in $HLL?

      I was merely pointing out the logic flaw; $language cannot be "faster" than C if its runtime is implemented in C. We both know that HLLs are typically written in C because it's a small, well defined and portable language that both solves the bootstrap problem and provides the low level access required to do runtime optimization ;)

    199. Re:Here we go again (SCO) by TheNarrator · · Score: 1

      They could always move to The Go Programming Language. It's Google's homegrown attempt to get something in between Python and C++. It's got a lot of neat concepts in it and could eventually be a real competitor to JAVA IMHO. The standard libraries still need a lot of work, but in a few years, especially if Oracle screws up Java, it could enter the mainstream.

    200. Re:Here we go again (SCO) by euroq · · Score: 1

      No offence to you, sir or madam, but your statement is an expression of your inexperience, not the technical merits of Java.

      --
      Just because the U.S. is a republic does not mean it is not a democracy. Democracy/republic are not mutually exclusive.
    201. Re:Here we go again (SCO) by Anonymous Coward · · Score: 0

      Yeah C# is more portable alright, until you try to access a file or something crazy like that and have to deal with the different path separators, case insensitivity of NTFS via Win32 API, and drive letters instead of a root path '/'. But that would be a pretty advanced program, no? ;)

    202. Re:Here we go again (SCO) by fishbowl · · Score: 1

      >Somehow, and I'll let the Java folks give their idea about why, *every* *single* program I've ever seen that was written in Java manages to suck

      Do you think JBoss sucks?

      What do you think about Jira, or SugarCRM?

      --
      -fb Everything not expressly forbidden is now mandatory.
    203. Re:Here we go again (SCO) by Haeleth · · Score: 5, Insightful

      C# has absolutely nothing windows oriented to it. It's a completely platform agnostic language.

      Don't be disingenuous. You know as well as I do that when anyone other than Miguel de Icaza says "C#" they are talking about .NET running on Microsoft Windows, and that is never going to change.

      Even if we suppose, for the sake of argument, that Mono is an excellent platform for Linux-native development, it is still ridiculous to suggest that it might replace Java. Where is Java used? In big enterprises. Do you really think that a company that is afraid to use Java for fear of Oracle is going to be happy using a third-party implementation of a Microsoft technology?! They would be crazy to do so. Anyone who is still running Java on Windows, and has no interest whatsoever in retaining cross-platform compatibility, might consider switching to .NET at this point. Indeed it would probably make good business sense for them to do so. But C# is not a serious option for any enterprise scenario that involves non-Microsoft platforms.

    204. Re:Here we go again (SCO) by Kaz+Kylheku · · Score: 2, Informative

      C is must more portable than Java. If I write something in Java, it will work on exactly one platform: the Java platform. The C will actually work on hundreds of platforms. If I want. Or just one, if I want.

      In C, you're programming any machine, using a portable syntax. You can write C code that doesn't require any library or operating system at all, just some way to to be loaded and invoked.

      You can write C code that efficiently uses the native types of the machine, more or less. If the machine has 36 bit integers, you can use all 36 bits (while still remaining portable to where there are only 32 bits).

      C can be made ROM-able.

      Let's see, random project out of the air. Could, say, Etherboot be easily redeveloped in Java? Sure, if your system boot firmware can cough up a Java environment.

    205. Re:Here we go again (SCO) by t2t10 · · Score: 1

      Most programmers don't seem to know anything about patents or copyrights, so Sun could bamboozle them.

      What has happened was one of two predictable outcomes: either Sun got bought by IBM or Google and was forced to open up, or Sun got bought by Microsoft, Oracle, or another evil company and used for evil purposes.

      It is ironic that .NET is more open, but that's competition for you: since Sun was so proprietary, Microsoft needed to open up their alternative to get some traction.

    206. Re:Here we go again (SCO) by codepunk · · Score: 2, Insightful

      Well let me just copy the code of sharp develop over to a linux box and compile with mono, should work right out of the box then correct? Oh I guess not.

      --


      Got Code?
    207. Re:Here we go again (SCO) by StripedCow · · Score: 1

      But... GUIs are a lot like APIs, and /they/ are allowed to be copyrighted. (Not that I find that reasonable).

      --
      If Pandora's box is destined to be opened, *I* want to be the one to open it.
    208. Re:Here we go again (SCO) by DrgnDancer · · Score: 1

      It was a turn of phrase. I understand that Moore's Law is a continuous progression in theory, but in practice it results in released processors that progress incrementally. The processor I buy today doesn't have .021% more transistors than the processor I bought last week. Intel releases a processor than has incrementally more transistors than the last one. Could you be any more friggen literal minded?

      --
      I don't need a million points of light, just two points of multi-mode fiber and a 10 Gig-E router.
    209. Re:Here we go again (SCO) by Kaz+Kylheku · · Score: 1

      C is portable, a given piece of C code is not necessarily. I guarantee that if I write a program of any complexity in C on Windows, and don't make specific efforts, that program will not compile on Linux or MacOS.

      But chances are you could not write that program in Java. Why is it nonportable? It's integrating into Windows in a way that your Java isn't.

      The "specific effort" I have to make is the extra choice you have to make about how to develop, because you have the freedom to.

      I might choose to make the program such that it will work on Linux and MacOS too. Doing that might not necessarily make the program harder to develop, but easier (since I will likely leverage some cross-platform tools and libraries, which will have nicer API's for some things than bare Win32).

      Exactly, and that will also be the case if this C program is a Java system, being developed to run Java code.
      important. For those things, people will keep using compiled languages and dealing with the headaches of porting. For everything else, Java is fine, and a huge cost saver in a lot of cases.

      Java is not a compiled language? Do you actually know anything about Java, or just the front cover of some Java-promoting brochure?

    210. Re:Here we go again (SCO) by codepunk · · Score: 1

      I call BS post the code, a jvm is always going to be slower. Then to claim 5x faster is nothing but laughable.

      --


      Got Code?
    211. Re:Here we go again (SCO) by MichaelSmith · · Score: 1

      a revival for Ada?

      Thats hilarious.

    212. Re:Here we go again (SCO) by leenks · · Score: 1

      I'll bite - which bits?

    213. Re:Here we go again (SCO) by Blakey+Rat · · Score: 1

      What about the library size and GUI tools? I see those as crucial.

      But it sounds really promising, from what you're describing. I'll have to play with it.

    214. Re:Here we go again (SCO) by Anonymous Coward · · Score: 0

      You really have NO idea if this is true or not.

    215. Re:Here we go again (SCO) by Raenex · · Score: 1

      it might be illegal to write code that reads and writes your own data.

      Hello FAT32 and associated patents.

    216. Re:Here we go again (SCO) by man_of_mr_e · · Score: 1

      Yeah, just like copying the code for any C or C++ application will automatically work on any other platoform.

      If I need to explain this to you, then you really don't have a point.

    217. Re:Here we go again (SCO) by exomondo · · Score: 1

      Uh, this lawsuit is exactly like SCO/IBM

      No it isn't, that case was over who owned the copyrights, that isn't being disputed in this case. This is over whether those copyrights have been infringed.

    218. Re:Here we go again (SCO) by shutdown+-p+now · · Score: 1

      It uses Glib & Gtk as the core library, with some extensions of its own. Not sure about the size, but it's probably not much relevant because pretty much any Linux distro would have it out of the box.

      For IDE, they have a MonoDevelop plugin, though I haven't actually tried that.

    219. Re:Here we go again (SCO) by InfiniteWisdom · · Score: 2, Informative

      Dalvik was not part of the original android project. Google went ahead and built a clean room implementation after talks with Sun over Java licensing broke down. Dalvik was certainly programmed in house by Google.

    220. Re:Here we go again (SCO) by InfiniteWisdom · · Score: 1

      This lawsuit itself may be like The SCO/IBM lawsuit, the difference is unlike SCO which basically shut everything else down to go all in on their lawsuit, and they were dealing with a company hundreds of times their size, Oracle had $25 billion in revenue last year, and are very much the same league as Google. This fight will not lead to either company being bankrupted or really even move the needle very much regardless of the outcome.

    221. Re:Here we go again (SCO) by suutar · · Score: 1

      depends how they're defining content. Source? Bytecode? Functions named a, b, and c? Any of these could be an answer to "what's in this library?" The first being identical obviously means non-clean; the second very likely does, but the third, not so much.

    222. Re:Here we go again (SCO) by man_of_mr_e · · Score: 1

      Neither question have anything to do with the claim that C# is too windows centric.

      Your questions also reveal a lack of undestanding of the difference betweeen a language and a framework library. C#, the language, does not rely on anything microsoft, other than the specification.

      Also, since C# is an ISO standard, any lawsuit would be.. problematic to say the least.

    223. Re:Here we go again (SCO) by TapeCutter · · Score: 1

      "With Java you're tied to a particular JVM, unless you go out of your way to make your code portable. With C you're tied to a particular machine model and operating system unless you go out of your way to make your code portable."

      Pity I spent my mod points, that's it in a nutshell.

      --
      And did you exchange a walk on part in the war for a lead role in a cage? - Pink Floyd.
    224. Re:Here we go again (SCO) by man_of_mr_e · · Score: 1

      Mono perhaps, but Microsoft already has licenses with Oracle, so Microsoft implementations are covered.

      All open source software has to fear patents from anywhere, not just Microsoft or Oracle.

    225. Re:Here we go again (SCO) by man_of_mr_e · · Score: 1

      C# has no standard library functions. C# is a language, not a library.

      The CLI (which C# typically uses) also doesn't have any windows specific things, and does File and threading just fine on multiple platforms.

    226. Re:Here we go again (SCO) by Hucko · · Score: 1

      (Lisp().)

      --
      Semi-automatic amateur armchair Australian philosopher; conjecture ready at any moment...
    227. Re:Here we go again (SCO) by man_of_mr_e · · Score: 1

      Ahh.. I see.. so when people say C#, they don't mean C#... they mean whatever you think makes a good argument.

      That's like saying that whenever someone says "Linux" they mean all unix-like operating systems, such as FreeBSD or Minix.

    228. Re:Here we go again (SCO) by PCM2 · · Score: 1

      Errr... Windows NT, Windows Vista, and Windows NT are kinda all the same thing and Android isn't really a Java platform (you have to compile Java binaries into a different format before they will execute on Dalvik).

      You could, however, have mentioned IBM z/OS and AS/400, and a number of smartphone platforms support Java ME or a superset thereof.

      --
      Breakfast served all day!
    229. Re:Here we go again (SCO) by TapeCutter · · Score: 1

      "C isn't portable."

      Sure it is, just use C to write a C compiler for the new machine/OS. Try doing that with Java and you will find you need something like C to write a new JVM.

      --
      And did you exchange a walk on part in the war for a lead role in a cage? - Pink Floyd.
    230. Re:Here we go again (SCO) by PCM2 · · Score: 1

      You'll find PostgreSQL primarily deployed in lightweight consumer facing web applications. This isn't Oracles primary DB market.

      I think this is the point the GP was trying to make about MySQL, which is even less well-positioned to compete with Oracle for its primary market.

      --
      Breakfast served all day!
    231. Re:Here we go again (SCO) by tsm_sf · · Score: 1

      We might agree that a GUI would fall under copyright law. What, in your mind, is the difference between an API and a GUI?

      (Internet disclaimer: I'm not being sarcastic or snide.)

      --
      Literalism isn't a form of humor, it's you being irritating.
    232. Re:Here we go again (SCO) by GooberToo · · Score: 1

      Class troll moderation. I guess some Java idiot hates it when reality conflicts with this distortion bubble and was afraid others might learn the truth. The sad fact is, most everyone already knowns and understands the exact facts offered in my previous post - save only those idiots who believe as the original anonymous pro-java poster does.

      As a side note, I use Java extensively. Its not like I live in a walled castle. I know what I'm talking about.

      Little scared children and their Java delusions...and their troll moderators...

    233. Re:Here we go again (SCO) by HGG · · Score: 1

      What I find ironic is that everyone was worried about Microsoft suing open source implementors of .NET, and claiming that Java should be used instead. ... Oops.

      Not everyone. Some of us have distrusted Java since its unveiling. It was and is a proprietary lockin mechanism that (by design) does not play well with others. Further, Sun has had off/on love for OSS. When Sun was hurting, it was "Hey, everyone should do OSS in Java". When Sun was flush, it was "Tough nuggies. We own the licenses and you OSS wimps will never get the libraries or the test suite." IBM caught on and helped make Java a pure single-vendor-at-a-time play. I'm not saying Sun and IBM were worse than Microsoft, but I am saying they were playing the same game.

      In a corporate context I failed to stem the Java tide, but we have at least established enclaves of Pythonistas. Kind of like those rat-like mammals hiding underground waiting for dinosaurs to die off.

    234. Re:Here we go again (SCO) by sg_oneill · · Score: 1

      Yep. The whole SCO vs Linux thing revolved around the fact that linux had some header files that implemented standard Unix function + structure definitions. Well mostly standard, Linus had goofed a few.

      Needless to say, the courts wouldn't have a frigging bar of it.

      I doubt Oracle will go the way of SCO. Unlike SCO, Oracle are huge, but I dont fancy their chances in this either.

      --
      Excuse the Unicode crap in my posts. That's an apostrophe, and slashdot is busted.
    235. Re:Here we go again (SCO) by worx101 · · Score: 1

      Exactly, Microsoft did something similar with its OS right? I am sure we all remember. Once there is the lock-in, its over. People will just end up paying Oracle.

    236. Re:Here we go again (SCO) by butlerm · · Score: 1

      Hello FAT32 and associated patents.

      Yes, that is a separate problem, with patents rather than copyright. We would all be better off if all patents except perhaps pharmaceutical patents were eliminated. Most of them are the worst kind of joke.

    237. Re:Here we go again (SCO) by butlerm · · Score: 1

      2. The fools who trust in their own optimization skills

      You must be a Java programmer. If the Linux kernel developers adopted that attitude, Linux systems would run ten to hundreds of times slower on certain workloads.

    238. Re:Here we go again (SCO) by knorthern+knight · · Score: 1

      > If I write something in Java it will probably (for a very high
      > value of "probably" too) work on any of a dozen platforms.

      Write once for Java 1.2.3.4.5 and run anywhere... that Java 1.2.3.4.5 is installed. Not Java 1.2.3.4.4 or Java 1.2.3.4.6, but only Java 1.2.3.4.5. Unlike any decent C/Fortran/whatever program that will run on Windows through umpteen service packs or on linux through umpteen different kernels. Sure you can re-compile it for a different Java runtime, but then you can re-compile Firefox for Linux/Windows/etc. So what's the point?

      And while we're at it, write a program for DOS and use Dosbox on a dozen platforms or write a program for linux, and use QEMU-KVM or VMWare on a dozen platforms.

      --

      I'm not repeating myself
      I'm an X window user; I'm an ex-Windows user
    239. Re:Here we go again (SCO) by kaffiene · · Score: 1

      You are completely nuts if you think people are just going to drop Java because of this. There's way too much invested in Java for that to happen. This might affect people in FOSS world but it'll make SFA difference elsewhere.

      I develop with Java commercially, I think Oracle are utter douchebags (especially Ellison, what a fuckwit) but that doesn't change Java's task suitability. You have to be pretty infantile to select your tools on that basis.

    240. Re:Here we go again (SCO) by kaffiene · · Score: 1

      Uhhh.... The OpenJDK is GPL'd and patent protected.

    241. Re:Here we go again (SCO) by Anonymous Coward · · Score: 0

      Yes, I am! Are you delete?

      -1 silly

    242. Re:Here we go again (SCO) by Anonymous Coward · · Score: 0

      The Java Runtime Environment binaries for Windows were compiled with Microsoft Visual C++.

      C is a portable language. It's a small language for a reason. The fact that a library isn't portable doesn't mean the language is. The Standard C Library is cross platform. It just has to be implemented on those platforms - the same way a Java Virtual Machine has to be implemented on another platform.

      You can write non-portable Libraries in Java. Some of you people are actiing like THAT is impossible, when nothing could be further from the truth.

    243. Re:Here we go again (SCO) by dave87656 · · Score: 1

      Java has now become a liability, so now people won't want to use it. Simple.

      We are heavily invested in java with 1.5 million lines of code and I have to agree with you that oracle is making me very nervous about java. I'm personally looking into alternatives for future development.

    244. Re:Here we go again (SCO) by hardeep1singh · · Score: 1

      And then the question is - move to WHAT?

      Qt

    245. Re:Here we go again (SCO) by Billly+Gates · · Score: 2, Insightful

      Go to any bookstore and pick up a c# book?

      Now open it and find any without screenshots of Visual Studio or using Windows.x in the examples? I mean any at this point. .NET, VS, and C# are one. When someone tells me there are a c# user I envision them a Windows programmer by default. It is like saying using Word does not make you a Windows or MacOSX user. I have to ask what does that make you? Ok you got Word 95 to run on crossover once ...

      I might as well be a c user who just writes assemblies because there is no where that says I must use an api instead.

    246. Re:Here we go again (SCO) by Billly+Gates · · Score: 1

      Go to any bookstore and pick a random c# book?

      Now tell me how many do not have screenshots of Visual Studio and things like using Windows.forms.x or Windows.x? ... that is what I thought.

      They are taught as one. Visual Studio and C# is .NET. Just different aspects and tools of the ecosystem.

    247. Re:Here we go again (SCO) by freeshoes · · Score: 1

      Why would you want to rewrite that pile of crap. Java is all about bloat, and generic frameworks that can be used to do anything, but usually fail for your particular requirements. Anything you can write in Java you can write in C, with only a little over head.

    248. Re:Here we go again (SCO) by cyclomedia · · Score: 1

      I may be wrong on this but I think Google's implimentation is a derviative of Harmony, which itself is an Apache licenced clean room implimentation of the Java spec, not on the original Java code. But even so, if all Google have to do to settle is relicense it to GPL it's hardly a big deal.

      --
      If you don't risk failure you don't risk success.
    249. Re:Here we go again (SCO) by ais523 · · Score: 1

      It wouldn't really make much sense for Microsoft to sue .NET implementors until after the implementors had no viable alternative languages left. Embrace/Extend/Extinguish (or in this case, Embrace/Sue/Extinguish) doesn't really work until you get the "Embrace" step to happen first.

      --
      (1)DOCOMEFROM!2~.2'~#1WHILE:1<-"'?.1$.2'~'"':1/.1$.2'~#0"$#65535'"$"'"'&.1$.2'~'#0$#65535'"$#0'~#32767$#1"
    250. Re:Here we go again (SCO) by Anonymous Coward · · Score: 0

      Java - Write Once, Debug Everywhere.

    251. Re:Here we go again (SCO) by icebraining · · Score: 1

      The Oracle claim is that the Android code isn't all from a clean room implementation, and that it includes code from the original JDK.

      And Google can't relicense its code as GPL, because then they'd be breaking Harmony's license (you can't relicense Apache 2.0 as GPL, it's incompatible).

    252. Re:Here we go again (SCO) by Kjella · · Score: 1

      At least in theory you could have a java interpreter written in C, which would then run on every system C runs. The whole point of Java is that you write for a virtual machine specification that will be the same where ever it runs. You can only make C work "on hundreds of platforms" by writing hundreds of code paths. If java had a 36 bit integer, then every other java VM would have to emulate one.

      --
      Live today, because you never know what tomorrow brings
    253. Re:Here we go again (SCO) by Z00L00K · · Score: 1

      Qt isn't a programming language by itself, you will need a language to actually use it.

      --
      If builders built buildings the way programmers wrote programs, then the first woodpecker would destroy civilization.
    254. Re:Here we go again (SCO) by greap · · Score: 1
    255. Re:Here we go again (SCO) by yeshuawatso · · Score: 1

      Nope. Android doesn't run a VM nor can you take Java code and run it natively on Android without recompilation.

    256. Re:Here we go again (SCO) by drewhk · · Score: 1

      I'm not saying that everyone in the optimization business is a fool! I do not even know, where did you get this idea that I think Linux kernel developers are Type 2 fools.

      My observation basically is that there are just too many programmers who _think_ they are good at optimizing, but in the end they just mess up everything.

      And yes, I am a Java programmer _and_ a C programmer. In fact I am working now on a real-time project and correcting the several mistakes the devs made thinking it improves the speed.

      Speed is not about less assembly instructions. And I am quite sure that the Linux kernel devs know this.

    257. Re:Here we go again (SCO) by man_of_mr_e · · Score: 1

      Oracle doesn't seem to have received that message.

      Even if it turns out that Oracle's case is lost, OpenJDK isn't patent protected, it's only protected against the old Sun patents. It could still violate someone elses patent that Sun doesn't own.

    258. Re:Here we go again (SCO) by man_of_mr_e · · Score: 1

      You will not find any Visual Studio screenshots in this book.

      Nor will you find any in this book either.

      C# is a *language*, not a platform.. yes, the most common platform is a windows platform, but there are projects that, for example, will compile C# to native code that runs on Linux.

      Now, granted, most of those projects are experimental, but look at dotgnu (an official FSF project) or LLVM#

    259. Re:Here we go again (SCO) by Beacon11 · · Score: 1

      You count Windows NT as two platforms? I really didn't think it was that great.

    260. Re:Here we go again (SCO) by metamatic · · Score: 1

      Good API design is hard.

      Yeah, but we're talking about Java.

      e.g. look at the date and time classes...

      --
      GCHQ Quantum Insert installed. If only our tongues were made of glass, how much more careful we would be when we speak
    261. Re:Here we go again (SCO) by SETIGuy · · Score: 1

      APIs aren't copywritable, but implementations of an API are. The HashMap API is an API, the Oracle implementation of HashMap is an implementation. An Android implementation of HashMap is an implementation. As long as there's no code copying, there's no infringement. If a user compiles the Oracle implementation to work under Android, then the user may have violated the Oracle license if that is prohibited. But that's not Google's problem.

    262. Re:Here we go again (SCO) by ThePhilips · · Score: 1

      Your list is wrong.

      Android doesn't run Java. (See the RTFA, rest of the discussions)

      Apple just recently announced that they from Java from Mac OS X. Oracle hasn't yet announced their own Java version for Macs.

      FreeBSD does not have native port of Java (for Sun refused to allow it). Via hacks they use Linux version.

      Irix isn't supported/sold anymore.

      Likewise, SunOS as a standalone OS doesn't exist anymore: it became the BSD subsystem of the Solaris.

      And why you have the WinNT twice on the list? Or you meant the W7? That's plain cheating to include Windows multiple times: version of the Java is the same since the used Win32 subsystem is the same. It's the same as including all and every Linux kernel version on the list.

      --
      All hope abandon ye who enter here.
    263. Re:Here we go again (SCO) by cheesybagel · · Score: 1

      The Go programming language. I guess this is one reason why Google is bothering with developing these kinds of programming languages. Then there is the other tidbit. Guido van Rossum (creator of Python) works at Google.

    264. Re:Here we go again (SCO) by cheesybagel · · Score: 1

      Java was GPLed by Sun. All that Google needs to do to stop infringing is to migrate to something based on OpenJDK.

    265. Re:Here we go again (SCO) by Anonymous Coward · · Score: 0

      The point is that it costs extra money to port it, when you could just write it in Java and have it work on all those platforms. This is a significant cost savings for multi-platform apps.

      Since I became a Java dev, I've been basically shocked by how non-platform-indepenent most java code is. Where I work now, every app is tied to a specific (5+ year old) version of weblogic. From what I've heard it also won't run on other operating systems weblogic runs on.

      It's like C# except even less standard. Everyone uses a different combination of "rare" frameworks that 10% or fewer of java devs have any experience with.

      I was all psyched to use a "real" language at this job, but now I'm back to thinking that, at least for web programming, PHP is one of the best languages out there. That's as long as you have sane internal standards and code architecture, but that's true with any language.

    266. Re:Here we go again (SCO) by bar-agent · · Score: 1

      with not a single #ifdef needed. ... because all your #ifdefs are outsourced to other libraries that you have standardized upon. You've still got them, you just don't know it. Not that there's anything wrong with that.

      --
      i'd hit it so hard, if you pulled me out you'd be the king of britain [bash.org]
    267. Re:Here we go again (SCO) by Nyder · · Score: 1

      C isn't portable. If I write something in Java it will probably (for a very high value of "probably" too) work on any of a dozen platforms. If I write something in C I have to port it. Porting it costs programmer time and we've already established that programmer time is more costly than machine time. In theory C could be made to be somewhat portable (It would still have to be compiled on every platform and the binaries distributed separately), but in practice this would require a lot of OS vendors that hate each other to standardize a lot of APIs. It's probably not going to happen.

      How did this get +5 insightful? C was the first portable language.

      --
      Be seeing you...
    268. Re:Here we go again (SCO) by other-different-nick · · Score: 1

      Good API design is hard.

      Absolutely.

      Saying that it's just API design and not artistic is severely disingenuous to engineers who are actually good at it (and engineers who cringe and suffer when forced to deal with bad API designs.)

      No really good API was the result of a single insight. Good APIs have to accrete over decades. Consider how long it took to get from early Lisp's mapcar to Haskel's foldl, foldr, and list comprehensions. The Java API is pretty good, but mostly because it is unoriginal.

    269. Re:Here we go again (SCO) by PastaLover · · Score: 1

      I can't provide a citation but I know at least one person that writes software to efficiently generate large graphs (the mathematical structure) with certain properties in C. Doing the same in java did result in an implementation that was an order of magnitude slower (I think after some work they got it down to two times as slow in the end).

      For certain types of number crunching applications C or C++ is still a very good choice. Game engines are another example that come to mind, though there are a few examples cropping up where even there it doesn't really matter anymore, e.g. minecraft. Carmack is writing a game engine for iPhones (the mobile Rage engine, IIRC) that needs to be written mostly in C for obvious reasons (he recently tweeted even using ObjC's number formatter is a bad idea here).

      I wouldn't call these extreme cases, but it's true that most of us aren't twiddling bits in code anymore. I do a lot of web app development and 95% of the time everything is I/O-bound. In the rare cases where it's not, we're gonna have to do precomputing and caching anyway to make it work/scale. Using C would be a humongous pain and it would buy me nearly nothing. People have been writing payroll apps in COBOL and not C for exactly the same reason for decades.

      Just to provide some background anyway.

    270. Re:Here we go again (SCO) by Anonymous Coward · · Score: 0

      Move to C++. You can use as many third party libraries (e.g. Boost, Qt, etcetera) as you want to get your work done. Problem solved.

    271. Re:Here we go again (SCO) by twoHats · · Score: 1

      Wow - This is a big story...
      Microsoft creates something that is not made to produce windows only code!

      Problem is that C# was created by M$ as a strike back after Sun won many millions of dollars from M$ over not following Java license. This was meant to be a Java killer.

      After the ignoring of ANSI C++ standards for many years in order to make C++ code written with M$ C++ proprietary, they did the same with Java.
      ...and you believe that M$ actually produced something cross platform?

    272. Re:Here we go again (SCO) by man_of_mr_e · · Score: 1

      Nice rambling argument.

      C# is not "cross platform", it's "platform agnostic". There is nothing, absolutely nothing. Zero. Zilch. Nada in the C# standard that has any kind of Windows dependancy, requirement, or "could only be implemented on windows" aspect to it.

      And it's an ISO standard, something that Java never was, and something that Sun backed out of twice.

      Microsoft has had an ansi C++ conforming compiler (with the exceptoin of esoteric high end features that almost nobody implemented like partial templates) a long time ago.

      While it's true that if you wanted to use certain features like MFC (which would lock you into windows anyways) then you had to disable those ansi features (and they defaulted to off), but that changed about 10 years ago.

    273. Re:Here we go again (SCO) by kaffiene · · Score: 1

      Oracle doesn't seem to have received that message.

      They're aware of the legal status of the OpenJDK - Google isn't protected because they don't implement a full, certified Java stack. They take parts of Java and are not compatible with the whole Java stack. Google could have done this in a way to get patent protection but they chose not to.

      Even if it turns out that Oracle's case is lost, OpenJDK isn't patent protected, it's only protected against the old Sun patents. It could still violate someone elses patent that Sun doesn't own.

      Yes, but EVERY piece of software is in that situation! There MIGHT be a patent SOMEWHERE that you violate - that's the nature of our litigious times. However, the patents in question are those Sun patents and THEY are protected for OpenJDK.

      You really are spreading a lot of FUD about this situation.

    274. Re:Here we go again (SCO) by ais523 · · Score: 1

      There's a rule 3 as well, but it's not as snappy:

      3. Don't optimise without profiling to see where the problem actually is.

      I've needed to go past 1 and 2 before now; but I wouldn't add a micro-optimisation to code without being able to say both "this code is too slow without it because X", and "if I do this change, the code speeds up 30%" (or whatever amount). (And, of course, you have to know if 30% is actually a useful optimisation in the circumstances; if you don't know just how fast the code has to be, you have to read rules 1 and 2 again.)

      Macro-optimisations, where you pick an algorithm that's better by computational orders, are less dangerous to try; changing an O(n^2) algorithm to an O(n log n) algorithm can sometimes save 10 orders of magnitude or more, depending on the problem (more commonly, it's more like 6 or 7 orders). Even then, you normally have to go through the first two rules and use the third; an O(n^2) algorithm is perfectly acceptable if n happens to be small in your situation, so you ideally want to know where the problem is before you spend effort (both yours and that of future maintainers) on a more efficient algorithm.

      --
      (1)DOCOMEFROM!2~.2'~#1WHILE:1<-"'?.1$.2'~'"':1/.1$.2'~#0"$#65535'"$"'"'&.1$.2'~'#0$#65535'"$#0'~#32767$#1"
    275. Re:Here we go again (SCO) by Billly+Gates · · Score: 1

      Every book and every tutorial include Visual Studio and .NET so they are one.

      Mono is a lie and a distraction.

    276. Re:Here we go again (SCO) by twoHats · · Score: 1

      man_of_mr_e says "Microsoft has had an ansi C++ conforming compiler (with the exceptoin of esoteric high end features that almost nobody implemented like partial templates) a long time ago."

      Except that, in an important way, M$ C++ has never made an effort to be ANSI C++ compliant from the very beginning.

      I used and taught C++ for many years during the '90s, and was surprised to see that in a very simple matter M$ was non-compliant. I do not use C++ now, so i don't have details, but someone who is so quick to dismiss another will have no problem finding it.

      The for loop initialization variables changed scope when ANSI C++ came out(93? 94?). Borland had the fix within a month - M$ still didn't in 2007 (last time i looked).

      please do me a favor. After you find the non-compliance i mentioned, ask yourself, "if i missed this did i also miss something in C#?"

      Guess i'll ramble off now...

    277. Re:Here we go again (SCO) by man_of_mr_e · · Score: 1

      The for loop initialization variables changed scope when ANSI C++ came out(93? 94?). Borland had the fix within a month - M$ still didn't in 2007 (last time i looked).

      Wrong. Visual C++ 6 had ansi conformant for loop in VC6 back 1998, however it wasn't turned on by default because it broke MFC. However, if you wanted to strict ansi C++ you could turn it on.

      Given that YOU were the one that "missed" that VC had this, ask yourself "maybe i'm wrong about everything else" as well.

      It's completely true that you couldn't use ansi standard and MFC, which is why MS changed things in VC7 so that for loop and other ansi functionality could be enable or disabled individually (rather than a straight "ansi" mode as was the case in VC6).

      Still, it's true that VC isn't, and will likely never be 100% standard compliant, because certain features like "export" aren't worth the effort to implement (nobody uses it, and only very few other compilers implement it either, for example.. gcc doesn't, nor does borland)

      So do ME a favor, don't be so cocky about your assumptions. You're wrong.

    278. Re:Here we go again (SCO) by twoHats · · Score: 1

      Sorry - didn't know i was speaking to the total know-it-all. I will admit that I don't know crap about C#( due to personal choice). I also chose not to use COBOL back in the day - My choice - i suppose there are many who would call me a cocky ass for that choice also. But you are the one who chose name calling etc as your argument

      This is my last on this waste of time (God you even mentioned the terrible MFC arggghhh)- You do NOT turn ANSI on and off - it breaks code and is definitely duplicitous. Having a switch does NOT make a language ANSI compatible.

      I have been dealing with M$ languages since M$ came into existence, and they have *always* been playing catch-up - first to Borland (back when it *was* Borland) - then to Sun.

      As a person who has kept up with tech and programmed since 1965 i guess i can be a little cocky if i want.

    279. Re:Here we go again (SCO) by makomk · · Score: 1

      C# has no standard library functions. C# is a language, not a library.

      Yeah, but just the language on its own is no use as a replacement for Java. It's not just the Java language itself that makes it so popular, it's the fact that it comes with such a good, platform-independent set of libraries which all Java developers know.

      The CLI (which C# typically uses) also doesn't have any windows specific things, and does File and threading just fine on multiple platforms.

      With a lot of nasty hacks, yes. For example, the CLI assumes the existence of stuff like Windows-style handles that can be shared between different processes for stuff like threads, files, processes and synchronization primitives. No other OS has them, and this has to be worked around badly by Mono. I seem to recall there were various other things that assumed the underlying OS was Windows too, especially in the GUI support.

    280. Re:Here we go again (SCO) by man_of_mr_e · · Score: 1

      All os's have some kind of concept of a "handle" for the things you mention, be it process id, or some other token. The specification for the CLI makes no assumptions on this, and abstracts this out.

      It's true, if you want to do certain functions, you have to drop to unsafe (native) code, and that's not portable.. that's probably what you're thinking of. You have to do the same in Java for things that are not supported by the core framework.

      The GUI has nothing to do with C# the language, or the CLI. You can use any GUI you want, and GTK# is common for Mono.

    281. Re:Here we go again (SCO) by man_of_mr_e · · Score: 1

      Oh, so because I know something you don't.. i'm a "know it all". That's the excuse of the arrogant when they are caught out on their ignorance.

      You can, in fact, turn ansi compatibility on and off, and not just in Microsoft C++, but borland, and gcc as well (I still refer to the compiler borland made as borland rather than whatever company owns it this week). gcc has various extension modes that make it non-ansi compatible if you enable or disable them as well.

      In vc++ 6, there is a switch call /Za that turns off Microsoft extensions, making the compiler (significantly more ansi compliant, including things like for loop, which you claim wasn't there).

      Read this: http://msdn.microsoft.com/en-us/library/aa270923(v=VS.60).aspx

      While it doesn't explicityly mention the for loop scope, it's covered under more general scop rules in the scope section.

    282. Re:Here we go again (SCO) by twoHats · · Score: 1

      One more - don't be so angry - why all the name calling - we are talking about technical stuff here. Try to get a grip on reality.

    283. Re:Here we go again (SCO) by ozphx · · Score: 1

      So things like Environment.PathSeperatorCharacter are just added for the lulz?

      MonoDevelop, on *nix, with QT bindings or whatever the hell you want to use is completely seperated from Windows. Not to mention that OP was referring to C# the ECMA and ISO platform agnostic language, which runs on top of the equally platform agnostic CLI.

      Yeah, Microsoft also provides some Windows specific runtime libraries. Just like they do for their C++ compiler (MFC). Does this make GCCs C++ any less viable for cross platform development? Of course not, you stupid, trolling, bearded, hippy git.

      --
      3laws: No freebies, no backsies, GTFO.
    284. Re:Here we go again (SCO) by Kaz+Kylheku · · Score: 1

      Yes, well, you know what they say! In theory, practice and theory are the same. In practice, they are different.

      To support all Java programs properly, your interpreter would have to have all the features of the Java platform. Everything from loading class files, to threads to GUI files. You'd need a static type checker. Java program can't be checked at run-time without changing the whole run-time model to include type info in every value.

      Why write a Java interpreter in C, when you can just add a bit of garbage collection to C, a small library supporting tagged dynamic types. You can then write in a dynamic dialect of C that is superior to Java, and has a tiny footprint.

      I have a project in which my C looks more like a cross between Lisp and Javascript, e.g.:


              } else {
                  val subforms = mapcar(bind2other(func_n2(eval_form), bindings), form);

                  if (all_satisfy(subforms, identity_f, nil))
                      return cons(t, mapcar(func_n1(cdr), subforms));
                  return nil;
              }

      bind2other means bind the other argument of a two argument function, producing a one-argument function. We are establishing bindings for an evaluation which is applied to all elements of form via mapcar. Then I'm using the all_satisfy function to check that none of the resulting values are nil (by using the identity function as the predicate).

      C can be re-shaped. And the key to this is the flexibility with regard to memory and data types.

      For instance, I'm using spare bits in a pointer to implement a type tag. So the nil value in the above code is the real C null pointer, and all other values fit into the size of a pointer (which means we can efficiently pass them into functions, return them out of functions, etc).

      Java's type system would never allow us to use spare bits in a reference as an efficient type tag. The virtual machine is totally hostile against languages which don't look like Java, essentially dictating to the programmer "you must compute this way, using this paradigm". Real machines are not hostile in that way, and C lets us get at the real machines.

    285. Re:Here we go again (SCO) by Billly+Gates · · Score: 1

      Also worthy to mention is that even if you have source code that uses something like QT that is 100% portable (ha) will probably never be recompiled for anything other than Windows. Who wants to support MacOSX with 8% of the market and Linux with .1%? After all that costs money to support according to the PHB managing the project.

      I think if Java started with native .exes we might have seen more mac applications but Linux would have never taken off or Unix in the server space. The vendors would simply only support Windows and maybe Solaris here and there. IT would be very different.

  2. History Repeating by Anonymous Coward · · Score: 1, Informative

    I seem to remember that the SCO Group used the same arguments against Linux distributors and users. Perhaps Larry should check the performance of SCO stock before he makes another move.

    1. Re:History Repeating by ByOhTek · · Score: 2, Insightful

      I think oracle is a *little* bit bigger and more powerful than SCO. I don't think they'll get any farther with this than SCO did, but their attempts won't bankrupt them either.

      --
      Self proclaimed typo king, and inventor of the bear destroying coffee table (patent not pending).
    2. Re:History Repeating by gnasher719 · · Score: 1

      I seem to remember that the SCO Group used the same arguments against Linux distributors and users. Perhaps Larry should check the performance of SCO stock before he makes another move.

      I seem to remember that IBM used the exact same arguments against SCO. Including the argument that SCO had illegally copied 700,000 lines of IBM copyrighted code that was published under the GPL license (obviously with arguments why SCO's copies of the code were made illegally). So just because a gang of crooks lied about their code being illegally copied doesn't mean every accusation of copyright infringement is wrong. And just because code is available under the GPL doesn't mean it cannot be copied illegally.

    3. Re:History Repeating by Jason+Earl · · Score: 2, Insightful

      Most companies, especially companies as wildly successful as Oracle, want to actually grow, not simply avoid going bankrupt.

      Personally, I think that Oracle has far more to lose in this game of chicken. If Java's reputation gets damaged to the point where developers do not consider it for new projects then no amount of money from Google is going to make up the loss. Worse, Oracle's actions could put a stigma on all of its products. No one is going to want to touch Oracle's technologies if choosing Oracle's tech might trigger a lawsuit.

      That's actually part of what makes Oracle's move so odd. Suing Google over the use of Java is the sort of move that you would only expect of a company that is desperate. If Oracle is willing to sue over Java, what other crazy thing will they do next?

    4. Re:History Repeating by not-my-real-name · · Score: 1

      However, Oracle has more to lose than SCO.

      --
      un-ALTERED reproduction and dissimination of this IMPORTANT information is ENCOURAGED
    5. Re:History Repeating by StuartHankins · · Score: 1

      +1 Insightful. I was seriously considering spending some real time getting comfortable coding Java. Now not so much. I bet I'm not the only person / programmer who has backed way off on this.

    6. Re:History Repeating by ByOhTek · · Score: 1

      I certainly wasn't saying the idea is anything other than one of the worst that Oracle has come up with recently - it is. However the idea that it will destroy the company as suggested by the OP is somewhat absurd.

      --
      Self proclaimed typo king, and inventor of the bear destroying coffee table (patent not pending).
    7. Re:History Repeating by Jason+Earl · · Score: 1

      Oracle is a large company, with lots and lots of revenue, and billions in the bank. You are certainly correct to say that it is unlikely to go bankrupt any time soon.

  3. Behaving like SCO... by Thunderbird2k · · Score: 2, Insightful

    Apparently they are getting really desperate and are behaving like SCO now. If you have tons of getters, setters and other small functions, it is easy to have the same implementation in all cases.

    1. Re:Behaving like SCO... by lennier1 · · Score: 1

      Does it stop there or have some different implementations been written by the same developers, leading to the same approach both times? Happened on several occasions in case of Unix/Linux.

    2. Re:Behaving like SCO... by jdgeorge · · Score: 4, Interesting

      Apparently they are getting really desperate and are behaving like SCO now. If you have tons of getters, setters and other small functions, it is easy to have the same implementation in all cases.

      My guess: What Oracle is desparate for is a cross licensing deal with Google to give them access to Google's IP related to massively distributed data storage/retrieval. Google, on the other hand, isn't particularly interested in giving away their crown jewels in this way.

    3. Re:Behaving like SCO... by gtall · · Score: 1

      I'd second that guess. The distributed nature of the net and Google using it as a giant database would make any narcissistic paranoid like Uncle Larry worry himself sick. What's to stop Google from producing small Googlets and licensing them to individual companies to use. A bit of front end work and the massive parallelism might blow Oracle out of some of the companies they are milking.

    4. Re:Behaving like SCO... by MoriT · · Score: 1

      This is the entire point of patterns; there are things that pop up nearly identically over and over. Reinventing the wheel, it will always be round with a hole in the middle.

    5. Re:Behaving like SCO... by icebraining · · Score: 1

      There are plenty of OSS implementations of BigTable-like DBMSes, why would individual companies need Google?

    6. Re:Behaving like SCO... by ink · · Score: 1

      They may also want Google to pay the JavaME tax on all Android phones sold. It would be a sizable sum.

      --
      The wheel is turning, but the hamster is dead.
    7. Re:Behaving like SCO... by HeronBlademaster · · Score: 1

      Googlets like this?

    8. Re:Behaving like SCO... by lennier1 · · Score: 1

      Not just that. Every developer has his own style. And if the solution to a problem is complex enough that style tends to show.

    9. Re:Behaving like SCO... by gtall · · Score: 1

      Many organizations like to know there is a company behind the software they use...for various flimsy reasons. And maybe some are not so flimsy. In any case, having Google behind your Googlet is more comforting to corporate American than some diffuse OSS community.

    10. Re:Behaving like SCO... by gtall · · Score: 1

      Hey neat, they predicted my comment. So Snoracle really has a concrete reason to fear Google.

  4. Dangerous claim by TheRaven64 · · Score: 5, Interesting

    "The infringed elements of Oracle America’s copyrighted work include Java method and class names, definitions, organization, and parameters; the structure, organization and content of Java class libraries; and the content and organization of Java’s documentation," Oracle says.

    All of this stuff should count as an interface, and therefore not covered by copyright under US law. If they win this, then it sets a very dangerous precedent. Any project that implements an interface defined by another would potentially be violating copyright - including every single PC, which includes a BIOS that implements the behaviour of the IBM-copyrighted PC BIOS. Projects like WINE and GNUstep would also be in serious trouble and Linux (implementing UNIX APIs) would be illegal.

    Claiming that Google copied their code is interesting. I was under the impression that the java.* classes in Android came from Apache, not from the Sun releases. Is Oracle trying to pull a SCO here? (i.e. it does something like what our code does, therefore it's ours).

    They really should have kept this as a patent / trademark issue. Bringing copyrights in is a terrible idea.

    --
    I am TheRaven on Soylent News
    1. Re:Dangerous claim by vtcodger · · Score: 4, Insightful

      ***Is Oracle trying to pull a SCO here? (i.e. it does something like what our code does, therefore it's ours).***

      Lawsuits are written by lawyers. Being a lawyer means that you don't actually need to know what you are talking about, you just need to sound like you do.

      I agree, that this stuff other than indenting, comments, layout probably is not copyrightable. My understanding is that basically, you can not copyright the only way to express something.

      I'm in no way shape or form a lawyer. Does formulating this in the way they have give Oracle access to the Google code to see if the code was in fact copied byte for byte from Oracle rather than simply implementing the same externally interface?

      --
      You can't see ANYTHING from a car, You've got to get out of the goddamned contraption and walk...Edward Abbey
    2. Re:Dangerous claim by Anonymous Coward · · Score: 0

      "Linux (implementing UNIX APIs) would be illegal. "

      Depends which APIs, but many of them went into the public domain long ago (based on the copyright law that applied back in the 70s), and others were written by institutions like Berkely and released under permissive licenses long before they became part of standard UNIX.

    3. Re:Dangerous claim by Anonymous Coward · · Score: 5, Interesting

      All those perfectly valid points aside, there's the slight matter of Sun having released the vast majority of their API implementation as open source.

    4. Re:Dangerous claim by somersault · · Score: 5, Insightful

      Does formulating this in the way they have give Oracle access to the Google code to see if the code was in fact copied byte for byte from Oracle

      You mean this code?

      --
      which is totally what she said
    5. Re:Dangerous claim by Surt · · Score: 1

      Even if all the rest of it did, class definitions would not. Also, I wouldn't expect the private java interfaces to count as public interfaces for purposes of copyright (how you in particular implement a public interface ought to be protected by copyright, even if that involves private classes named interfaces in this particular programming language).

      --
      "Who is the Journal of Quantum Physics going to believe?" --Stephen Hawking
    6. Re:Dangerous claim by SwashbucklingCowboy · · Score: 1

      All of this stuff should count as an interface, and therefore not covered by copyright under US law.

      Yes and no. With Java, the package, class and method names would be a part of the interface and thus not covered. However, using the symbol XYZ to be some specific value that is used as a parameter to a method would be covered. It's the difference between an interface and an expression of an interface. Of course, this would be a small amount of what Oracle is claiming, but it's still valid.

      The code copying is the thing that is most potentially damaging. And that all depends on what code was copied (if it was) and what the license for that code was.

    7. Re:Dangerous claim by VGPowerlord · · Score: 1

      Java's class libraries are split into two sections. The first is the public API, as documented online.

      The second part is the native implementation classes. On Sun's JVM, those are the sun.* and com.sun.* packages.

      The real question is... which is Oracle referring to in this lawsuit? The former should be considered the interface (to an extent) and not copyrighted under US law. The latter is the implementation and should be covered by US Copyright law.

      There's one additional wrinkle in this: If the code was copied from OpenJDK, that means Android would have to be GPL or be in violation of the GPL license. Android is currently licensed under the Apache 2.0 license.

      --
      GLaDOS for President 2016! "Well here we are again. It's always such a pleasure." -- GLaDOS, 2011
    8. Re:Dangerous claim by yincrash · · Score: 5, Insightful

      under a very specific license. if you copy code, yet don't abide by the terms of the rest of the license, you are in violation of copyright.

    9. Re:Dangerous claim by ShakaUVM · · Score: 1

      >>All of this stuff should count as an interface, and therefore not covered by copyright under US law. If they win this, then it sets a very dangerous precedent.

      Indeed. There (is supposedly) a clear difference between interface and implementation, and if they're going to claim that copyright extends to interface as well, then it means that reverse-engineering for compatibility - which is legal - will become impossible to do, legally. Because you can't even make a clean room alternative implementation any more, since you can't use the name method names in your API.

      Honestly, though, I have to admit I'm really happy this lawsuit is occurring to Google, who has the legal muscle to beat Oracle down hard and hopefully set an ironclad precedent. If they sued Mom and Pop's Software Emporium... /shudder.

    10. Re:Dangerous claim by John+Hasler · · Score: 1

      However, using the symbol XYZ to be some specific value that is used as a parameter to a method would be covered.

      I don't see how you would find a non-trivial amount of creative expression in that.

      --
      Warning: this article may contain humor, sarcasm, parody, and perhaps even irony. Read at your own risk.
    11. Re:Dangerous claim by gravis777 · · Score: 1

      Wouldn't this also put projects such as Ajax and OpenJDK in jepordy?

    12. Re:Dangerous claim by Anonymous Coward · · Score: 0

      Hope your wrong. However, if you are right and implementing interfaces which are copyrighted is illegal, then good night USA. As an European I hope the laws are different here. But I have to check that first.

    13. Re:Dangerous claim by Anonymous Coward · · Score: 0

      Is Oracle trying to pull a SCO here?

      Yes.

      The bad news is that Oracle is very deep pockets, and can litigate this for many years. SCO ran out of money.

      The good news is that Google has equally deep pockets, and can fight back.

    14. Re:Dangerous claim by phantomfive · · Score: 1
      It's open source, but it's not GPL. They have restrictions on things like this; from the Java source download page:

      Note that in either case (SCSL or JRL), if you decide to use your project internally for productive use or distribute your product to others, you must sign a commercial agreement and meet the Java compatibility requirements.

      Dalvik from Google definitely does not meet the Java compatibility requirements. Now, if they did a clean room implementation they should be ok from the copyright standpoint, but the patents will be hard to get around.

      --
      Qxe4
    15. Re:Dangerous claim by Anonymous Coward · · Score: 0

      And seeing as both are GPL, Android is free to copy those parts as much as they want, byte for byte with comments. :)

    16. Re:Dangerous claim by Anonymous Coward · · Score: 0

      The example code that I saw was for an implementation class that was copied verbatim and then some variables were renamed and one instance variable was initialized at the top of the constructor rather than at the field's definition.

      One assignment moved (but effectively identical), and some variable names refactored? This is the stuff that gives Open Source a bad name and really should be stomped out. I'd rather someone other than Oracle be doing it, but I'd rather Oracle didn't own Java as well.

    17. Re:Dangerous claim by killmofasta · · Score: 1

      Excellent argument, but considering that almost the same thing was written about the SCO case, proves that the outcome will be the same, i.e. the closer the argument, the closer the outcome by precedent.

      Really, The only thing that the SCO/IBM suit proved was stupidity and greed. ( If you are reading this Derrly, rot in hell!, and look forward to company ).

      However, SCO was just stupid. Oracle is going to be a lot more sophisticated about it, and the API argument is a dead horse. Dead is dead. The hard fight was fought between IBM and Phoenix long before you were born.

      "Projects like WINE and GNUstep would also be in serious trouble and Linux (implementing UNIX APIs) would be illegal. " I will bet you ONE HARD LOONEY. ( $1CDN ) that this will never ever happen.

    18. Re:Dangerous claim by delt0r · · Score: 1

      OpenJDK was "copied" with permission. And then released with a patent exclusion IIRC. Basically your golden as long as you don't embrace, extend,... you should know the rest.

      --
      If information wants to be free, why does my internet connection cost so much?
    19. Re:Dangerous claim by Eil · · Score: 1

      Lawsuits are written by lawyers. Being a lawyer means that you don't actually need to know what you are talking about, you just need to sound like you do.

      I'm in no way shape or form a lawyer.

      Where's the button to flag this +1, Hilarious?

    20. Re:Dangerous claim by thePowerOfGrayskull · · Score: 1

      plus they'd have to remove the "interface" and "implements" keywords from the Java language -- before somebody tries to get the lawsuit dismiss on the basis of Oracle "making available"... ;)

    21. Re:Dangerous claim by Anonymous Coward · · Score: 0

      Most of the class library code is available under the GPL + classpath linking exception as part of OpenJDK.

      We'll see how the patents play out. Google has done some level of diligence. For example, Sun apparently has a patent on the Java .class files, but Dalvik uses its own .dex files. Dalvik uses a register-based bytecode format; Sun has done a lot of work on optimizing stack-based virtual machines and they might have some patents there.

      If Google has been careful enough with the patents, they can claim they're not really implementing "Java" but rather a "Java-compatible" language to get around trademark issues. Key word is language, because they don't claim to support the Java runtime or full class library.

    22. Re:Dangerous claim by Anonymous Coward · · Score: 0

      I started to suspect the same thing, but then I saw this example:

      Sun:
      private void addChild (PolicyNodeImpl child) {
            if (isImmutable) {
                  throw new IllegalStateException("PolicyNodeisimmutable");
            }
            mChildren.add(child);
      }

      Google:
      private void addChild (PolicyNodeImpl policynodeimpl) {
            if (isImmutable) {
                  throw new IllegalStateException("PolicyNodeisimmutable");
            } else {
                  mChildren.add(policynodeimpl);
                  return;
            }
      }

      Google's else block is a common programmer tautology. It's clear they were just following the class spec.

      There are more examples, mostly below that one, but for the most part this isn't a complex enough piece of code for significant differences in expression to naturally appear -- which explains why Oracle chose this source file, a 'HelloWorld' section in the codebase.

    23. Re:Dangerous claim by JesseDegenerate · · Score: 1

      this thread is proof that /.'s mod system doesn't work. i like 4 +5's just cause they support the GPL over Oracles supposed rights. Just stupid

    24. Re:Dangerous claim by cbiltcliffe · · Score: 1

      Being a lawyer means that you don't actually need to know what you are talking about, you just need to sound like you do.

      Doesn't this apply to pretty much every career choice?

      --
      "City hall" in German is "Rathaus" Kinda explains a few things......
    25. Re:Dangerous claim by icebraining · · Score: 2, Informative

      That's the proprietary JDK. You're looking for OpenJDK, which is under the GPLv2.

    26. Re:Dangerous claim by icebraining · · Score: 1

      Android isn't GPL, it's Apache, and therefore incompatible with OpenJDK.

    27. Re:Dangerous claim by Anonymous Coward · · Score: 0

      "Being a lawyer means that you don't actually need to know what you are talking about, you just need to sound like you do." ... "I'm in no way shape or form a lawyer."

      Seems like you're qualified to be one anyway.

    28. Re:Dangerous claim by Anonymous Coward · · Score: 0

      I mean, just because they hired Boies...

    29. Re:Dangerous claim by Anonymous Coward · · Score: 0

      There is a slight difference between a document that says, "If you put this byte in this location, the code will do this", and one that duplicates the private data members of an implementation class.

    30. Re:Dangerous claim by Anonymous Coward · · Score: 0

      http://www.binplay.com/2010/10/look-at-copied-oracle-code.html
      The code is a poorly-modified COPY of a Sun/Oracle file, WITH THE ORIGINAL COMMENTS REMOVED AND REPLACED. The original was under the GPL, and the modified one is under the Apache license. If SOMETHING ELSE does set a precedence, it's time for the garbage hack of spaghetti-code assembly called the BIOS to die anyway. Use EFI or OpenFirmware, and lock that legacy crap away for people who only need 640K RAM when they boot. It's a shame that Phoenix copied that piece of shit because it left the PC world stuck 25 years in the past. And DR/Caldera/SCO SHOULD have sued Microsoft back in the 1970s for copying not only the API, but some of the source code verbatim from CP/M via QDOS.

    31. Re:Dangerous claim by owlstead · · Score: 1

      Uh, that's not the OpenJDK license, that is the Oracle Java license.

    32. Re:Dangerous claim by HGG · · Score: 1

      I agree with the sentiments, but that's not the reality. When I did the OSS m3na package (Modula3 Numerical Analysis package), I started with a clean-room implementation of the function calls in "Numerical Recipes". Their lawyers claimed even using the same function names and parameter lists was copyright infringement. Being a lowly individual working out of my basement, I restarted the package. (Actually I think it turned out much better than NR, because I restructured around "groups" and their operations rather than a random collection of functions)

      Since then I've learned enough about US and International law to deeply distrust all legal actions surrounding "intellectual property" . Not to get too class-war about it, but if the big boys claim the law says X, then by gollies, it is X and there will be be armed enforcers to help you understand.

    33. Re:Dangerous claim by Anonymous Coward · · Score: 0

      for J2SE they released under an open source license but this code is going to be related to J2ME (Mobile Edition) which I think is still closed. Neither of which should matter since its supposedly a cleanroom implementation of the APIs

  5. I have to wonder by Monkeedude1212 · · Score: 1

    Oracle - how did Google get their hands on it in the first place?

    1. Re:I have to wonder by characterZer0 · · Score: 5, Funny

      how did Google get their hands on it in the first place?

      aptitude install sun-java6-source

      --
      Go green: turn off your refrigerator.
    2. Re:I have to wonder by PatPending · · Score: 1

      aptitude install sun-java6-source

      Apache Harmony, no?

      Regardless, +1 Funny

      --
      What one fool can do, another can. (Ancient Simian Proverb)
    3. Re:I have to wonder by Surt · · Score: 4, Insightful

      The code in question is publicly accessible, just not licensed for this kind of use. Once you violate the license, your right to copy that code goes poof.

      --
      "Who is the Journal of Quantum Physics going to believe?" --Stephen Hawking
    4. Re:I have to wonder by Anonymous Coward · · Score: 0

      The code in question is publicly accessible. It is licensed under both the CDDL and the GPL v2.

    5. Re:I have to wonder by Surt · · Score: 1

      Exactly. Violate those licenses and you are screwed.

      --
      "Who is the Journal of Quantum Physics going to believe?" --Stephen Hawking
    6. Re:I have to wonder by butlerm · · Score: 1

      Not exactly. Technical interfaces have been held to be immune from copyright protection, so in principle you can copy them all you want (assuming you copy only the essential elements, etc.)

      If the logic in Baystate v. Bentley Systems (1997) is followed by the court in the Oracle case, Google will be held harmless from claims of copyright infringement deriving from the copying of interfaces and APIs. See here, here and here.

    7. Re:I have to wonder by Surt · · Score: 1

      Right, it's the implementation claims that are a problem for Google.

      --
      "Who is the Journal of Quantum Physics going to believe?" --Stephen Hawking
    8. Re:I have to wonder by shutdown+-p+now · · Score: 1

      In the case of at least one class that Oracle claims to be infringing, apparently, Google (or someone, anyway) just used a Java bytecode decompiler.

    9. Re:I have to wonder by josath · · Score: 1

      Is there any proof that Google is violating the GPL or CDDL? As far as I know, all the code that Google modified has been released back to the public, which complies with the license.

      --
      sig? uhh, umm, ok
    10. Re:I have to wonder by Surt · · Score: 1

      I don't know, it seems like that's a question for the courts to decide.

      --
      "Who is the Journal of Quantum Physics going to believe?" --Stephen Hawking
  6. And so it begins. by contra_mundi · · Score: 5, Insightful

    Oracle makes Java unusable, by being Oracle.

    1. Re:And so it begins. by MrSenile · · Score: 3, Insightful

      Sadly, they aren't stopping there. They're slowly (ok, not so slowly) making Solaris unusable as well. As well as the hardware support.

      Paying $160,000/year for 25K support why again?

    2. Re:And so it begins. by Doctor+Faustus · · Score: 1

      Oracle makes Java unusable, by being Oracle.

      They were doing that before they owned it. OC4J drove me back to Microsoft tools.

    3. Re:And so it begins. by Anonymous Coward · · Score: 0

      Seems to be common behavior in the software industry.

      If you can't control it, kill it.

      Even if you have to buy it with shareholders's money to do it.

      And they wonder why the world considers them barbarians.

    4. Re:And so it begins. by Anonymous Coward · · Score: 0

      Oracle makes Java unusable, by being Oracle.

      Good! Java is an abomination upon the computing world. The sooner people stop using it the better.

      I have yet to see a well-written high-performance server-side java application.

      Now that Apple is removing java from macos, hopefully others will follow suit.

    5. Re:And so it begins. by Issarlk · · Score: 2, Insightful

      Writing high-performance server-side PHP will be a lot of fun.

  7. Isn't Java open these days? by Anonymous Coward · · Score: 0

    As long as they provide sources for their Davlik JVM i would think they will be fine no?

  8. You don't know what the fuck you are talking about by pavon · · Score: 4, Informative

    The JDK that ships with Android is just a subset of Harmony, which is released under the Apache license. All improvements made by Google have been folded back into the project. The additional non-standard libraries they ship with android, are also opens source.

  9. Most Hated by freeshoes · · Score: 0, Redundant

    Larry Elison, to become the most hated man in the World.

    1. Re:Most Hated by PatPending · · Score: 0, Offtopic

      Larry Elison, to become the most hated man in the World.

      I didn't realize Mr. Ellison was a Conservative.

      --
      What one fool can do, another can. (Ancient Simian Proverb)
    2. Re:Most Hated by mafian911 · · Score: 1

      "Larry, I have Bob Kotick on the line. He wants to meet over tea and crumpets. He mentioned that Adolf will be coming this time."

    3. Re:Most Hated by wonkavader · · Score: 1

      Yes, he lacks a gene.

    4. Re:Most Hated by Anonymous Coward · · Score: 0

      Larry Elison, to become the most hated man in the World.

      I didn't realize Mr. Ellison was a Conservative.

      Apparently he's about 39% Republican and 40% Democrat.

    5. Re:Most Hated by fwarren · · Score: 1

      Darrel McBrides evil twin?

      --
      vi + /etc over regedit any day of the week.
  10. Re:They Forked Standard Java Packages? by Anonymous Coward · · Score: 1

    What are you talking about? Android is open source under the apache license.

  11. Re:They Forked Standard Java Packages? by JonySuede · · Score: 1

    google used the package from apache harmony and the java.* package in android are open and free, so what exactly is your point ?

    --
    Jehovah be praised, Oracle was not selected
  12. So now we know who the next SCO is... by John+Hasler · · Score: 1, Insightful

    n/t

    --
    Warning: this article may contain humor, sarcasm, parody, and perhaps even irony. Read at your own risk.
    1. Re:So now we know who the next SCO is... by Anonymous Coward · · Score: 0

      Wait until they rename the company in Santa Cruz Oracle.

  13. Original code leaked by digitaldc · · Score: 1

    10 INPUT "What is your query? ", U$
    20 PRINT "Did you mean:"; U$
    30 INPUT "Are you feeling lucky? ", N
    40 PRINT "Goodbye "; U$
    50 END

    --
    He who knows best knows how little he knows. - Thomas Jefferson
  14. Doesn't this sound a lot like SCO's suit? by wonkavader · · Score: 4, Insightful

    Maybe there's more here. Maybe Google took actual, non-open Java code, but it looks a lot like the SCO suit to me. That Oracle is saying that using the same header files (AKA APIs) is infringement. We all know that to make a work-alike system, the strings in the header files (APIs) need to be the same. They really look the same, even if you create them from scratch by following the published specs.

    This seems like Darl's work, all over again.

    1. Re:Doesn't this sound a lot like SCO's suit? by shutdown+-p+now · · Score: 1

      If you read the actual court submission, it includes specific function bodies. So, no, it's not like SCO case, though TFS sure tries to make it sound like it is.

  15. Only if they are certified Java by JSBiff · · Score: 5, Informative

    I want to start by saying I'm not making any commentary here on the validity of Oracle's claims regarding direct copying (I suspect they are making that claim just because class names and methods are the same for some classes, for compatibility purposes).

    The thing is, Google doesn't claim Dalvik is "Java". They aren't using a Java license. Yes, you can create a free/open-source implementation of Java, as long as you are licensing from Sun/Oracle under the terms of the Java license.

    Google created something very similar to Java, but they are not calling it Java, and do not claim to have licensed Java from Sun/Oracle. I believe they claim copyright over the entire Dalvik VM and API. That makes a world of difference, legally, and so they can't use the defense the parent is suggesting.

    1. Re:Only if they are certified Java by Lunix+Nutcase · · Score: 0, Troll

      Except that they have created a derivative of j2me which is not open source.

    2. Re:Only if they are certified Java by Mongoose+Disciple · · Score: 2, Interesting

      Yes, you can create a free/open-source implementation of Java, as long as you are licensing from Sun/Oracle under the terms of the Java license.

      But really, how long can it be before Oracle's suing open source implementations of Java, too?

      I know, GPL, law isn't on their side, etc. But who really thinks that will stop them from trying to manage a win simply based on having more lawyers and money?

    3. Re:Only if they are certified Java by EasyTarget · · Score: 1, Insightful

      How can you make a derivative of something if you do not have the original source code?
      And if they have the j2me code; surely a police complaint is in order since that would be pure theft, and a civil matter.

      --
      "Oops, I always forget the purpose of competition is to divide people into winners and losers." - Hobbes
    4. Re:Only if they are certified Java by tlhIngan · · Score: 3, Insightful

      Yes, you can create a free/open-source implementation of Java, as long as you are licensing from Sun/Oracle under the terms of the Java license.

      But really, how long can it be before Oracle's suing open source implementations of Java, too?

      I know, GPL, law isn't on their side, etc. But who really thinks that will stop them from trying to manage a win simply based on having more lawyers and money?

      Very unlikely actually. You forget that Java on the desktop doesn't make much money - it's far more lucrative to make it free, get people addicted and use Java elsewhere that makes more money - enterprise and mobile devices.

      Forget smartphones for a moment, as they are but a tiny drop in total phone sales. The vast majority of those phones ('dumbphones' or 'featurephones') allow apps, and have for years. Those phones run Java, and Sun made (and Oracle makes) a killing licensing Java technology for all those handsets - both from the handset manufacturer and the carriers. And with the hundreds of millions of phones made annually, that's a lot of money.

      Oracle's not going to give up such a lucrative source of cash anytime soon. And Android's Java implementation is in the direct line of fire because of it.

    5. Re:Only if they are certified Java by Mongoose+Disciple · · Score: 2, Interesting

      Very unlikely actually. You forget that Java on the desktop doesn't make much money - it's far more lucrative to make it free, get people addicted and use Java elsewhere that makes more money - enterprise and mobile devices.

      I didn't forget that; let me explain the nuance of where we differ.

      I think what you're saying is true.

      I think Sun saw it that way.

      I don't think Oracle sees it that way. I think they're more likely to take the (bad, imho) strategy of deciding that Java needs to make them money directly even on the desktop/enterprise (herein defined as businesses that are using Java for business apps but maybe not using "enterprise Java"), one way or another. Maybe that's trying to get rid of free decent Java IDEs and muscle the makers of the rest into paying them a fee. Maybe that's bolting features or APIs onto Java that are extremely labryinthine or poorly documented so that you need to pay Oracle for consultants to do some or all of your implementation, and suing the hell out of alternate implementations of Java.

      Basically, I think Oracle is about as likely to keep things going the smart way they previously were as the RIAA is to decide that file-sharing ultimately helps them out. There's just nothing in their culture or history that indicates they're remotely capable of letting a goose continue to lay golden eggs when it can be cooked and eaten today.

    6. Re:Only if they are certified Java by denis-The-menace · · Score: 1, Interesting

      Oracle has not shown any *affection* for anything they got from Sun other than Patents. Unless you work there AND know different, I would GTFO. Handing out pink slips seems to cost more than watching the people leave.

      BTW: is Oracle hiring for Solaris ,OpenOffice or Java positions? If not it proves my point.

      --
      Obama's legacy: (N)othing (S)ecure (A)nywhere and (T)error (S)imulation (A)dministration
    7. Re:Only if they are certified Java by OneFix · · Score: 1

      Umh, actually if Dalvik is derivative of anything then it would be be j2se, since both Dalvik and j2se have functionality that j2me lacks...what this is really like is if Microsoft claimed that noone else could write a BASIC interpreter...which actually happened to some extent in the 1980s.

      What I remember reading is that Dalvik was actually heavily based on GCJ which is open source.

    8. Re:Only if they are certified Java by John+Hasler · · Score: 1

      > ...having more lawyers and money?

      They won't. If they go after Free Software they'll be up against Google, IBM, and god knows who else as well as hordes of pro-bono lawyers.

      --
      Warning: this article may contain humor, sarcasm, parody, and perhaps even irony. Read at your own risk.
    9. Re:Only if they are certified Java by Mongoose+Disciple · · Score: 1

      Well, they're suing Google right now...

    10. Re:Only if they are certified Java by SiChemist · · Score: 1

      Parent is a troll? Really?
       
      Mods: "Troll" does not mean "I don't like what he said."

      Is it just me or has moderation really gotten out of control lately?

    11. Re:Only if they are certified Java by John+Hasler · · Score: 1

      I didn't say they wouldn't sue anyone: just that if they go after Free Software they won't be able overwhelm the defendants with battalions of lawyers.

      --
      Warning: this article may contain humor, sarcasm, parody, and perhaps even irony. Read at your own risk.
    12. Re:Only if they are certified Java by DdJ · · Score: 1

      I don't think Oracle sees it that way. I think they're more likely to take the (bad, imho) strategy of deciding that Java needs to make them money directly even on the desktop/enterprise (herein defined as businesses that are using Java for business apps but maybe not using "enterprise Java"), one way or another. Maybe that's trying to get rid of free decent Java IDEs and muscle the makers of the rest into paying them a fee. Maybe that's bolting features or APIs onto Java that are extremely labryinthine or poorly documented so that you need to pay Oracle for consultants to do some or all of your implementation, and suing the hell out of alternate implementations of Java.

      So, what you're essentially saying is, Oracle may finally convince me to become a Mono/.Net developer, where de Icaza and Microsoft have never been able to do so.

    13. Re:Only if they are certified Java by HumanEmulator · · Score: 1

      I think Sun saw it that way.

      I don't think Oracle sees it that way. I think they're more likely to take the (bad, imho) strategy of deciding that Java needs to make them money directly even on the desktop/enterprise ...

      Basically, I think Oracle is about as likely to keep things going the smart way ...

      I don't know how I feel about what Oracle is doing, but when you are comparing a company who's financials looked like this (note the red in the operating income) to a company who's financials look like this (note the large numbers in black under operating income)... I have a hard time buying that Sun was doing things the smart way.

    14. Re:Only if they are certified Java by JesseDegenerate · · Score: 1

      No, your 100% right. How many +5 informative's have you seen for calling larry ellison an asshole? it's insane.

    15. Re:Only if they are certified Java by Compaqt · · Score: 1

      The thing is, they're calling it "Java" all over the place.

      They calling it ~Java for legal cover. And then they call it Java to get developer interest.

      So basically, they're trying to have it both ways.

      --
      I'm not a lawyer, but I play one on the Internet. Blog
    16. Re:Only if they are certified Java by Compaqt · · Score: 1

      What? How did Google manage to release an program/tool based on GPL code under a non-GPL license? Seems the more rocks you pick up, the more critters you see.

      --
      I'm not a lawyer, but I play one on the Internet. Blog
    17. Re:Only if they are certified Java by Compaqt · · Score: 1

      > Maybe that's trying to get rid of free decent Java IDEs and muscle the makers of the rest into paying them a fee.

      Well, they were giving away JDeveloper even before they bought Sun.

      Now, instead of ditching Netbeans, or making people pay for it, they going to be supporting both IDEs, for free.

      JDeveloper and NetBeans - The Official Answers

      --
      I'm not a lawyer, but I play one on the Internet. Blog
    18. Re:Only if they are certified Java by Anonymous Coward · · Score: 0

      I guess as well, it's not inconceivable that Google (should Java not go in the direction they want)
      could quickly supercede the current java with a free dalvik VM which people then use as a drop in
      replacement for the sun jvm ...

      That would also put sand in Oracle's pants ... maybe that's what they're trying to pre-empt?

  16. The new Axis of Evil has formed... by tangent3 · · Score: 1

    ...consisting of Microsoft, Apple and Oracle.

    1. Re:The new Axis of Evil has formed... by somersault · · Score: 4, Funny

      I wonder who will they make Chairman of this MAO group? Actually Steve has the most experience with chairs, so he should probably be the new Chairman MAO.

      --
      which is totally what she said
    2. Re:The new Axis of Evil has formed... by somersault · · Score: 1

      (Ballmer, not Jobs, obviously)

      --
      which is totally what she said
    3. Re:The new Axis of Evil has formed... by Sponge+Bath · · Score: 1

      Ballmer makes a better Igor style sidekick while Jobs and Ellison have the arch-villain chops. You could make an entertaining TV show about those two egos battling for supremacy with samurai swords and turtlenecks.

    4. Re:The new Axis of Evil has formed... by LoganDzwon · · Score: 1

      Microsoft has become largely irrelevant in the consumer space... Apple and to much smaller scale Canonical about the only major tech company I can think that is actually do anything customer centric anymore... Oracle, well as I've said becore, "Oracle hates you and wants your stuff." Google... google has done a slew of bad things in the last few years. (1) Android is awesome, however Google was Apple's partner when the first iPhone was announced. Eric Schmidt stood on stage next to Jobs and talked about how cool it was. Less then a year later Google is talking about their own cell phone that will compete with iPhone. (2) the whole underhanded closed-door meetings resulting in google doing a full 180 on net neutrality (3) do a google search for "Tiananmen Square" on google.cn . If anything I'd say the new Axis of Evil is Oracle and Google. The Allied forces would be Facebook, Apple, Microsoft Canonical is the neutral

    5. Re:The new Axis of Evil has formed... by Anonymous Coward · · Score: 0

      If it was obvious why did you.... sigh. Nevermind.

         

    6. Re:The new Axis of Evil has formed... by arashi+no+garou · · Score: 1

      "The Allied forces would be Facebook, Apple, Microsoft Canonical is the neutral"

      Have you been asleep for the past two years? I'd lump Facebook squarely in with the underhanded ones (or at the very least make them Switzerland) due to their total lack of regard for their users' privacy and safety. And how can Oracle and Google be in the same Axis of Evil if they are fighting?

      I think instead of World War II analogies, we should put up a "Hot or Not" type scale with 0 being Totally Evil and Against Users, and 10 being Fluffy Pink Unicorn User Orgy Time. And so:

      0: Oracle
      1: SCO
      2: Facebook
      3: Comcast (tied with Sony)
      4: Blizzard Entertainment
      5: Microsoft
      6: Apple
      7: IBM
      8: HP (they've been getting better)
      9: Canonical
      10: Nokia

      Ok so Nokia isn't quite pink unicorn material, but they are by far less evil than the rest. I don't even like any of their products other than the N900 and I loathe Symbian, but I'm judging them by how they treat their user base, not my personal feelings.

    7. Re:The new Axis of Evil has formed... by thePowerOfGrayskull · · Score: 1

      (Ballmer, not Jobs, obviously)

      Are you saying The Steve [Jobs] doesn't know about chairs? Perhaps you haven't heard of the "iChair"? I didn't think so, you ignorant lout.

    8. Re:The new Axis of Evil has formed... by Anonymous Coward · · Score: 0

      I wonder who will they make Chairman of this MAO group? Actually Steve has the most experience with chairs, so he should probably be the new Chairman MAO.

      I dunno. I hear Ballmer has a fair amount too.

    9. Re:The new Axis of Evil has formed... by Compaqt · · Score: 1

      Interesting ranking.

      Cananical is pretty good with their declaration that Ubuntu will always be free.

      Nokia has the following positives:
      -Bought and LGPL'ed Qt, the underpinning of KDE
      -N900
      -They open sourced Maemo
      -They open sourced Symbian
      -Meego, a Linux-based OS more open than Android
      -They generally sell phones that don't tie you to a carrier.

      --
      I'm not a lawyer, but I play one on the Internet. Blog
    10. Re:The new Axis of Evil has formed... by arashi+no+garou · · Score: 1

      All reasons why Nokia scored highest on my list, even if I don't care for them much myself.

      And I forgot to put Google in there, but my intended spot for them was to be tied with Apple, i.e. they've done some great things for openness in the past, but some pretty shady stuff lately. I hope they didn't actually steal anything from Oracle, and my gut feeling is it's a BS lawsuit. Still, it wouldn't be the first time they've done something boneheaded and tried to appear ignorant and innocent.

    11. Re:The new Axis of Evil has formed... by Compaqt · · Score: 1

      My feeling is that they (Google) are partially responsible for the decline of Sun.

      Here's a picture of Google and Sun sitting on a stage together like friends.

      And what does Google do it's "friend"? Stabs it in the back by coming up with a way to avoid pay royalties for mobile Java, which subsidized free desktop Java. That was exactly the time Sun needed the revenue, and Google inspired the whole industry to ditch Sun. Loss of revenue led to being sold.

      The funny thing is how Google is portraying itself as the savior of open source. Yet listen to Andy Rubin (Android head) about the GPL:

      "The thing that worries me about GPL is this: suppose Samsung wants to build a phone that's different in features and functionality than (one from) LG. If everything on the phone was GPL, any applications or user interface enhancements that Samsung did, they would have to contribute back," said Andy Rubin, Google's Android engineering director, in a 2008 interview. "At the application layer, GPL doesn't work."

      --
      I'm not a lawyer, but I play one on the Internet. Blog
  17. Java GPL? by Anonymous Coward · · Score: 0

    I thought that Java was now under the GPL?

    1. Re:Java GPL? by Lunix+Nutcase · · Score: 3, Informative

      J2se is. J2me is not. That's three problem that Google faces.

    2. Re:Java GPL? by Anonymous Coward · · Score: 0

      FYI, Android is j2se like.

    3. Re:Java GPL? by VGPowerlord · · Score: 1

      I thought that Java was now under the GPL?

      It doesn't matter, Android is Apache 2.0, and the GPL forbids you from relicensing GPLed code unless explicitly exempted (such as the "or later" clause the FSF recommends).

      --
      GLaDOS for President 2016! "Well here we are again. It's always such a pleasure." -- GLaDOS, 2011
    4. Re:Java GPL? by Anonymous Coward · · Score: 0

      Except Android doesn't use J2ME.

      The class library is a subset of J2SE, taken from Apache Harmony, not from Sun's GPL releases. The VM (Dalvik) isn't a J2ME VM. It's not really even a Java VM as such, but it's comparable to the standard desktop JVM. Android doesn't implement any of the J2ME APIs, and J2ME code will not run on Android.

      It's certainly possible to implement the J2ME API on top of Android, just as it was implemented on top of J2SE for the emulator that comes with the J2ME development tools.

      http://microemu.org/

      Of course, Google didn't do that. Why would they even want to support J2ME?

      The only relationship between Android and J2ME is competition. Android is much more powerful than J2ME, much more attractive for developers, and doesn't have the huge licensing fees associated with J2ME. Oracle are basically afraid that royalties for J2ME implementations will go away (as they should).

    5. Re:Java GPL? by Anonymous Coward · · Score: 0

      Android doesn't use J2ME APIs, it uses J2SE.

    6. Re:Java GPL? by Anonymous Coward · · Score: 0

      The crux of Oracle's argument seems to be the only version that Oracle authorized to run on a mobile device was J2ME, that argument is hogwash. The GPL and LGPL allow you to run any software anywhere for any purpose. Google is allowed to take GPL/LGPL code (from Harmony or anywhere for that matter) and port it / deploy it to a phone. Once they do so, it is still under GPL/LGPL, not the more restrictive J2ME license. Just because Oracle released a non-open source J2ME and stated that was the only version they allow to run on mobile devices, doesn't prohibit Google from porting the J2SE to a mobile platform.

    7. Re:Java GPL? by Anonymous Coward · · Score: 0

      J2se is. J2me is not. That's three problem that Google faces.

      But android is not J2me in any shape or form (it's much closer to J2se, but isn't that either).

      It just happens to be aimed at the same market.

    8. Re:Java GPL? by Anonymous Coward · · Score: 0

      This is informative???

      You know that android runs a fork of J2SE, nothing to do with J2ME at all, right?

    9. Re:Java GPL? by Pla123 · · Score: 1

      J2se is. J2me is not. That's three problem that Google faces.

      Android doesn't implement/use/extend J2ME. Only J2SE classes are included.

      I guess the main claim Oracle has is that Google should have used and licensed J2ME on mobile devices.
      Instead, Google implemented and extended J2SE.

      J2SE was way too heavy for mobile devices before Google came in. That is way many phone manufacturers used J2ME instead.
      J2ME was such a pain to program for compared to J2SE.

      I don't see how Oracle can force a manufacturer where to use J2SE.
      Since phones are just computers with VOIP/phone application, I don't see a problem using J2SE on them.

      What makes a phone different from desktop - detached screen? From a laptop - folding screen? From a tablet...?

  18. To all those who saw no harm in the Sun purchase by No.+24601 · · Score: 2, Interesting

    Oracle should never have been allowed to buy Sun. Instead it should have been liquidated (since that's what happening anyways... particularly with the high-profile Sun departures).

    And so it begins...

  19. The code is obviously ripped by judeancodersfront · · Score: 2, Insightful

    Sorry but that is a fact that is independent of any hatred you may have of Oracle.

    Renamed a string to s???? Why even bother?

    1. Re:The code is obviously ripped by pavon · · Score: 1

      Do you have access to the court filings? If so, please post them. This latest one isn't up on Groklaw yet, and I would be interested in more detail than the linked article.

    2. Re:The code is obviously ripped by H0p313ss · · Score: 1

      The one example I've seen is also in Harmony and probably Suns contribution to the GPL project.

      I'm yet to see clear evidence of whether Oracle is just pulling a SCO because they really don't understand their own IP or if somebody screwed up badly with Harmony and Dalvik.

      My opinion, for which I have zero evidence, is that Oracle is pulling a SCO and that the code they're bitching about is just one short step from being public domain.

      --
      XML is a known as a key material required to create SMD: Software of Mass Destruction
    3. Re:The code is obviously ripped by J.+J.+Ramsey · · Score: 1

      The code snippet shown in the ZDNET article, the code that Google supposedly ripped off, is GPL.

    4. Re:The code is obviously ripped by Compaqt · · Score: 1

      Why is this modded flamebait?

      Come on, the code is ripped or its not.

      Sorry, but Google flubbed on this particular file. If the particular coder who was responsible for that also worked the same magic on other files, Google's going to be in a world of hurt.

      ZDNet code comparo
      http://www.binplay.com/2010/10/look-at-copied-oracle-code.html

      And yeah, if M$ did the same thing (embrace and "extend") to Python or PERL that Android did to Java, the community would be up in arms.

      --
      I'm not a lawyer, but I play one on the Internet. Blog
    5. Re:The code is obviously ripped by Compaqt · · Score: 1

      Well, if it's GPL, obviously it's not kosher for Harmony or Android to relicense it, right?

      --
      I'm not a lawyer, but I play one on the Internet. Blog
  20. Deluded much? by judeancodersfront · · Score: 1

    Does the logic flow of the code need to be the same as well? This goes beyond interface interaction.

    1. Re:Deluded much? by hAckz0r · · Score: 1
      The design is different, the security model is different, the class binary byte code structure is different, and therefore the logic flow is *completely* different. The most that would be in common would be the names of the entry points for some of the classes used in both implementations.

      Oracle is counting on the laymen juror thinking that because they both technologies use the letters "VM" to describe how the application is run, that it must be a clone. If that were the case then perhaps Oracle should be suing VMware instead?

    2. Re:Deluded much? by Anonymous Coward · · Score: 0

      TFS mentions nothing about function bodies. It mentions 'definitions,' but I suspect Oracle meant declarations, method signatures, or constants -- it fits in with their overall argument.

      That being said, when you follow a language or library specification, expect many functions to be letter-for-letter exact when compared to the official implementation. If the library authors did a proper job, then there is minimal room for custom interpretation except where the platform requires it. If the new implementation was clean-room designed, as Google has claimed all along, then there is literally no grounds for a copyright claim -- if you think there is, you desperately need to rethink copyright.

    3. Re:Deluded much? by Anonymous Coward · · Score: 0

      Does the logic flow of the code need to be the same as well?

      It does if you want the data members to be in the same memory offsets. Which can be functionally important.

    4. Re:Deluded much? by Ephemeriis · · Score: 1

      Does the logic flow of the code need to be the same as well? This goes beyond interface interaction.

      It's been ages since I wrote any real code... And I haven't looked at any of the code involved here...

      But, depending on what you're trying to accomplish, there's really only one or two obvious/sensible ways to do it. Sure, I guess if you were really worried about copyright and/or lawsuits you could go out of your way to write your code in such a bizarre manner that nobody else would do it your way...

      --
      "Work is the curse of the drinking classes." -Oscar Wilde
    5. Re:Deluded much? by DragonWriter · · Score: 1

      Does the logic flow of the code need to be the same as well?

      In many cases, yes, the logic flow needs to be the same if the code is to take the same inputs, produce the same outputs, and is optimized for similar use cases (or just, efficiency by similar measures.)

    6. Re:Deluded much? by John+Hasler · · Score: 1

      If the "logic flow" has to be the same for the interface to work their is no infingement. If there only one way to do something there is no creative expression and therefor no copyright. Copyright protects expression, not ideas.

      --
      Warning: this article may contain humor, sarcasm, parody, and perhaps even irony. Read at your own risk.
    7. Re:Deluded much? by Dog-Cow · · Score: 1

      Why would anyone care about that? Dalvik doesn't use Java classes.

    8. Re:Deluded much? by judeancodersfront · · Score: 1

      There is logic flow that is independent of any interface.
      Someone already broke the code down, it's not looking good:
      http://www.binplay.com/2010/10/look-at-copied-oracle-code.html

  21. obligatory by Anonymous Coward · · Score: 0

    Suddenly, I feel the need to buy a t-shirt...

    http://www.zazzle.com/obstacle_database_11g_tshirt-235492717886734808

  22. Re:To all those who saw no harm in the Sun purchas by khallow · · Score: 1

    Oracle should never have been allowed to buy Sun. Instead it should have been liquidated (since that's what happening anyways... particularly with the high-profile Sun departures).

    Well then, you shouldn't have allowed it.

  23. Conspiracy by WilyCoder · · Score: 1

    Anyone else thinking Oracle buying Sun was a calculated move to destroy Android by killing Java?

    Maybe Google wanted Sun to die so Google could buy Java in a disheveled state....

    Reeks of conspiracy, I know, just a thought...

    1. Re:Conspiracy by gstoddart · · Score: 2, Interesting

      Anyone else thinking Oracle buying Sun was a calculated move to destroy Android by killing Java?

      Nope. I'm of the opinion that Java and Android are casualties to "business as usual" at Oracle.

      I believe they really did want to be able to market an Oracle appliance set up specifically for running Oracle DBs. In fact, they will likely eventually move to a mode where Oracle is only supported on Oracle machines with a support contract. Since even the most trivial install of Oracle on the enterprise level requires a staggering amount of machines and processors, there's huge money in selling you a couple of million in hardware/software with tens of millions in built in support costs over the lifetime.

      My wife works for a large company that does enterprise backups and the like. They have some aging Sun equipment -- but, since the machine isn't on a maintenance agreement with Oracle for bazillions of dollars each year, they suddenly can't get even the most basic stuff they used to be able to get. Oracle has locked everything down, and basically says "no contract, no peeking" -- needless to say, that is accelerating replacing Sun equipment with something else.

      Oracle are as evil and closed as Microsoft, and ran by megalomaniacs on the same scale. Java is a casualty, but it wasn't a strategic goal of buying Sun. They had bigger fish to fry there.

      In the long run, I think Oracle might devalue themselves overall -- they're gutting the brand value and good will of Sun, they're destroying Java, and generally not playing nice. I don't think people will want the taint of Oracle around their Sun platforms and Java.

      --
      Lost at C:>. Found at C.
    2. Re:Conspiracy by technomom · · Score: 1

      Killing Java also does considerable damage to IBM.

    3. Re: Conspiracy by A1rmanCha1rman · · Score: 1

      Anyone else thinking Oracle buying Sun was a calculated move to destroy Android by killing Java?

      Maybe Google wanted Sun to die so Google could buy Java in a disheveled state....

      Reeks of conspiracy, I know, just a thought...

      The story circulating was that Sun Microsystems was actually offered to Google ahead of any other suitors, with a strong suggestion to purchase in order to indemnify themselves from precisely the kind of litigation they may now be facing.

      As the rumour goes, they passed, and the rest is history.

      --
      I get up, I get down...
    4. Re:Conspiracy by CynicTheHedgehog · · Score: 2, Interesting

      Oracle is not in the mobile market, except in the sense that they now own Java and want to collect royalties for the use of Java in handheld devices. Sun has always required royalties for J2ME (Micro edition) in handheld devices. The issue here is that Google tried to weasel out of royalties by making a Java-compatible VM based on J2SE (Standard Edition) which is GPL and open. The problem is that this move violates the *spirit* of the original Java licensing agreement, which as to open Java for desktop/server use and charge royalties for Java on handheld devices.

      I listened to Jonathan Schwartz's keynote at Java One in 2005 and he made the claim that handhelds were the future and where Sun's focus would be. One of his statements was about how there were virtually no desktop computers or land lines in rural areas / developing nations (India, China, Africa) but cell phones were ubiquitous. J2ME (at the time) was on 1 billion handhelds (now over 2 billion I believe). Whatever the royalties are, it is a significant source of revenue.

      The success of Oracle's lawsuit will depend whether the wording of the licenses is such that a derivative of J2SE on a handheld device can be considered to be essentially J2ME. I.e. does any flavor of, or derivative of, Java on a handheld require licensing and royalty payments? And it may come down to whether certain APIs or implementations are shared between J2SE and J2ME, which is almost certainly the case.

      Google tried to have their cake and eat it too. They wanted the ability to leverage a massive preexisting class library and huge developer population without paying the royalties to Sun/Oracle. So they made a byte code translator to allow developers to build and compile using Java, and execute on the Dalvik VM.

      Harmony is in the clear, because the Apache Foundation is not trying to sell handheld devices with Harmony embedded. (Same with OpenJDK, GCJ, etc.)

      I think Sun could have successfully sued Google over this, but chose not to, probably because it would be messy and because the goodwill with Google was more valuable. For Oracle it's a potential revenue stream. The intent isn't to kill the goose that lays the golden eggs, but to get a chunk of each egg that comes out.

    5. Re:Conspiracy by urulokion · · Score: 1

      No conspiracy is needed. . Oracle sees Android == Java, Android != Java SE.; therefore, Oracle wants $$$. It's as simple as that.

      Sun wanted the same thing but didn't have the money reserves to push things in court. And it wasn't in the corporate culture to really do so either. Oracle is the polar opposite of Sun in both regards. So Oracle filed suit. I see a long, hard battle in court. Google winning in circuit court. Oracle appealing the case. And thatings are too hazy after that.

    6. Re:Conspiracy by toriver · · Score: 1

      Why would Oracle want to shoot their own foot off? Practically everything of software - except the database - from Oracle is written in Java.

      Makes zero sense to kill it.

    7. Re:Conspiracy by Compaqt · · Score: 1

      Oracle isn't killing Java. It's just trying to prevent Android (now bought by Google) from embracing and extending it.

      If anything, what would kill Java is twenty different non-compatible entities all wink-wink, nod-nod claiming to be Java.

      Sun thought the same thing, but it didn't have the cojones to do anything other than send love-notes to Google about it.

      --
      I'm not a lawyer, but I play one on the Internet. Blog
    8. Re:Conspiracy by Compaqt · · Score: 1

      Let's say your a corporation (or small business or a mini-ISV) that's standardized on Java as a dev platform.

      Do you want to see Java everywhere, or a fragmented ecosystem (ego-system) of everybody making "Java" clones that aren't compatible with standard Java?

      While in the first case, your code can run a lot of different places, in the second, you're again having to modify for each different platform.

      What Oracle is doing is basically the same as in the Sun/MS case: it's trying to hold together the Java platform.

      I realize, though, that lawyers are scum, and that contributes to a bad impression.

      --
      I'm not a lawyer, but I play one on the Internet. Blog
  24. Same Lawyer by pavon · · Score: 2, Interesting

    Is Oracle trying to pull a SCO here?

    Groklaw pointed out that David Boies is one of the three Lawyers listed on the Oracle filings. He also represented SCO in that fiasco, so, yes it appears we will be seeing the same sort of bullshit we saw there. He is a lawyer, and has represented many clients including some we would side with (such as arguing the DOJ's case against Microsoft). But his methods are similar regardless of the client; a no-holds-barred fight claiming anything they can think of regardless of the merit of the claims or how it affects Oracle's reputation with their customers.

  25. Apple - Java by aitikin · · Score: 5, Interesting

    So maybe this is why Apple decided to stop updating their java and leave it to Oracle...

    --
    "Don't meddle in the affairs of a patent dragon, for thou art tasty and good with ketchup." ~ohcrapitssteve
    1. Re:Apple - Java by denis-The-menace · · Score: 1

      If Java is poison for Android then Java is poison for every one.

      Apple didn't want to worry about explaining things to *smart* consumers if they ask: Is that the phone/computer with that Bad Java thing on it?

      This way they can say: "No, we don't include Java"

      --
      Obama's legacy: (N)othing (S)ecure (A)nywhere and (T)error (S)imulation (A)dministration
    2. Re:Apple - Java by DannyO152 · · Score: 1

      Certainly ownership change is a time for reassessment. It must be said, though, Apple and Sun had their history. One has to assume that Apple was behaving as per its license from Sun and the license terms would carry over to Oracle without any changes.

      Still, I think the primary reason is that Apple had taken on sustaining its java environment so as to make java apps as consistent with native look and feel applications as possible. Apple has just reassessed the costs of that decision, and how the platform has changed post-mobile devices, and has concluded that all the money they spend on java does not sell a commensurate number of devices.

    3. Re:Apple - Java by Anonymous Coward · · Score: 0

      That's a very good point. I'm sure Apple's rendition of the Java API is similar enough (well it would have to be...) that Oracle could sue them under the same grounds.

    4. Re:Apple - Java by gtall · · Score: 2, Insightful

      Bullshit, Apple has license agreements with Sun, now Oracle. Or rather they are in the process of ripping them up. The reason isn't that Java's poison, the reason is that Java is either not material to Apple or they figure they can shift the cost to Oracle. Java is only poison for Android to extent Oracle has a case. If it blows up in Uncle Larry's face, that Java will do just fine. We should find out in about 10 years after the lawyers have new boats.

    5. Re:Apple - Java by delt0r · · Score: 1

      Android doesn't run java.

      --
      If information wants to be free, why does my internet connection cost so much?
    6. Re:Apple - Java by Super_Z · · Score: 1
      From the android developers fundamentals:

      Android applications are written in the Java programming language

    7. Re:Apple - Java by JesseDegenerate · · Score: 1

      Android doesn't run java.

      Perfect Example of how the Schmidt Juice is more hardcore than the distortion field but... it's from google...

    8. Re:Apple - Java by Anonymous Coward · · Score: 0

      If i take a java application and try and run it on a android phone. It will not run. It doesn't matter what language(syntax) i write the thing in, it does not run java.

    9. Re:Apple - Java by ADRA · · Score: 1

      1. From my memory of past new releases, Apple never did a good job of supporting new features in the JVM to begin with
      2. Apple seems to be in a frenzy to gut anything that isn't explicitly tied to their platform, so having an open (from apple api's) java floating on top of their OS means that they can just up and support other platforms. The fact that the apple camp seems to be turning their OSX into an iPhone/iPad, this makes total sense

      --
      Bye!
    10. Re:Apple - Java by StuartHankins · · Score: 1

      Yes. It's very likely this is so. Why spend valuable resources customizing a language's adoption on your platform if they also might sue you? Let them handle it. Or not. Apple is making Java less and less important on OS X, and it's never been important on iOS.

      Like it or not, it makes sense to use either a truly open platform or a platform you control. If it can be subverted later you may realize all the foundations you were building on suddenly crumble. THAT would keep me awake at night.

    11. Re:Apple - Java by Super_Z · · Score: 1

      It is the syntax that defines the language, not the runtime environment. If I run ruby in a jvm through jruby, I still run ruby.

    12. Re:Apple - Java by am+2k · · Score: 1

      1. From my memory of past new releases, Apple never did a good job of supporting new features in the JVM to begin with 2. Apple seems to be in a frenzy to gut anything that isn't explicitly tied to their platform, so having an open (from apple api's) java floating on top of their OS means that they can just up and support other platforms. The fact that the apple camp seems to be turning their OSX into an iPhone/iPad, this makes total sense

      Actually, for a brief moment in time (during Mac OS X 10.0), Java was a first-class citizen. Even the System Preferences application was written in Java. Then they scrapped the whole thing and re-wrote it in Objective-C.

    13. Re:Apple - Java by owlstead · · Score: 1

      That's true, but the VM does not run Java byte code. So, although you are correct, the GP is as well. That it is compiled from Java source code does not change that fact.

    14. Re:Apple - Java by Compaqt · · Score: 1

      Java isn't poison to anybody. You can use Java for free (and freely) while keeping within Sun licenses and grants.

      Android, Inc. and later Google came up with a hare-brained scheme to avoid giving royalties to Sun by creating a pseudo-Java implementation.

      But they also wanted to play both sides by channeling existing Java developers' expertise and code.

      If you ask me, that was Evil, because Sun was one of the Good Guys.

      The funniest thing about it is that Google wants to claim both that Android isn't Java and that the suit is an attack on ... Java!

      --
      I'm not a lawyer, but I play one on the Internet. Blog
    15. Re:Apple - Java by Compaqt · · Score: 1

      Why would Oracle/Sun sue Apple? Apple bought a Java license from Sun.

      By contrast Android/Google tried to weasel out of paying a pittance to Sun, and never had an agreement with Sun.

      --
      I'm not a lawyer, but I play one on the Internet. Blog
    16. Re:Apple - Java by metamatic · · Score: 1

      Bullshit, Apple has license agreements with Sun, now Oracle. Or rather they are in the process of ripping them up.

      My guess is that Oracle said to Apple "Hey guys, here's how much you're going to have to pay us for Java in 2011..." and Apple laughed and started ripping Java out of OS X.

      --
      GCHQ Quantum Insert installed. If only our tongues were made of glass, how much more careful we would be when we speak
  26. Well, I guess that shows us by MoriT · · Score: 1
  27. Sueing for using open source? by daid303 · · Score: 1

    Isn't oracles java just OpenJDK? Which is GPL, and thus can be copied in the way google did (if they did)?

    Next up, Linus sues the world for each copy of the kernel sources?

    1. Re:Sueing for using open source? by butlerm · · Score: 1

      The problem is that Harmony (the library that Google uses) is licensed under the Apache license, which is not compatible with the GPL. Of course in principle Google could just switch to OpenJDK source code, or persuade the copyright holders in Harmony to relicense under the GPL, and all would be okay, so far as copyright claims are concerned.

    2. Re:Sueing for using open source? by jonwil · · Score: 1

      Actually, the Apache license IS compatible with the GPL version 3.
      Its not compatible with the GPL version 2 (which is what SUN used for OpenJDK so they didnt get hit by the patent clauses in GPLv3)

  28. Trading free languages for proprietary by whiteboy86 · · Score: 1

    has never been a good idea - the enforcement of Java on Google's Android platform has been often criticized and caused major headaches for developers and FOSS community.

    This mess might make Google think twice about Java and might push them to embrace patent-free industry standards instead.

    1. Re:Trading free languages for proprietary by denis-The-menace · · Score: 1

      Doesn't matter.
      In a few months Java could taste like expensive bitter coffee from Starbucks for Companies
      Because anything Java will cost Big $ because it's from Oracle.

      --
      Obama's legacy: (N)othing (S)ecure (A)nywhere and (T)error (S)imulation (A)dministration
  29. PostgreKill by Tablizer · · Score: 1

    Google should buy PostreSql, jazz it up a bit, and use it to kill Oracle's root business.

    1. Re:PostgreKill by hmallett · · Score: 1

      Buy it? Read the license, they can have it!

    2. Re:PostgreKill by DragonWriter · · Score: 1

      Google should buy PostreSql, jazz it up a bit, and use it to kill Oracle's root business.

      Since PostgreSQL is open source (and BSD, not GPL, so there's not as much issue with relicensing if that would be a concern) there is no reason for Google to buy PostgreSQL to do that.

      Though if they didn't want to start from square one on the business side, I suppose they might want to buy EnterpriseDB.

    3. Re:PostgreKill by BitZtream · · Score: 1

      Now days, as far as a DB itself is concerned, you don't have to do much to PostgreSQL to make it look like a good alternative to Oracle in the majority of environments Oracle is in. Not all environments, but most of them for sure.

      Oracle has a lot more to it than JUST a database you can talk to. They sell a lot of middleware to do stuff on top of the database.

      --
      Persistent Volume manager for Kubernetes - https://github.com/dwimsey/openshift-pvmanager
    4. Re:PostgreKill by dkleinsc · · Score: 5, Insightful

      Postgres, like most other really awesome open source projects, is not for sale. To anyone. For any price. That's one reason Microsoft, Oracle, et al hate them so much - when it was startup companies, they could always pull out the checkbook and make the problem go away. With the FSF, Apache, Mozilla, and so forth, they can't.

      --
      I am officially gone from /. Long live http://www.soylentnews.com/
    5. Re:PostgreKill by Tablizer · · Score: 1

      I thought they had a sponsoring company similar to MySql's sponsoring company that sells an "Enterprise" edition.

      But if not, then Google can achieve the same goal by helping improve PostgreSql to the point where it eats into Oracle's low-end and mid sales. Make Oracle an object lesson.

    6. Re:PostgreKill by John+Hasler · · Score: 1

      > Google should buy PostreSql...

      From who?

      --
      Warning: this article may contain humor, sarcasm, parody, and perhaps even irony. Read at your own risk.
    7. Re:PostgreKill by killmofasta · · Score: 1

      Thank you Richard Stallman!

      Now I know that Oracle has pissed off someone, I am looking forward to a true black box implementation literally within a few weeks. 5k APIs? 2M lines of code? I am willing to be that before next week, that there are easily 5k programmers working to make Mr Ellison...how would it be best expressed in the words of Baal: "Insignificant"

      MOD PARENT +1 Interesting

    8. Re:PostgreKill by tayhimself · · Score: 1

      No one can sell it away like Wideanus did for MySQL?

    9. Re:PostgreKill by Anonymous Coward · · Score: 0

      You mean just like MySQL can't be bought for any price? Any project has a finite number of active developers and a finite number of copyright holders.

    10. Re:PostgreKill by PRMan · · Score: 2, Interesting

      Google could aggressively market "Google Consultants" that replace your Oracle environment with a PostgresSQL environment for the cost of consulting labor (after all, the tools are free). They could take out Oracle easily with a move like this.

      --
      Peter predicted that you would "deliberately forget" creation 2000 years ago...
    11. Re:PostgreKill by Anonymous Coward · · Score: 0

      Google doesn't have to buy Postgresql to jazz it up.
      And Postgresql doesn't need much jazz to kill Oracle's RDBMS.
      80% of all new Oracle implementations could and should be implemented in Postgresql.

    12. Re:PostgreKill by judeancodersfront · · Score: 1

      Yea but they could fork it and make GoogleDB.

    13. Re:PostgreKill by Tablizer · · Score: 1

      I like your thinking!

      One small caveat is that it's generally far easier to create new databases on a new platform than convert existing. Thus, a given Oracle-only shop may think about putting its new apps and databases on PostGreSql. Google could perhaps help make some integration tools and/or protocols, such as making it easier to join two+ tables from two+ different vendors.

    14. Re:PostgreKill by dkleinsc · · Score: 1

      Which would also have to be GPL'd. That's the beauty of the GPL.

      --
      I am officially gone from /. Long live http://www.soylentnews.com/
    15. Re:PostgreKill by judeancodersfront · · Score: 1

      Nah, it's pretty open
      http://www.opensource.org/licenses/postgresql
      Maybe you are thinking of mysql

    16. Re:PostgreKill by angus77 · · Score: 1

      MySQL AB owned MySQL and distributed a version of it under the GPL.

      PostgreSQL isn't owned by anyone who could sell.

    17. Re:PostgreKill by PCM2 · · Score: 1

      I thought they had a sponsoring company similar to MySql's sponsoring company that sells an "Enterprise" edition.

      PostgreSQL does not have any such formal sponsor, but because it's under an MIT-style license, commercial companies are free to release commercial "enterprise" versions (and several do).

      --
      Breakfast served all day!
    18. Re:PostgreKill by PCM2 · · Score: 1

      MySQL was always a very different scenario from e.g. PostgreSQL. MySQL was launched by a commercial entity and the majority of its code was contributed by employees of that entity. More importantly, it required outside contributors to assign copyright to MySQL AB -- so the company that bought MySQL AB bought the whole shebang, source code and all. That's not the case with PostgreSQL and many other, more community-centric open source projects.

      --
      Breakfast served all day!
    19. Re:PostgreKill by Trifthen · · Score: 2, Informative

      I think he's talking about EnterpriseDB. They don't own PostgreSQL in any way, but Bruce Momjian and Dave Page, two of the top developers aside from Tom Lane, both work there. Ironically, their schtick is Oracle compatibility, complete with a compatible implementation of PL/SQL they call edbspl, date-format, data types, you name it. They've also contributed several modules and projects to the PostgreSQL project (GridSQL, several admin tools, etc).

      --
      Read: Rabbit Rue - Free serial nove
    20. Re:PostgreKill by Compaqt · · Score: 1

      Would that be cheaper than if they had just agreed to a fair royalty agreement with Sun (a company that open-sourced OpenOffice, Solaris, Java, and others)?

      It's possible the extra income might just have staved off the need to be sold. Karma payback.

      And was there really a need to be gratuitously incompatible with standard Java J2ME applications? All while riding the white horse of "protecting the Java community" from the big, bad Sun/Oracle?

      --
      I'm not a lawyer, but I play one on the Internet. Blog
    21. Re:PostgreKill by swilver · · Score: 1

      Oh good, so with PostgreSQL, you get just the bits you are in interested in then without any fluff?

    22. Re:PostgreKill by josath · · Score: 1

      Nothing prevents any of those contributors from forking MySQL and continuing to work on it in the same manner as they did before. Except maybe their new boss paying them to not do that. But then that could happen to any project, no? All the major contributors get bought out?

      --
      sig? uhh, umm, ok
    23. Re:PostgreKill by PCM2 · · Score: 1

      Greenplum is another company that markets a commercial database based on PostgreSQL. I know EnterpriseDB contributes back to the core PostgreSQL project a lot, and I assume Greenplum does too, but as you say, neither "owns" PostgreSQL, which is developed in a pretty thoroughly community-based fashion.

      --
      Breakfast served all day!
  30. Farley by Anonymous Coward · · Score: 0

    Wow, Oracle is making themselves irrelevant in a hurry... do they really want to go out of business that bad? If I worked for them right now I'd be looking for another job asap. First MySQL, then OpenOffice, and now they are (simplified) attacking open legitimate use of Java? I know some higher-end vendors rely on Oracle still, but this is strike three in the case to move the heck off of anything Oracle.

  31. Ok, so google buys up oracle stock .. by fkx · · Score: 0

    OK so google buys up oracle stock,

    holds a meeting and fires and replaces everyone and proceeds on like nothing happened, right?

    1. Re:Ok, so google buys up oracle stock .. by afidel · · Score: 1

      Uh, the market cap for ORCL is ~144B, GOOG is ~196B, I don't think Google will be performing a hostile takeover of Oracle anytime soon.

      --
      There are 4 boxes to use in the defense of liberty: soap, ballot, jury, ammo. Use in that order. Starting now.
    2. Re:Ok, so google buys up oracle stock .. by bytestorm · · Score: 1

      The actual number for google's assets on hand as of 9/30 is 39.4B, which is much much less than the 146B market cap for oracle.

    3. Re:Ok, so google buys up oracle stock .. by afidel · · Score: 1

      You can use stock as well as cash and cash equivalents to perform a hostile takeover, but it generally requires a much larger equity value in the company performing the takeover.

      --
      There are 4 boxes to use in the defense of liberty: soap, ballot, jury, ammo. Use in that order. Starting now.
  32. Re:To all those who saw no harm in the Sun purchas by digitalunity · · Score: 1

    Investors wanted their money back. If Sun dumped all their copyrighted works onto torrent networks with a GPL license and folded up shop, their stock price would have instantly tanked and investors lost every penny.

    Such a leadership decision would have been so negligent with regards to fiduciary responsibility that the board likely would have faced personal criminal liability. Not to mention, anyone working at Sun who actually wanted to stay at the company would have lost their jobs.

    It's easy to see the repercussions of the Sun sale affecting us all for years to come, but I don't think there was any other choice. Oracle was the last company I wanted to see get Sun's assets; but it is what is is.

    --
    You can't legislate goodness. Let each to his own destiny, by will of his freely made choices.
  33. Re:To all those who saw no harm in the Sun purchas by cpghost · · Score: 1

    In most countries, when a company is liquidated, the various assets (including so called intellectual property assets) are being sold to the highest bidder. Imagine some crucial Unix-y stuff by SUN being bought by MSFT, SCO etc...!

    --
    cpghost at Cordula's Web.
  34. Google's response by nomad-9 · · Score: 1
    For those who are interested, here's a blog that discusses in more details the matter & Google's response.

    http://www.groklaw.net/article.php?story=20101005114201136

    Google's answer with counterclaims. Like a declaration that the Oracle’s claims be barred by the doctrine of "unclean hands" (i.e. bad faith), and for Oracle to pay Google's attorney fees for that invalid lawsuit.

    1. Re:Google's response by DragonWriter · · Score: 1

      For those who are interested, here's a blog that discusses in more details the matter & Google's response.

      Well, it provides background on the original Oracle claims and Google's responses to the original claims. It doesn't address the amended claims referred to in TFS, or any response from Google to those claims (which probably will take a while to come.)

  35. Evil? by guybrush3pwood · · Score: 2, Interesting

    Evil? Are you serious? Oracle is not "evil", at least not by my understanding of the word. Evil would be to stealing food from a starving crowd, selling weapons to terrorists, secretly building atomic arsenals to launch surprise attacks, creating an ever-mutating virus targeting a specific ethnic group, and the like... A company buying another one and filing a lawsuit for a patent against a competitor might be silly, unfair, wrong... but never "evil".

    --
    Perhaps I'm trolling, perhaps I'm not.
    1. Re:Evil? by John+Hasler · · Score: 2, Insightful

      "Evil" now means "I don't like it".

      --
      Warning: this article may contain humor, sarcasm, parody, and perhaps even irony. Read at your own risk.
    2. Re:Evil? by guybrush3pwood · · Score: 1

      Oh! Now I get it! ;)

      --
      Perhaps I'm trolling, perhaps I'm not.
    3. Re:Evil? by butlerm · · Score: 1

      Google has the motto "don't be evil" for a reason. By "evil" they clearly mean unethical, unfair, or malicious, in addition to illegal of course.

    4. Re:Evil? by owlstead · · Score: 1

      Ah, you must be one of those people that tell me I cannot be hungry because so many people are starving.

    5. Re:Evil? by guybrush3pwood · · Score: 1

      If by "hungry" you mean "I want another Twinkie to go with my Red Bull before the season finale of Buffy the Vampire Slayer ends, and I don't give a damn about anything else as long as I get what I want", then yes, I am, and I consider your hunger a joke.

      --
      Perhaps I'm trolling, perhaps I'm not.
    6. Re:Evil? by owlstead · · Score: 1

      No, that's a nagging feeling. I mean that if I come home after a long days work and my body is screaming for nutrition, that kind of feeling.

      What you are doing is showing me some kind of examples of extreme evil and telling me that Oracle cannot be evil because it doesn't compare.

      Well, my hunger will never compare with the hunger of rather large parts of Afrika or North Korea, but that's no reason to abandon the term for everyday use.

      Ignoring the feelings of millions of Java devs by going after Google does constitute evil. Being so locked up in your company culture that you cannot see the bigger consequences certainly is.

    7. Re:Evil? by guybrush3pwood · · Score: 1

      Ignoring the feelings of millions of Java devs by going after Google does constitute evil.

      I disagree. That's not evil. Using the word "evil" just because one doesn't like something - even if it affects millions - is a mistake. I'd use the word "evil" for important affairs of the world, not for corportate policies - no matter how wrong or injust - or commercial litigations.

      Now, if instead of Google and Oracle and their torts, we'd be talking about a pharmeceutical company deliberately selling expired drugs because it's profitable, or a car manufacturer delivering faulty brake systems, or a food comany dumping food to raise market-price... well, that certainly would qualify as evil in my book. Two big software vendors fighting in court over a patent is an interesting case study, an important piece of news for us in the industry... but under no circumstances it's a "good vs evil" epic battle, us Java devs on the "good" side, them the "merciless suits" on the "evil" side.

      I think that people who have no real problems in their lives tend to find reasons to uproar in the most insignificant events of daily life. I understand that "real" is a subjective measure, so what's unreal and unimportant to me, might a a very important thing in someone else's life... That's just natural. It's a fact that humans , once satisfied one level of comfort, struggle to satisfy the next. I think those investing time and effort in complaining about this kind of stuff actually have a lot of time in their hands...

      --
      Perhaps I'm trolling, perhaps I'm not.
    8. Re:Evil? by owlstead · · Score: 1

      There are many, many people using Android phones. The Android phone system is the only (relatively) open smart phone system in use. In the end, it is very likely that everybody will be using something like a smartphone. So maybe you are not looking at this deep enough.

      And there are many other things; this is stiffling innovation, abusing the law system and making a mockery of IP rights in general.

      If you are complaining that people are trying to find reasons to find uproar, I graciously disagree. They find issues that are important to them within their fields of interest. That's why we are reading Slashdot, and that why it is evil - within this specific field.

      Complaining that a lot of people have enough time on their hands? Welcome to Slashdot (but personally, I like being on Slashdot, it's a good way to enjoy myself and you cannot be productive all of the time).

    9. Re:Evil? by guybrush3pwood · · Score: 1

      Complaining that a lot of people have enough time on their hands? Welcome to Slashdot (but personally, I like being on Slashdot[...].

      I didn't complain or say that I didn't like Slashdot.

      [...]it's a good way to enjoy myself and you cannot be productive all of the time).

      Oh, so you participated in the discussion for the amusement value... We agree more than it'd seem at a first glance then, since I posted in this thread for the same reason. ;)

      Still, many people seem to feel personally under attack by this kind of things. The tone of their posts, if not their words, suggests that. I thing the term "nerd rage" applies quite well. So, I try to tune it down a notch and put it under some kind of perspective (you know, something like "don't worry, mate, it's not the end of the world"), without trying to insult or offend.

      --
      Perhaps I'm trolling, perhaps I'm not.
  36. Google Buy Oracle by freeshoes · · Score: 3, Funny

    Google should just buy Oracle, then it could develop OO etc to kill MS Office.

    1. Re:Google Buy Oracle by Anonymous Coward · · Score: 0

      As much as we all would love this...compare the total value of assets and equity and be saddened:

      Google
      Oracle

    2. Re:Google Buy Oracle by Anonymous Coward · · Score: 0

      Actually, Oracle is larger than Google...

  37. Re:To all those who saw no harm in the Sun purchas by Anonymous Coward · · Score: 0

    Oracle should never have been allowed to buy Sun. Instead it should have been liquidated (since that's what happening anyways... particularly with the high-profile Sun departures).

    And so it begins...

    So Oracle should have just been allowed to buy the Java patent/trademark/copyright portfolio without picking up the rest of the company? Seems we'd be in the same situation for even less money out of Larry's pocket.

  38. Larry has finally lost! by Anonymous Coward · · Score: 0

    Wow, Oracle is now officially a troll ... going the way of SCO ... fun for lawyers!

  39. Oracle Who? by Ubertech · · Score: 1

    they're going to become another historical footnote of computer industry stupidity if they follow this path

    --
    Be quick to listen, slow to speak, and slow to anger.
  40. Oracle Kills Java by Doc+Ruby · · Score: 2, Insightful

    Java caught on quickly largely because it was open: the language specification was published without prohibiting 3rd parties from implementing it in their own VM, etc. Copyrighting the class library API, which is half of Oracle's charges here, is a severe lockdown. Oracle's grab to control more of Java than even Sun did is going to kill the spirit of the community that cares about openness which keeps Java alive.

    Perhaps this move is why so many Sun Java people left suddenly in the past month or so. Or perhaps Oracle has even more greedy plans to own more of Java while shrinking it to an also-ran behind .Net (and its emerging Silverlight that will run everywhere Java does).

    --

    --
    make install -not war

    1. Re:Oracle Kills Java by H0p313ss · · Score: 1

      Copyrighting the class library API, which is half of Oracle's charges here, is a severe lockdown.

      Sun always held and maintained copyright, but for the most part they were a benevolent dictator. Oracle seems to not understand what they have, and what they are now in the process of losing.

      IBMs failure to close the deal with Sun will probably be considered the final nail in the coffin of open source Java.

      --
      XML is a known as a key material required to create SMD: Software of Mass Destruction
    2. Re:Oracle Kills Java by Anonymous Coward · · Score: 0

      And so Java became deprecated and increasingly irrelevant.
      Geeks everywhere rejoiced and with Java's passing; Nothing of value was lost.

    3. Re:Oracle Kills Java by Bill_the_Engineer · · Score: 1

      Java caught on quickly largely because it was open: the language specification was published without prohibiting 3rd parties from implementing it in their own VM, etc. Copyrighting the class library API, which is half of Oracle's charges here, is a severe lockdown. Oracle's grab to control more of Java than even Sun did is going to kill the spirit of the community that cares about openness which keeps Java alive.

      This lawsuit has no bearing on whether or not Java remains alive. This lawsuits deals with Google's use of "Java Technology" to create a competing VM called Dalvik which is NOT Java compatible. If anything this lawsuit signifies Oracle's willingness to defend its IP and prevent fragmentation not blessed by the JCP. This can also be viewed as Oracle taking steps to ensure the health of Java. That and Oracle's baby steps towards making JCP independent by inviting IBM to the party.

      This is not a severe lockdown. Just enforcing the terms of the Open Source License granted by Sun/Oracle on Java SE.

      --
      These comments are my own and do not necessarily reflect the views or opinions of my employer or colleagues...
    4. Re:Oracle Kills Java by Doc+Ruby · · Score: 1

      The lawsuit would cripple Android development. Android development is the biggest source of growth for Java development; meanwhile .Net is eating Java's share of the server market, while the applet market is nearly dead. If Oracle wins this lawsuit, it will help kill Java. Just filing the lawsuit raises the risk in business calculations of whether to develop in Java, so it's already helping kill Java.

      Dalvik VM competes with the JVM, but that kind of competition is also part of why Java has succeeded widely, on many platforms. Invoking IP, especially with dubious (and not even sufficiently specific) claims, to kill a competing JVM is indeed a severe lockdown. And the willingness to use the tactic in this case tells others who Oracle might want to compete with that there are extra risks in getting in that business, even when they're not really valid. Java is a language, it's an API, it's a bytecode, it's a JVM - all of which have been touted as independent of each other as developers choose, for 15 years now. That independence and openness have been key to its success, and Oracle is shutting that down.

      Killing Java isn't Oracle's plan, as Java is one of its biggest assets it bought along with Sun. But Oracle is a ruthless competitor, interested in control more than in the "coopetition" in which Sun engaged to grow Java successfully. As Google's counterclaim cites, Oracle favored the very Java developments at Google that it's now working to stop, until Oracle owned Java. It's a lockdown by definition as you agree, and it's severe by comparison to the successful "laissez faire" management of Java by Sun.

      --

      --
      make install -not war

    5. Re:Oracle Kills Java by StuartHankins · · Score: 1

      Yes. Metaphorically speaking, Sun engineers watched while the machine they created was used as a weapon against some of their friends. Shocked and disappointed I would imagine.

    6. Re:Oracle Kills Java by Anonymous Coward · · Score: 0

      Java caught on quickly largely because it was open

      No, Java caught on quickly because Sun marketed it directly to management. If this lawsuit is the beginning of the end of Java, we should all be thanking Oracle.

    7. Re:Oracle Kills Java by Doc+Ruby · · Score: 1

      Anonymous Steve Ballmer Coward, your opinion is duly noted.

      --

      --
      make install -not war

    8. Re:Oracle Kills Java by Bill_the_Engineer · · Score: 1

      The lawsuit would cripple Android development. Android development is the biggest source of growth for Java development;

      Here's the rub. Android probably doesn't deserve to exist in its current state. For all intents and purposes, Google tried to circumvent Sun/Oracle's licensing requirements by not making a byte compatible VM, however it is very evident that it's Java with an extra step of translating the byte-codes.

      Java has a healthy development base that really didn't need help from Android. I would go as far as saying Android needed Java more than Java needed Android.

      Killing Java isn't Oracle's plan, as Java is one of its biggest assets it bought along with Sun. But Oracle is a ruthless competitor, interested in control more than in the "coopetition" in which Sun engaged to grow Java successfully. As Google's counterclaim cites, Oracle favored the very Java developments at Google that it's now working to stop, until Oracle owned Java. It's a lockdown by definition as you agree, and it's severe by comparison to the successful "laissez faire" management of Java by Sun.

      Money does not magically appear from nothing. Oracle (and the previous owner Sun) did not create Java out of the pure kindness of their hearts. They made it to make money. Sun made money by selling licenses to Java ME. Google circumvented that licensing scheme by making a unauthorized version of a Mobile JVM called Dalvik. The fact that Android may increase the number of "Java developers", doesn't matter much to Oracle if it benefits Google and not them.

      You seemed to have confused Dalvik with a proper JVM and completely overlook the fact that in the desktop/server area, where the bulk of the Java programming exists, there are alternative versions of the JVM supported by a community whose assets includes source provided by Sun with a license for use in supporting Java SE. Google could have easily licensed the right to create their own mobile JVM. This would have prevented this lawsuit, and removed the needless step of translating Java byte-codes to Dalvik byte-codes. The "laissez faire" management of Java by Sun never existed, it wasn't until Google decided to violate the open source license or more accurately try to make a "clean room" version of the Mobile JVM that forced Oracle's hand. By the way, by making a so called "clean room" version of the Mobile JVM, Google did not inherit any of the licenses to use the patents granted to the users of OpenJDK.

      --
      These comments are my own and do not necessarily reflect the views or opinions of my employer or colleagues...
    9. Re:Oracle Kills Java by Compaqt · · Score: 1

      Wait, I though the Googleplex was claiming that Android isn't Java.

      So how could Oracle's suit against Android be an attack on Java?

      Brain exploding in 1, 2, 3 ...

      --
      I'm not a lawyer, but I play one on the Internet. Blog
  41. Re:You don't know what the fuck you are talking ab by udippel · · Score: 2, Insightful

    This may be as it is; but if Harmony was contaminated, so would be Android. Just using Free Software does not automatically guarantee that is was unencumbered. And maybe only by mistake (encumbered); that would not help at all.
    And 'feeding back' into a community project is totally unrelated to the potential issue of copyright violation.

    The last thing I'd like to do, was defending Oracle. But arguments need to be correct, complete, and relevant.

  42. Huh ? by boorack · · Score: 1

    It seems that you didn't program in either one of those languages. Differences in programmers' productivity are BIG. There are many languages better than Java, but none of them match the developing/maintaining/testing/refactoring capabilities of java related tools. The only tools coming close to it are their .NET clones^H^H^H^H^Hcounterparts.

  43. Um, isn't java code GPL? by coder111 · · Score: 2, Interesting

    Isn't the code for Sun's standard java library GPL along with the rest of OpenJDK? If so, it should be completely legal to copy it as much as you want.

    --Coder

    1. Re:Um, isn't java code GPL? by H0p313ss · · Score: 4, Insightful

      Isn't the code for Sun's standard java library GPL along with the rest of OpenJDK? If so, it should be completely legal to copy it as much as you want.

      Not all of Sun's Java code went into Harmony et. al. So, maybe.

      However, I am both puzzled and worried by Oracle's motivation here. It sounds to me like Oracle is actually going to kill Java by making it impossible to adopt in the name of trying to leverage the (very expensive) IP they bought along with Sun.

      Sounds like we need a new, and truly open, language and runtime for the 21st century.

      --
      XML is a known as a key material required to create SMD: Software of Mass Destruction
    2. Re:Um, isn't java code GPL? by recoiledsnake · · Score: 3, Informative

      GPL'ed code will save Google from copyright claims, not patent claims. This is the case for pre-GPLv3 license which Java is under.

      --
      This space for rent.
    3. Re:Um, isn't java code GPL? by HiThere · · Score: 2, Interesting

      Ruby? Python? D? An adaptation of Python with (optional) static typing (to allow compilation into more efficient code)? (Note, btw, the existence of Pyrex and Cython which allow the compilation of python into native code. Sometimes much more efficient native code. This isn't what I'm talking about.)

      Why bother to come up with an entirely new language? If you must, why not Go?

      As for Ada... they'd need to make some basic changes. It could be done, but they've refused to even *look* in that direction. E.g., even in the early days Ada had the specifications for an optional extension for garbage collection. It was never made standard, or even recommended. And the new Ada standard still doesn't recommend it. And literals are by default of type fixed length char array. They need to default to type "unbounded string" (which needs a better name, say "string"). Etc. Most of the changes aren't basic, but they are very important for usability. The one exception is making it easier to allocate things on the heap. That does require a more basic change. But it isn't going to happen. Neither are the other, lesser, upgrades.

      --

      I think we've pushed this "anyone can grow up to be president" thing too far.
    4. Re:Um, isn't java code GPL? by H0p313ss · · Score: 1

      Python is definitely my script language of choice. Compiled Python with static typing would kick ass.

      --
      XML is a known as a key material required to create SMD: Software of Mass Destruction
    5. Re:Um, isn't java code GPL? by H0p313ss · · Score: 2, Insightful

      Python is definitely my script language of choice. Compiled Python with static typing would kick ass.

      Except for the use of tab stops over { }... that's just plain stupid...

      --
      XML is a known as a key material required to create SMD: Software of Mass Destruction
    6. Re:Um, isn't java code GPL? by s73v3r · · Score: 1

      Isn't the purpose of Ada these days mostly to write extremely deterministic, somewhat provable code for military applications and things of that nature?

    7. Re:Um, isn't java code GPL? by s73v3r · · Score: 2, Funny

      No problem. Just put this at the top of your code:

          from future import braces

    8. Re:Um, isn't java code GPL? by Anonymous Coward · · Score: 0

      It's really not a big deal once you start actually using it. Nothing is particularly sacred about curly braces.

    9. Re:Um, isn't java code GPL? by StuartHankins · · Score: 1

      And the whole "can't end a string with a backslash" thing, which bit me as a new Python programmer. I would never have predicted that one.

    10. Re:Um, isn't java code GPL? by Anonymous Coward · · Score: 0

      Enough of that crap. Indenting is no different than {}, unless you've never actually programmed in Python.

    11. Re:Um, isn't java code GPL? by Anonymous Coward · · Score: 0

      Isn't the code for Sun's standard java library GPL along with the rest of OpenJDK? If so, it should be completely legal to copy it as much as you want.

      No. Code that is under the GPL stays under the GPL. You can use it under the terms of the GPL, but you cannot merely copy it over and then republish under a different license - not even one that is compatible with the GPL.

      Harmony is under the Apache license, not under the GPL. The Apache license is not even compatible with the GPL. Simply copying any GPL code into that is illegal. Whereas you can copy over GPLv2 code into OpenJDK (provided you fulfil the other requirements of the GPLv2).

    12. Re:Um, isn't java code GPL? by aix+tom · · Score: 1

      ADA would be an interesting development, since Oracle 'borrowed" much of it's procedural PL/SQL language syntax from ADA.

    13. Re:Um, isn't java code GPL? by samjam · · Score: 1

      Maybe, but it is a big deal if it stops people actually using it.

      And it actually does stop people using it.

      You say curly braces aren't sacred, but it seems tab-stops are sacred, and even though they are the wart that stopped python from ruling the world, they remain.

      Perl 6 will be out before python drops tab-stops. And duke-nukem. The Duke uses perl 6.

    14. Re:Um, isn't java code GPL? by GooberToo · · Score: 1

      Let's not forget the JIT efforts for Unladen Swallow and PyPy are coming along nicely. And then there are projects like Snake Skin. Not to mention a plethora of other projects like pyrex and cython which support a python-like language for extensions. Python also has the advantage of being open, readily available, supports multiple programming paradigms, has a rich standard library, and is extremely easy to extend with a variety of technologies.

      If you want static typing, do checkout Snake Skin.

    15. Re:Um, isn't java code GPL? by H0p313ss · · Score: 0, Offtopic
      40% Troll 40% Insightful 20% Flamebait

      Looks like I hurt someone's feelings... but 40% of moderators agree *sigh*

      --
      XML is a known as a key material required to create SMD: Software of Mass Destruction
    16. Re:Um, isn't java code GPL? by AuMatar · · Score: 1, Flamebait

      We have one. It has the side benefits of being faster than Java,not having annoying bugs like garbage collection, and being applicable on anything from embedded devices to PCs. It's called C++, and the smart people never stopped using it.

      --
      I still have more fans than freaks. WTF is wrong with you people?
    17. Re:Um, isn't java code GPL? by waddleman · · Score: 1

      That is the current main use of Ada, but commercial software could benefit from some of those good practices.

    18. Re:Um, isn't java code GPL? by Anonymous Coward · · Score: 0

      By "extremely" I assume you be "hard real-time" (and drop the "somewhat") and yes it is, but Ada is a general purpose language that can be used for many things.

    19. Re:Um, isn't java code GPL? by ultranova · · Score: 1

      Sounds like we need a new, and truly open, language and runtime for the 21st century.

      Unfortunately, to replace Java it has to have mandatory automatic memory management, since anything else will allow security to breached trivially, yet as has been demonstrated here many times over Man Men Manage Memory Manually, so such features will be limited to low-performance scripting languages. Community can't produce anything that won't turn into a glorified assembler or seventy layers of leaky abstractions - or both, in the case of C++ - and companies can't produce anything that'll stay open, as this very mess made very clear. And let's not forget how long it took for Java to gain performance.

      Basically, anyone who can program a well-performing virtual machine with mandatory bounds checking and automated memory management can also do without it, so the only way to get it done is have a company pay for it, yet that runs the risk of another Oracle coming along.

      --

      Forget magic. Any technology distinguishable from divine power is insufficiently advanced.

    20. Re:Um, isn't java code GPL? by i_ate_god · · Score: 1

      amen brother. Python has become my scripting language of choice, but its syntax sometimes infuriates me

      --
      I'm god, but it's a bit of a drag really...
    21. Re:Um, isn't java code GPL? by ultranova · · Score: 1

      We have one. It has the side benefits of being faster than Java,not having annoying bugs like garbage collection, and being applicable on anything from embedded devices to PCs. It's called C++, and the smart people never stopped using it.

      C++ is a very nice assembler preprocessor macro system, but it's hardly a replacement for a mid-level language like Java. And, frankly, trying to pretend that PCs with gigahertz multicore processors, gigabytes of memory, terabytes of storage and an auxiliary graphical processing unit face the same programming problems than embedded devices simply results in a poor fit for both.

      --

      Forget magic. Any technology distinguishable from divine power is insufficiently advanced.

    22. Re:Um, isn't java code GPL? by Anonymous Coward · · Score: 0

      It's "Ada" dagnabit!

    23. Re:Um, isn't java code GPL? by zig007 · · Score: 1

      Except for the use of tab stops over { }... that's just plain stupid...

      Umm, no, that's actually plain brilliant. It is the next logical step.

      The only reason not to use indent would be if one for some reason don't want to indent code.
      Since everybody in their right mind does that anyway, and consider it EXTREMELY bad form not to, it is already there. So why the hell use {} or begin..end or whatever?

      Also, it is really easy to get used to. And as a bonus, you don't have to go kill idiots who don't indent properly.
      Try it out properly, you'll love it.

      --
      Baboons are cute.
    24. Re:Um, isn't java code GPL? by HaZardman27 · · Score: 1

      That's very possible, considering Ada's creation was contracted by the DoD.

      --
      Apparently wizard is not a legitimate career path, so I chose programmer instead.
    25. Re:Um, isn't java code GPL? by dup_account · · Score: 0

      OMG! Everyone give this guy all your moderator points up. I started to read a book on python, returned it before the end of the 1st chapter because of that.

      The other thing to understand, smaller code is not necessarily less complex. We need a reasonable middle ground language. Scala with out all the shrinking coding style?

    26. Re:Um, isn't java code GPL? by Blakey+Rat · · Score: 0, Troll

      There's always Mono, if you could get the community to dial-down the frothing rage a bit.

    27. Re:Um, isn't java code GPL? by julesh · · Score: 1

      Not all of Sun's Java code went into Harmony et. al. So, maybe.

      The only noteworthy exceptions that I'm aware of are JavaME and some parts of AWT. AIUI, Android implements neither of these APIs.

    28. Re:Um, isn't java code GPL? by H0p313ss · · Score: 1

      Try it out properly, you'll love it.

      I've written thousands of lines of python, one of the programs I'm most proud of was pure OO python. But the tab stop shit just drives me barmy... much the same way that java iterator syntax makes me want to throw things. Doesn't stop me from using it, just a blemish on an otherwise good canvad.

      --
      XML is a known as a key material required to create SMD: Software of Mass Destruction
    29. Re:Um, isn't java code GPL? by Anonymous Coward · · Score: 0

      Bash's esac, fi, and od or BASIC's NEXT, LOOP, and ENDIF are better than curly braces. You (and the compiler) immediately know if the loops and ifs are properly nested, without needing comments like /* end if */ as reminders. You don't even need indenting at all with those languages. Python's tab-spacing is still nicer than curly braces because it, like the keywords, forces the programmer to properly delimit blocks of code. Since most people indent C and Java anyway (nothing worse than reading unindented C with multiple curly braces on one line), the curly braces are just an annoyance. The only benefit to using curly braces or required semicolons (not like Ruby) is for computers that use something other than LF or CRLF for newline.

    30. Re:Um, isn't java code GPL? by ultranova · · Score: 1, Insightful

      There's always Mono, if you could get the community to dial-down the frothing rage a bit.

      Mono is a C#/.NET runtime, and thus connected to Microsoft, making it even more of a liability than Java.

      --

      Forget magic. Any technology distinguishable from divine power is insufficiently advanced.

    31. Re:Um, isn't java code GPL? by Movi · · Score: 1

      not a chance

    32. Re:Um, isn't java code GPL? by Sarten-X · · Score: 1

      Sounds like we need a new, and truly open, language and runtime for the 21st century.

      You mean like Parrot, which already has implementations of several languages?

      --
      You do not have a moral or legal right to do absolutely anything you want.
    33. Re:Um, isn't java code GPL? by Haxamanish · · Score: 1

      Python is definitely my script language of choice. Compiled Python with static typing would kick ass.

      Except for the use of tab stops over { }... that's just plain stupid...

      No, it is just a matter of taste.

      I would personally rather like Python to replace "=" by ":=" and "==" by "=" over changing the tabs into braces.

      Nothing stupid about having another taste. If you really have a problem with such details, just fork it.

    34. Re:Um, isn't java code GPL? by shutdown+-p+now · · Score: 1, Interesting

      Mono is a C#/.NET runtime, and thus connected to Microsoft, making it even more of a liability than Java.

      The good thing about C# and CLR in that perspective is that they are covered by the Open Specification Promise, which is essentially a patent waiver from MS. You don't get it for the entire .NET, but you do get it for the language itself, and for the most fundamental classes. It could be built from there, even in a direction completely different from (and incompatible with) .NET if need be.

    35. Re:Um, isn't java code GPL? by Compaqt · · Score: 1

      Well, Android mangled (in Sun's) eyes Java. While Sun grants a patent license for full, conforming implementations of Java, it doesn't do so for "do your own thang" versions.

      The difference now being that Oracle isn't a pussycat like Sun is (was).

      --
      I'm not a lawyer, but I play one on the Internet. Blog
    36. Re:Um, isn't java code GPL? by H0p313ss · · Score: 1

      Sounds like we need a new, and truly open, language and runtime for the 21st century.

      You mean like Parrot, which already has implementations of several languages?

      No. Parrot is neither a language nor a runtime, it is just a VM.

      Java is all three, the language, the vm and the class library.

      However, parrot might be an interesting vm target for a new language and runtime.

      --
      XML is a known as a key material required to create SMD: Software of Mass Destruction
    37. Re:Um, isn't java code GPL? by H0p313ss · · Score: 1

      There's always Mono, if you could get the community to dial-down the frothing rage a bit.

      Mono is a C#/.NET runtime, and thus connected to Microsoft, making it even more of a liability than Java.

      Which is sad, C# is pretty sharp...

      --
      XML is a known as a key material required to create SMD: Software of Mass Destruction
    38. Re:Um, isn't java code GPL? by Sarten-X · · Score: 1

      The project also includes compilers for many languages, including Python, Ruby, and Perl. Not sure if the class libraries are a part of the project's scope, as they're pretty language-specific.

      --
      You do not have a moral or legal right to do absolutely anything you want.
    39. Re:Um, isn't java code GPL? by leenks · · Score: 1

      Clearly you code using a text editor, rather than a programmers editor or other environment that fully understands the language you are writing.

      Comments in code such as /* end if */ drive me batshit crazy, and they make the code impossible to maintain and refactor, and they just make everything much harder to read.

      And yes, you need indenting. Your brain naturally segments things you see - we even read by recognising blocks. Removing the indentation just makes that information harder to understand

      I don't see how tabs vs braces makes any difference to properly delimiting blocks of code either. Both force the programmer to do the same thing - it is just the presentation that is slightly different. In any case, if I want to see my code all on one line because it fits my braille reader better, why shouldn't I?

    40. Re:Um, isn't java code GPL? by leenks · · Score: 1

      And have to maintain your fork, force everyone else to install another (likely bug ridden, slowly maintained) version of the language if they want to run your tiny number of programs, and increase the likelihood of subtle errors due to the minor inconsistencies between the language programmers know well and your fringe fork. No thanks.

    41. Re:Um, isn't java code GPL? by JSlope · · Score: 1

      I understand your frustration, I've encountered bugs linked to indentation in python, but all this can be solved with a good IDE (Like JetBrains IDE for python) Personally I like python because of this indentation over {} it makes code look compacter and enforce a good structure into code.

      --
      ResoMail - the alternative secure e-mail system
    42. Re:Um, isn't java code GPL? by MichaelSmith · · Score: 1

      However, I am both puzzled and worried by Oracle's motivation here. It sounds to me like Oracle is actually going to kill Java by making it impossible to adopt in the name of trying to leverage the (very expensive) IP they bought along with Sun.

      A bird in the hand is worth two in the bush.

    43. Re:Um, isn't java code GPL? by MichaelSmith · · Score: 1

      extremely deterministic, somewhat provable code

      Oh if only it were so. Its just a programming language. Closer to java than to C. No better or worse than the others.

    44. Re:Um, isn't java code GPL? by Samah · · Score: 1

      Lua! :D

      --
      Homonyms are fun!
      You're driving your car, but they're riding their bikes there.
    45. Re:Um, isn't java code GPL? by maxume · · Score: 1

      Sure you can end a string with a backslash. You just have to escape it, so it ends up looking like "\\". But you have to escape backslashes in lots of places in Python, it's the escape character.

      --
      Nerd rage is the funniest rage.
    46. Re:Um, isn't java code GPL? by StuartHankins · · Score: 1
    47. Re:Um, isn't java code GPL? by ultranova · · Score: 1, Insightful

      The good thing about C# and CLR in that perspective is that they are covered by the Open Specification Promise, which is essentially a patent waiver from MS.

      And you actually believe them?

      --

      Forget magic. Any technology distinguishable from divine power is insufficiently advanced.

    48. Re:Um, isn't java code GPL? by Anonymous Coward · · Score: 0

      Ada's creation was contracted for military use. It's used in mission-critical domains for applications that are extremely robust and do not fail. By mission critical, we're talking things like Aviation, Aerospace, and Defense Work.

      Ada is more similar to Pascal and Modula-2 than C/Java/C#/C++.

      Ada was the first standardized Object-Oriented Programming Language.

      It's actually a beautiful language to work with, but the compilers are either GPL'd or cost more than most people are willing to shell out. It's not very useful for developing desktop or mobile applications because there simply aren't enough quality bindings available.

      No one wants to go back to writing code and using Raw Win32 API, for example, when they can just use C or C++ and have the examples/explanations in the documentation actually match the programming language they're using.

    49. Re:Um, isn't java code GPL? by maxume · · Score: 1

      Ok, but "\\" is a perfectly valid Python string that ends in a backslash. The real complaint is that the Python parser will not interpret r'\' as a valid raw string.

      --
      Nerd rage is the funniest rage.
    50. Re:Um, isn't java code GPL? by Kjella · · Score: 1

      In reference to what the grandparent said, I think so because he included this:

      You don't get it for the entire .NET, but you do get it for the language itself, and for the most fundamental classes.

      This is the "extend" part of the EEE strategy in reverse. You get free access to some subset of functionality (bait) but they're pretty sure they can move you to the full .NET (hook). You don't kill the bait, you kill anything that tries to replace the hook.

      --
      Live today, because you never know what tomorrow brings
    51. Re:Um, isn't java code GPL? by tonique · · Score: 1

      Sounds like we need a new, and truly open, language and runtime for the 21st century.

      You could try perl, and do everything with one-liners.

    52. Re:Um, isn't java code GPL? by shutdown+-p+now · · Score: 1

      It's not a matter of "belief". It's a legally binding document. It's not any different from IBM's Interoperability Specifications Pledge, or Sun/Oracle OpenDocument Patent Statement.

    53. Re:Um, isn't java code GPL? by MichaelSmith · · Score: 1

      By mission critical, we're talking things like Aviation

      Yeah I know. I work with Ada in exactly that environment. Its just another language where shit can happen. Nothing really special. I would say there are fewer opportunities to get yourself badly into trouble than C or C++. About the same as java.

    54. Re:Um, isn't java code GPL? by other-different-nick · · Score: 1

      Isn't the code for Sun's standard java library GPL along with the rest of OpenJDK?

      This question assumes that it makes sense to copyright an API. I don't think that it does. Or are you saying that Harmony might have directly copied Sun's implementation? If so, I'll have to wait for more details from the trial.

    55. Re:Um, isn't java code GPL? by Billly+Gates · · Score: 1

      Whats the point in using mono if you don't have .NET?

      Java is used because it has 200,000 methods to chose from and runs everywhere with frameworks that can do anything. There are hundreds of academic and semi professional languages out there. C# is just that without a single library. Useless.

      I bet any alternative language would start taking over if it had 200,000 fuctions/methods. .NET is the only other thing that comes close which is why it is used.

    56. Re:Um, isn't java code GPL? by shutdown+-p+now · · Score: 1

      Java is used because it has 200,000 methods to chose from and runs everywhere with frameworks that can do anything. There are hundreds of academic and semi professional languages out there. C# is just that without a single library. Useless.

      We're not talking about "without a single library" here though. CLI spec is also covered under OSP, and it includes the core libraries - collections, I/O, networking, XML parsing, that kind of thing. It doesn't cover UI, but you can replace that with, say, Gtk# to fill the void (I'm ignoring the .NET compatibility angle here, and just looking at it from the Java replacement perspective). Same with most other stuff.

      Yeah, .NET/Mono certainly still won't compare with Java as it is if you rip out all the libraries that do not have a patent waiver... but then GG...P was talking about a brand new replacement anyway, assuming that Java is now tainted. With C# and CLR, taking only the patent-safe set, and then adding all the FOSS .NET libraries out there (NHibernate etc), you get some solid base to build on.

  44. Then again, so was Pystar v Apple by Anonymous Coward · · Score: 0

    Then again, so was Pystar v Apple. But that didn't appear to bother her.

  45. injunction by Joebert · · Score: 1

    File an injunction preventing Google from continued use of the code. Code was in use before Oracle took control of the code base, no damages are awarded.

    --
    Wanna fight ? Bend over, stick your head up your ass, and fight for air.
  46. Re:Dangerous claim - yes but by Anonymous Coward · · Score: 0

    Yes, but, what Oracle is trying to lay the groundwork for in the courts is that Google's Android code is based on SUN's Java implementation directly. If they can prove that, then all the patents that Oracle inherited from SUN when they bought them out will come into play. From their perspective, whether or not the code is open sourced doesn't matter to them, they have some patents to troll now and they're going to jump out from under the bridge at everyone. Google is just the first that is going to go down for this if Oracle can convince the courts patents > open source.

    This is bad news. And, it means everyone who is doing Java right now should start migrating away. Else face the music when Oracle comes a calling demanding you pay them or face them in court. That's assuming Google loses their case.

    Also, Linux is now under attack by Microsoft, for more patent trolling. We may be seeing the end of open source as we know it. These companies have a lot of time, money and motive to completely wipe open source projects off the face of the Earth so people have to buy their own products.

    *sad face*

  47. What is Oracle trying to accomplish? by H0p313ss · · Score: 1

    I am both puzzled and worried by Oracle's motivation here. It sounds to me like Oracle is actually going to kill Java by making it impossible to adopt in the name of trying to leverage the (very expensive) IP they bought along with Sun.

    Sounds like we need a new, and truly open, language and runtime for the 21st century.

    --
    XML is a known as a key material required to create SMD: Software of Mass Destruction
    1. Re:What is Oracle trying to accomplish? by Compaqt · · Score: 1

      You know, Google can't have it both ways.

      It can't claim to be made of sugar and spice and everything nice, and at the same time cling to legalistic interpretations to avoid paying royalties or license fees to Sun for mobile Java (which was never free).

      You know how a lot of companies have free and "pro" versions of their open-source code. Often the "pro" version is nothing more than a SKU to allow devs to have corporate accounting pay money to open-source companies.

      So it's all the more puzzling when Google thought it would be a good idea to stiff Sun by coming up with a chimera Java implementation to avoid royalties. Doesn't friendship run both ways? Why is Sun supposed to be loyal to the "Do no Evil" Google, and Google doesn't have to pay a few cents (figuratively) to Sun?

      Why does it hurt Oracle/Sun's rep and goodwill to prevent Google from fragmenting Java, while it does no harm to Google to fragment Java and not pay its fair share for Java?

      --
      I'm not a lawyer, but I play one on the Internet. Blog
  48. Re:To all those who saw no harm in the Sun purchas by Anonymous Coward · · Score: 0

    Makes me chuckle when I recall all those loud mouthed idiots here on Slashdot (and other online forums) chanting for US to boycott EU stuff because regulatory entities in the EU were not blindly saying yes to the Oracle/Sun deal. Yes, indeed, the acquisition of Sun by Oracle has turned out splendid!

  49. I hate ora(c)l(e) sex by Anonymous Coward · · Score: 0

    There was a reason that open source, I mean closed source, java left a funny taste in my mouth. You're free to use it except when we say that you're not.

  50. Here's Oracle's Example by ink · · Score: 5, Informative
    --
    The wheel is turning, but the hamster is dead.
    1. Re:Here's Oracle's Example by UnknowingFool · · Score: 3, Insightful
      From my non-expert analysis.
      • The variable declarations are almost identical.
        There are a few minor differences but the names are exact. This is troubling unless the specifications list or name them. However, the variable declarations may not be protected elements.
      • The method names are exact.
        This isn't surprising if the both pieces of code are trying to do the same thing.
      • The method parameters are not exact.
        The types are the same but the names are not exact.
      • The structure is similar but not exact.
        There are slight differences mostly due to style of the programmer which is to be expected in clean room implementations.. Android versions sometimes squeezed code into one line where Oracle's version spread it to multiple lines. Android's if statements sometimes used braces {} even if it was not required whereas the Oracle version did not. Android did not always use the same structure (i.e. while instead of do while and for iterator instead of while {iterator.hasNext()}

      Except the private variables in the beginning, I would lean towards clean room implementation. There is a lot of line by line exactness however they do not appear to be nontrivial parts of the code and there is enough slight differences to where it could be explained by clean room implementations.

      --
      Well, there's spam egg sausage and spam, that's not got much spam in it.
    2. Re:Here's Oracle's Example by MrBandersnatch · · Score: 1

      Interesting - that's almost without doubt a copy of the Sun versions with slight changes. However that code is released under the GNU license and both versions of the exhibit code seem to be sans any header information hence its difficult to know (sorry I'm not interested enough to go digging out the google/android version to see if the GNU headers are intact) if there is any COPYRIGHT violation going on here. As proof of PATENT violation though this is totally useless and appears to be a case of Oracle trying to cloud the issue maybe.

    3. Re:Here's Oracle's Example by ink · · Score: 1

      I agree with you. The nice way that the fields match up is troubling. Perhaps the person who wrote this bit for Harmony copied Sun's class header and then wrote the code -- but that is still a copyright violation. Perhaps Apache can track down who wrote it for an opinion/explanation? I'm hoping that Oracle is just being obtuse.

      --
      The wheel is turning, but the hamster is dead.
    4. Re:Here's Oracle's Example by ink · · Score: 2, Informative

      Harmony is not GPL.

      --
      The wheel is turning, but the hamster is dead.
    5. Re:Here's Oracle's Example by UnknowingFool · · Score: 1

      Something else that bothers me in retrospect but isn't clear: Order. It could be that the exhibit just ordered the parts of the code together for comparison. Since the exhibit is missing the line numbers, we don't know. However if you include them and they were not in the same order, that would lend itself to clean room implementation. If they were in the same order, that would be highly suspicious.

      --
      Well, there's spam egg sausage and spam, that's not got much spam in it.
    6. Re:Here's Oracle's Example by Anonymous Coward · · Score: 0

      Well, that class was released under a more liberal license.

    7. Re:Here's Oracle's Example by Anonymous Coward · · Score: 0

      The examples above clearly show that the Google code is a copy of the java code. This part of the code is not an API interface, but an implementation of an API. The two implementations are identical. Only things changed are four local variable names, from original code's meaningful names to meaningless generic names. Clearly, whoever copied this code had only superficial understanding of how original code worked, and could only do some cosmetic change to the code. What a shame!

      Technically, I would say Orhttp://developers.slashdot.org/story/10/10/28/1424247/Oracle-Claims-Google-Directly-Copied-Our-Java-Code#acle should win this case...

    8. Re:Here's Oracle's Example by Fnkmaster · · Score: 1

      Agreed. Also, this is all from exactly one source code file. It does appear that a list of variable names in one file may have been copied inappropriately from the Sun JDK source code.

      Except, that according to the full diff posted here of the two files in question, there are several of those fields specifically required by an RFC. And the actual diff shows other minor differences that don't appear in the examples given in the court filing. If this is the only such example, I'd be inclined to write it off as a reimplmentation. If there are lots of examples of files that are this similar, I'd be more inclined to believe some of them were inappropriately copied from the JDK source.

    9. Re:Here's Oracle's Example by jbengt · · Score: 1

      I only looked at the zdnet example above, but I don't see anything copyrightable in what was allegedly copied. (Functionality is not copyrightable, only expression, and if there are few ways of expressing something, such as the names and types of required interfaces, then the expression is not considered copyrightable)
      IANAL, YMMV, etc.

    10. Re:Here's Oracle's Example by Homburg · · Score: 2, Informative

      The two implementations are identical.

      No, they aren't. There frequent minor differences - the Android code, for instance tends to prefer "for" over "while" loops, some of the Sun methods have a single return statement where the Android code has multiple returns, and a few other things. Given how straightforward the functionality of the class in question is, these kinds of differences are strong evidence that the implementation was made independently.

    11. Re:Here's Oracle's Example by dgriff · · Score: 1

      Except the private variables in the beginning, I would lean towards clean room implementation.

      Absolutely no way. Even a quick scan of the code shows it is clearly a copy with a pretty poor attempt at cosmetic changes to disguise the fact. Take a look at the method getPolicyNodesExpectedHelper. This is a private method, by definition not part of the API. And yet there it is almost identical in structure in both copies. The Android version cleverly changes the name of the parameter depth to i and matchAny to flag but that's about it. Good luck with defending that in court!

    12. Re:Here's Oracle's Example by Anonymous Coward · · Score: 0

      I have to say looking at the examples I think it would be quite difficult to argue that it was a cleanroom implementation, for example, if you look at the comparison of the method prune
      Sun Impl
      void prune(int depth) {
                      if (isImmutable)
                              throw new IllegalStateException("PolicyNode is immutable");
                      if (mChildren.size() == 0)
                              return;
                      Iterator it = mChildren.iterator();
                      while (it.hasNext()) {
                              PolicyNodeImpl node = (PolicyNodeImpl) it.next();
                              node.prune(depth);
                              if ((node.mChildren.size() == 0) && (depth > mDepth + 1))
                                      it.remove();
                      }
              }

      Google Impl
      void prune(int i) {
                      if(isImmutable)
                              throw new IllegalStateException("PolicyNode is immutable");
                      if(mChildren.size() == 0)
                              return;
                      Iterator iterator = mChildren.iterator();
                      do {
                              if(!iterator.hasNext()) break;
                              PolicyNodeImpl policynodeimpl = (PolicyNodeImpl)iterator.next();
                              policynodeimpl.prune(i);
                              if(policynodeimpl.mChildren.size() == 0 && i > mDepth + 1)
                                      iterator.remove();
                      } while(true);
              }

      If you look at the two side by side you can see that they do appear to be essentially the same. In fact you would have to wonder why google went for the do..while loop rather than just using the while loop as it has meant that they had to include that 'if(!iterator.hasNext()) break;' line 'cluttering' their implementation.

    13. Re:Here's Oracle's Example by julesh · · Score: 1

      From my non-expert analysis.

      • The variable declarations are almost identical.

        There are a few minor differences but the names are exact. This is troubling unless the specifications list or name them. However, the variable declarations may not be protected elements.

      The names of fields, even private ones, are effectively part of the public API and are required to be kept the same for complete compatibility. You can get access to those private fields from your own code by using the reflection API. This capability may be used by serialization and deserialization code, so it is important to maintain such compatibility.

      The method names are exact.

      This isn't surprising if the both pieces of code are trying to do the same thing.

      Not only are they trying to do the same thing; they're a public API that has been reimplemented. If they were not exact duplicates, it wouldn't work.

      The method parameters are not exact.

      The types are the same but the names are not exact.

      Obviously the types must be the same for the same reason the names must be the same. Parameter names are not part of the public API; there's no way to determine what they are in a given implementation (even using reflection).

      The structure is similar but not exact.

      There are slight differences mostly due to style of the programmer which is to be expected in clean room implementations.. Android versions sometimes squeezed code into one line where Oracle's version spread it to multiple lines. Android's if statements sometimes used braces {} even if it was not required whereas the Oracle version did not. Android did not always use the same structure (i.e. while instead of do while and for iterator instead of while {iterator.hasNext()}

      Yes; plus the Android version avoids field initializers in favour of initializing in the constructor. These aren't substantial changes, but then the class presented is an extremely simple one in which there is little if any room for innovation. The most damning thing is the order of initializations in the constructor being the same, but then other than the "isImmutable" flag both versions initialize the fields in order of declaration, and that order is copied into the output class file and could therefore reasonably be considered part of the public API of the class.

      Except the private variables in the beginning, I would lean towards clean room implementation. There is a lot of line by line exactness however they do not appear to be nontrivial parts of the code and there is enough slight differences to where it could be explained by clean room implementations.

      As I say, the private fields are actually part of the public API. They must keep the same names for serialization to work correctly. One can imagine similar situations where they must also keep the same order.

      (And, for reference, I speak as somebody who has in the past implemented a Java subset in a clean room environment. The private field name thing bit me quite hard, and I had to go back and make a lot of changes to get stuff to work that I hadn't expected to depend on what is a supposedly private implementation detail.)

    14. Re:Here's Oracle's Example by Djofulinn · · Score: 1
      About half of the variable names are almost directly from RFC 3280, page 67:
      1. (1) The valid_policy ...
      2. (2) The qualifier_set ...
      3. (3) The criticality_indicator ...
      4. (4) The expected_policy_set ...

      http://www.ietf.org/rfc/rfc3280.txt The camelcase and prefix 'm' are not that far fetched. Variables named 'parent' and 'children' seem to make sense. Only mOriginalExpectedPolicySet seems troubling to me.

    15. Re:Here's Oracle's Example by shutdown+-p+now · · Score: 1

      There is one thing that really smells about Android code (or what is claimed to be it) in that screenshot, and that's parameter names:

      - PolicyNodeImpl policynodeimpl
      - Set set
      - boolean flag
      - Set set1
      - boolean flag1

      You know what it reminds me? Decompiler output. Those things are the ones which would name boolean variables "flag", "flag1" etc, for the lack of original names.

      Of course, it could just as well be that the code in the screenshot was obtained from the decompiler by creator of said screenshot. Which doesn't make sense, since it's open source... but then the original Java is as well, so neither would Google (or Android Inc) have any reason to use a decompiler.

      Anyway, something that might be worth following up on.

    16. Re:Here's Oracle's Example by shutdown+-p+now · · Score: 3, Interesting

      Of course, it could just as well be that the code in the screenshot was obtained from the decompiler by creator of said screenshot. Which doesn't make sense, since it's open source... but then the original Java is as well, so neither would Google (or Android Inc) have any reason to use a decompiler.

      Oh, so it looks like there is an explanation for that, actually. The class in question is not one of the public Java class library APIs, but rather an implementation detail of Sun JRE. So, apparently, its source code was not available until Sun went truly OSS with OpenJDK. And the presence of that file in Android predates OpenJDK. Which gives some credence to "someone at Google or Android Inc used a decompiler" theory.

      It would also explain the various minor and seemingly random differences in the code, such as bracing, or the use of "while" vs "for" - the latter is an example of detail which gets lost in Java bytecode, and cannot be fully reconstructed - the decompiler would have to guess. Here's an example from Oracle's submission. The original code looked like this:

      private void getPolicyNodes(int depth, Set set) {
              if (mDepth == depth) {
                  set.add(this);
              } else {
                  Iterator it = mChildren.iterator();
                  while (it.hasNext()) {
                      PolicyNodeImpl node = (PolicyNodeImpl) it.next();
        node.getPolicyNodes(depth, set);
                  }
              }
          }

      As written, this while-loop is the stock Java pattern for the use of iterators prior to the introduction of "collection for" in Java 5. Now look at corresponding Android code:

      private void getPolicyNodes(int i, Set set) {
              if(mDepth == i) {
                  set.add(this);
              } else {
                  PolicyNodeImpl policynodeimpl;
                  for(Iterator iterator = mChildren.iterator();
      iterator.hasNext(); policynodeimpl.getPolicyNodes(i, set))
                      policynodeimpl = (PolicyNodeImpl)iterator.next();
              }
          }

      If this for-loop sounds weird - especially its increment step - it's because it is. No-one actually writes code like that - it's a big no-no for readability.

      But if you look closely, it's exactly equivalent to the while-loop above! It's what you'd get if you mechanically place the immediately preceding statement of the while-loop as the initializer in the for-loop, and then place the trailing statement of the loop body as the for-step.

      Or - alternatively - this is what would happen if a decompiler would look at the bytecode produced from the for-loop (which boils down to if/goto on bytecode level), and said decompiler would have some heuristics in it to try to figure out whether it was a for-loop. Looks like in this case the heuristics is really simple, so if it can be written as a for-loop, that's what the decompiler does.

      If you look around that code, you'll notice that the same pattern of shoehorning code into for-loops in strange ways - readily identifiable by inconsequential statement in for-loop increment steps - is all over the code. QED.

    17. Re:Here's Oracle's Example by ink · · Score: 2, Interesting

      More corroboration:

      private static final String ANY_POLICY = "2.5.29.32.0";

      Skipping down...

      if(s.equals("2.5.29.32.0"))

      Skipping down...

      if(mExpectedPolicySet.contains("2.5.29.32.0"))

      Why would anyone do that?

      --
      The wheel is turning, but the hamster is dead.
    18. Re:Here's Oracle's Example by shutdown+-p+now · · Score: 1

      A nice catch. My thoughts on this: when a static final field is used within the same class where it's declared, it's effectively a compile-time constant (this isn't true when you reference a static final from another class, since there someone can later substitute a new version of that class with a different value). So, when it's referenced, it's faster to replace it with the actual literal it represents - a lossy transformation which a decompiler wouldn't be able to reverse.

    19. Re:Here's Oracle's Example by Alef · · Score: 1

      It looks very much like decompiled code. If I recall correctly, all member variable names would be available in the compiled Java class file, while the method argument names would not. In the Android version, all these arguments have generic names derived from the type (for instance: Set set, Set set1), as would be expected if the code were auto-generated from a compiled file.

      Or if I put it like this: The Android version matches exactly what I would expect a decompiler to generate, given a compiled version of the Java code.

    20. Re:Here's Oracle's Example by suutar · · Score: 1

      The exhibit specifically states that spacing was adjusted to enhance similarity; I would hope they'd mention if they reordered it as well, otherwise they're going to get roasted for that. But the local variables all having the same names seems quite suspicious to me.

    21. Re:Here's Oracle's Example by Anonymous Coward · · Score: 0

      It's a decompile of the code. I've seen quite a few decompiles (and compared them with the original source) since where I work, customers are sometimes decompiling our code.

      You can tell by the different, more generic variable names. The moving of a initialization into the constructor. And things otherwise being structurally similar. Oracle's reformatting of whitespace actually obfuscates this fact since it's even easier to tell by the spacing patterns of decompiled code.

      I guess I'm just not sure if Oracle decompiled Android code to do the comparison or if the Android developers decompiled the Oracle code and used that source.

    22. Re:Here's Oracle's Example by Anonymous Coward · · Score: 0

      This looks very much like the style of code that would be generated by a decompiler. The class level fields are named correctly because they are part of the compiled code. The variable names have auto-generated names that are based on the type names because they are not encoded in the compiled class.

    23. Re:Here's Oracle's Example by renrutal · · Score: 1
      I've been paying my bills for 3 years developing in Java, and many more years programming at all, I don't know if this counts as an expert analysis or not, I don't care.
      • Examining Exhibit J, I believe the Android implementation was copy-pasted from Sun's. In fact, it was a pretty lousy, newbie-ish job trying to mask it.
        Just looking at the bad parameters and local variable names makes me want to punch the idiot who named them. And what's with all the magic numbers hard-coded? On the other hand, I praise the Sun developers for their implementation.
        About the iteration structures, I also prefer using the for iterator instead of a while structure, it makes more sense when you want to scope the variable. Unfortunately the structure becomes a bit top-heavy with all the inlining.
      • Examining Exhibit I, I'd first ask what is the problem. API documentations should be one and the same, it's a standardization FFS! The only strange thing I find with that Javadoc, is why java.security.Security is a java class, and not a java interface.

      You could argue that the class design is really trivial, and how two different implementation could be identical under the KISS principle, but it's really hard to believe it's a clean room implementation. It's a bastardized version of Sun's code.

    24. Re:Here's Oracle's Example by Anonymous Coward · · Score: 0

      It looks the same to the common person but there are few details there that make it look like a clean room implementation. You can definitely see that Android developers were under time pressure and had no time to clean up the code. If they would have done that, the code would've looked a lot closer to Sun's. :)

      Oracle is trying to pull a SCO here.

    25. Re:Here's Oracle's Example by Anonymous Coward · · Score: 0

      Those are not variable declarations, but private data member declarations for a class.

      I don't know if it's the case with Java, but in C++ you need to declare all members in the same order and use exactly the same types and names to achieve binary compatibility. If the same applies to Java, then member names and types (and order) are part of the interface (even if delcared "private") and thus are required to be there as they are.

    26. Re:Here's Oracle's Example by Sesostris+III · · Score: 1

      Except the private variables in the beginning, I would lean towards clean room implementation.

      Interestingly the first private variable doesn't seem to be used in the Android code. In-line strings (bad!) are used instead.

      --
      You never know what is enough unless you know what is more than enough. - Blake
    27. Re:Here's Oracle's Example by Anonymous Coward · · Score: 0

      some of the differences smells of artificially inserted afterward.

      the int prune() method, for example:

      android changes a while(it.hasNext()) in a very contrived do while(true) with a break within, the latter being a very funny way of doing a standard iterable loop, it seems artificially altered just for the sake of it

    28. Re:Here's Oracle's Example by CrazyBusError · · Score: 2, Informative

      A little more here, sadly: http://www.reddit.com/r/programming/comments/dxmvr/oracle_google_directly_copied_our_java_code/c13qfov

      Upshot: Decompile the code with JAD and it's identical. It looks like someone screwed up pretty badly in this instance.

      --
      -Never argue with an idiot. They drag you down to their level, then beat you with experience-
    29. Re:Here's Oracle's Example by Kjella · · Score: 1

      The variable declarations are almost identical.
      There are a few minor differences but the names are exact. This is troubling unless the specifications list or name them. However, the variable declarations may not be protected elements.

      Well if you look at the original Sun source:

            59 // the 4 fields specified by RFC 3280
            60 private String mValidPolicy;
            61 private HashSet mQualifierSet;
            62 private boolean mCriticalityIndicator;
            63 private HashSet mExpectedPolicySet;
            64 private boolean mOriginalExpectedPolicySet;

      What it really comes down to is "preponderance of evidence", which I assume means Google will show a ton of evidence that they have in fact worked hard to do a clean room implementation. Not just code, but the whole process documentation. That, combined with picking apart pieces of code eactly like the above should be enough. But it's good for Google they got deep pockets...

      --
      Live today, because you never know what tomorrow brings
    30. Re:Here's Oracle's Example by inline_four · · Score: 1

      I think this shows that Google decompiled Sun's binaries. If you run a typical Java decompiler, you lose generics, local variable names; some initialization gets moved around; and certain things get inlined. Looks to me like there's evidence of all of the above coming across from Sun's source to Android.

      Now, decompilation is a murky legal area I think. I guess it falls under the rubric of reverse-engineering, but I have no idea how that law handles such practices in this context. I suppose Oracle are operating with the knowledge that Google likely decompiled class files and have chosen to pursue the claimed that they copied the source. Is it because decompilation is harder to prove? Does it carry less legal weight than a straight copy or a near-copy? Hm...

      --
      Alexey
  51. Are there are really that many different platforms by klubar · · Score: 1

    It seems to me that most code targets a very small number of platforms--if you're developing for the desktop/laptop business market, then you need to target the PC. If the product is the desktop/laptop consumer market, then target the Mac and the PC. If you're targeting the embedded processor market, you probably have a pretty good idea of the hardware and software that it will run on. I guess the only currently fragmented market is the mobile phone market, wehre there is still no clear winner on the hardware, software and OS.

    If there is a new processor/hardware... java will not just run on it... someone will have to port the VM.

    On the desktop, Java is just annoying. Every few weeks the damn updater asks about a download. Between updating Java and Flash you can pretty much keep busy.

  52. Err... by recoiledsnake · · Score: 1

    Clean room design will protect from copyright claims... but not patents.

    --
    This space for rent.
    1. Re:Err... by poetmatt · · Score: 1

      going after google with software patent claims will give them ammunition to head straight to supreme court to invalidate them, as it is in google's interest.

  53. SCO revisited. by DrPeper · · Score: 1

    I don't know why buy I smell essence of SCO here.

    1. Re:SCO revisited. by Compaqt · · Score: 1

      You smell weaselly lawyers (is that redundant)?

      But, Oracle is, generally, in the right (if not in every single motion that the lawyers file).

      Google/Android embraced/extended Java in order to avoid having to pay any money to Sun, which was also a weaselly move. All this while both claiming Android to be and not be Java at the same time.

      --
      I'm not a lawyer, but I play one on the Internet. Blog
  54. Re:You don't know what the fuck you are talking ab by Anonymous Coward · · Score: 0

    There is no JDK that ships with android. You must download Oracle's and use that for the Java compilation stages. Then google's java byte code to dalvik byte code conversion is performed.

    But yes, the class libraries come from Harmony, not Oracle

  55. Reminds me of "My Fellow Americans" by Anonymous Coward · · Score: 0

    This makes me worry who will show up as the spoiler like the idiot-vice-president / cunning-evil-genius character in the move My Fellow Americans. Jack Lemmon, James Gardner, Dan Aykroyd, and John Heard as the evil idiot-savant.

    Cheers,

  56. Re:Are there are really that many different platfo by man_of_mr_e · · Score: 1

    You're confusing two markets. The first is the application platform. If you're the one writing the low-level OS and apps, that's one thing.

    If you're talking about things like iphone and android, then you're talking about an app market with 10's of thousands of applications, few of which have any idea of what the underlying hardware is... At worst, you have issues with screen layout because screen sizes change.

    So, a new processor comes out, and now you want to make all 10,000 of those vendors recompile their apps? You also want to make the customer choose which version of the app to download?

  57. My understanding by antiparadigm · · Score: 1

    In reading about this mess, I would like to see if my understanding is correct:

    Before Oracle aquired Sun, Sun seemed to be a fairly cool company. They came out with the Java language, and release it in such a manner that anyone and everyone could use it. Hence it being picked up by educators and such so they can teach the OO style of programming. Sun was also very active in updating it and fostering a community around it. They even released a good sized portion of it as Open Source (This is how I assume Google and alot of other open source projects came to be).

    Everything was going good and dandy until Oracle bought them up. Now, from what I've been reading and can remember (I've been paying attention to the tech industry since about 1998 - Graduated HS, got a CS degree and such since) Oracle is a company who seems to have the philosophy that they try to buy up what competes with them, then for all intents and purposes, destroys the parts it deems "not high retern on investment" and then tries to bleed the other parts dry until they are worthless.

    This Sun bit seems to be a great example. They seem to not see much of a market for OpenSolaris & OpenOffice, so they pretty much just cut them off immediatly. With Java, they see the potential of possibly putting in a pay structure somehow, and step one seems to be sueing everyone who has their hands in the java pot (so to speak). If I'm not mistaken, this is the same thing going on with MySQL.

    To me, the whole situation sucks. Going though school, I was taught Java. Up until my senior year of college, I only had 2 classes taught in non-java languages, and as such I feel I have a connection to the language. Now that Oracle seems to be completely messing the situation up (and unfortunatly it seems they have the right to) I don't get all warm and fuzzy when I think of java.

    IMHO, it seems very unfortunate (and please don't think I'm supporting Oracle by saying this. I'm not) but a Judge or someone should tell google to just leave anything Java behind (and not just Google) and let Oracle do what they want with it. Then, when people stop using Java because Oracle has run it into the ground, Java will be put out of it's misery. I really don't want to see this happen, but I don't see any other way. In the end, Oracle will be out a lot of $ & the world will be out of Java. While one of those outcomes I welcome, I don't think I could live in a javaless world.

    I guess I can't say we would be javaless, there are the open source java implimentations... Anyway, Please correct me if you think I am off base in any way.

    P.S.: I unistalled java from all my machines as well as all software that uses Java once I heard about Oracle sueing Google over this. I don't want to support Oracle in any way, shape, or form.

    1. Re:My understanding by Compaqt · · Score: 1

      > Please correct me if you think I am off base in any way.

      Lemme take a shot.

      J2ME (Java 2 Mobile Edition) was never free. Sun required (and got) royalties for handsets.

      Sun took that money, and release open-source goodness to the world (as you mentioned).

      All the manufacturers paid, and all was right in the world. Except one day, a company called Android (later bought by Google) thought it would be a good idea to come up with a Java clone that wasn't quite a Java clone, but they would still call it "Java" in their developer documentation to attract Java developers and make use of existing Java code. The reason for this convoluted mess was all to avoid paying royalty fees to Sun, that open-source loving company.

      Standard J2ME apps didn't run on Android. Sun didn't really like what Android was doing to fragment Java, but didn't have the fortitude to make them stop. Google could have at any time made an agreement with Sun (even on a flat-fee basis, and not per-piece), but chose not to.

      Now they're dealing with Oracle. I hope Google settles, but they really brought this on themselves. And I really wished they had paid money to Sun in the first place.

      --
      I'm not a lawyer, but I play one on the Internet. Blog
  58. Obvious: Oracle's in bed with Apple by Anonymous Coward · · Score: 0

    Steve Jobs was Larry Ellison's official wedding photographer as per Wikipedia:

    http://en.wikipedia.org/wiki/Larry_Ellison

  59. "In at least several instances" by Anonymous Coward · · Score: 0

    How many is that, again?

  60. That's not what he's saying. by Anonymous Coward · · Score: 0

    He's saying that the parts of Apache Harmony which are copyrightable are those parts which involved some creativity in their expression.

    Apache Harmony was designed as a replacement for Sun's JDK class libraries -- in order to fulfil its intended function, it MUST be API-compatible, and so the API design is completely dictated by the interoperability requirement and has no creative element to it at all.

    Therefore, when Google receives the Apache Harmony source code under license from the Apache foundation, the license covers only the copyrightable parts, whose copyright is entirely owned by Apache Harmony. Oracle doesn't own squat in this picture, except the copyrightable parts of *their own* code, which neither Apache Harmony nor Google is using.

  61. Oracle is doing much harm to Java by jeanph01 · · Score: 1

    Oracle is doing much harm to Java. In the longtime this will not pay off at all.

  62. Actual Source Code by pavon · · Score: 1

    An AC below pointed me to an article at zdnet that has a copy of the complaint and excerpts of the exhibits.

    The one example listed is in PolicyNodeImpl: OpenJDK version, Android version.
    It was released under the GPL as part of the OpenJDK, but the license has been changed to Apache 2.0 in the Android version. Unless the original author authorized this, that is not kosher. I can't find in in the HEAD of the Harmony repository. Also note that it appears in a test directory of the Android tree - probably included to test against their own implementation.

  63. Artifact of the economy... by esarjeant · · Score: 1

    Microsoft is leading the way with frivolous IP lawsuits against Motorola and HTC, and potentially now Acer and Asustek. Apple has been busy too, they attacked HTC for stealing iPhone technology and Sanho for making replacement cables for your Mac. Meanwhile, Oracle appears to be looking for victims in the Java camp and is now leading the way with a suit against Google. Heck, even Paul Allen got into the fray with his lawsuit against just about everybody -- from Apple to YouTube.

    I think more than anything, this is an artifact of a bad economy. Companies are looking for ways to make money in a climate where consumers still aren't buying things. You don't have to take my word for it, according to Google the volume of news articles referencing "lawsuit" has steadily been on the increase since around mid-2008.

    --

    Eric Sarjeant
    eric[@]sarjeant.com

  64. But One Wrinkle Here by geoffrobinson · · Score: 1

    Sun basically made a Java implementation (partial implementation, whatever) but didn't call it Java. So they may be in breech of Sun's licenses.

    --
    Except for ending slavery, the Nazis, communism, & securing American independence, war has never solved anything.
  65. Can functional interfaces be copyrighted? by davidwr · · Score: 1

    Has the Supreme Court ruled on the copyrighting of a functional interface?

    Sometimes there is only 1 way to do something. If that "something" I want to do is to allow existing source code to compile using my binaries or existing binaries to link up with mine, well, there's frequently only one way to do it.

    Now, Oracle may have a claim on the parts of the documentation that could've been rewritten without breaking any tools or any organizational changes that could've been made without breaking anything.

    On the other hand, if Google copied Java code for any reason other than compatibility, they could easily lose.

    --
    Knowledge is how to play a game, intelligence is how to win, wisdom is knowing what game to play.
  66. Easy? by Gorimek · · Score: 2, Insightful

    If being a good programmer is so easy, why are they so expensive to hire?

    1. Re:Easy? by Anonymous Coward · · Score: 0

      It's not easy to be one. The point is: to make good (non-trivial) apps you need good developers. Writing portable C at that point really isn't difficult -- not at application level anyway.

  67. Small nit-pick by nedwidek · · Score: 5, Informative

    Not all of Sun's Java code went into Harmony et. al. So, maybe.

    The point of the project was that NONE of Sun's Java code would go into the project. They started with a clean slate and implemented all of the methods with their own code. They also had processes in place with the intention of keeping out the original Java code in contributions.

    Oracle is basically stating that by using the same package names, class names, and parameters that Android is an infringing derivative. This is the same argument as the SCO ABI argument. That was laughed out of court IIRC.

    --
    Post anonymously - For when your opinion embarrasses even you!
  68. You oversimplify by Arker · · Score: 1

    GPL V3 certainly has more robust patent protections, but V2, despite being less explicit on the matter, can definitely be argued to imply any patent grants necessary for someone downstream to exercise their rights as well. Exactly how far a court would imply has never to the best of my knowledge been tested, so if this does become an issue at trial it could be very interesting.

    --
    =-=-=-=-=-=-=-=-=-=-=-=-=-=-
    Friends don't let friends enable ecmascript.
  69. Look at the code first by judeancodersfront · · Score: 1
  70. *Our* Java code? by Arancaytar · · Score: 1

    Java belongs to Slashdot? :P

  71. Oracle needs to be destroyed... by Anonymous Coward · · Score: 0

    ... for this non-sense... Sun did a good thing, and Oracle f**ked it up. They need to be targeted for exploitation and destruction - so anyone using them as a DB are unsafe. We did it for MS Internet-Explorer, we can do it for Oracle...

  72. What a potty mouth by judeancodersfront · · Score: 1

    Someone already broke down the code:
    http://www.binplay.com/2010/10/look-at-copied-oracle-code.html
    Looks like a cut and paste job with amateurish renaming.

  73. It isn't clean room, have a look at the code by judeancodersfront · · Score: 1

    A programmer already broke it down:
    http://www.binplay.com/2010/10/look-at-copied-oracle-code.html

    It's a cut and paste job, and a poor one at that.

  74. Re:You don't know what the fuck you are talking ab by pavon · · Score: 1

    I agree with all of that, but it has nothing to do with Black-Man's post. In fact the entire problem here is that they did "make these packages available to everyone" in a manner that they weren't allowed.

  75. Stallman was right once again by Anonymous Coward · · Score: 0

    Everybody complain about Stallman position but he's proving once again to be right. If Java from Sun was licensed under GPLv3 then nothing this would be happening.

  76. Headline fail; "our" Java code? by noidentity · · Score: 1

    Oracle Claims Google 'Directly Copied' Our Java Code

    Versions that work (unless they really did claim that Google copied Slashdot's Java code):

    Oracle Claims Google 'Directly Copied' Its Java Code

    Oracle Claims Google 'Directly Copied Our Java Code'

  77. Comment removed by account_deleted · · Score: 1

    Comment removed based on user account deletion

  78. huh? by Anonymous Coward · · Score: 0

    That sounds like bullshit claim - programming interfaces, including names of classes and methods forming part of an interface (which in the java case they blatantly do) are simply not copyrightable, and that's been previously upheld in US courts AFAIK.

  79. Same to C and Java by phorm · · Score: 1

    C or C++ code *can* be portable, as you said. It depends on what you're doing with it. If it interacts with a windows-only library, it ain't gonna work on 'nix.

    The same applies to Java though, after a fashion. I've seen plenty of modules that relied on windows or mac-only situations, such as a OS-specific directory path, etc.

  80. I wouldn't jump to conclusions by t2t10 · · Score: 1

    With a cleanroom implementation, you'd usually not expect private variables to have the same name.

    However, some of these unusual identifiers also seem to occur in Windows and COM source code. So, it may be that the original names came from a a Microsoft other design, and both Sun and Harmony copied it from there.

    1. Re:I wouldn't jump to conclusions by ink · · Score: 1

      Excellent point.

      --
      The wheel is turning, but the hamster is dead.
  81. New Name? by nico60513 · · Score: 1

    Is it too early to start calling them SCOracle?

  82. Re:You don't know what the fuck you are talking ab by Lord+Ender · · Score: 2, Funny

    The last thing I'd like to do, was defend Oracle. But arguments need to be correct, complete, and relevant.

    Welcome to the internet! You must be new here. But don't worry; there are only a few simple ground-rules. First of all, understand that the highest form of argument is to compare your opponent to Hitler. Failing that, rephrase your opponent's position in terms of a car analogy. And most important of all--discredit your opponent in every post by referring to him as a "troll."

    To complicate the matter, being correct, complete, and relevant doesn't matter a bit if your opponent has citations. There is no citation more trust-worthy than an obscure blog. Build a library of biased, inflammatory blogs which tend to back your own positions; this is your only defense.

    Now go to it! I'll get you started: "A language specification is like an engine schematic. This is the Free World; we don't just give our engine designs away. Remember Volkswagen got its start when Hitler shared specifications... I mean, are you even being serious, or are you just trolling? As you can see in this blog..."

    --
    A slashdotter who didn't build his own computer is like a Jedi who didn't build his own lightsaber.
  83. Python tabs are stupid by Vapula · · Score: 1

    Well, one missing tab at the last line of a conditionnal lead to a programming error but NO SYNTAX ERROR...

    if a :
    [tab]if b :
    [tab][tab]c
    [tab][tab]d
    [tab]e

    versus
    if a:
    [tab]if b:
    [tab][tab]c
    [tab]d
    [tab]e

    That's the kind of mistake that could be hunted down for ages with no help from the compiler/interpreter as there is no syntax error...

    Try to forget one closing brace in C/Java/Php/Perl/... and the compiler will burp !

    Another problem comes when you've several programmers working on the same project with different tab sizes and indent convention. with langages like C/Perl/Php/Java/..., you can have the code reindented and reformatted automatically (think of indent for C code). Pythod would ask some human to do the work or some external way to enforce it.

    Treating whitespaces as anything beside "one or more" = SEPARATOR is clearly a bad idea... precisely because you can't see the difference between spaces or tabs on a listing (and don't even think to use some proportionnal font)

    1. Re:Python tabs are stupid by H0p313ss · · Score: 1

      That's the kind of mistake that could be hunted down for ages with no help from the compiler/interpreter as there is no syntax error...

      That's exactly my experience.

      In real-world group development environments you often find yourself debugging code written by people several years before who are no longer on the project. If the example above had been written by somebody else then discovering the gap between intent and implementation is a nasty PITA.

      I love python, but I also love { }

      (I'm the prick on your team who insists in code reviews that every if/then/else try/catch for/next MUST ALWAYS BE BRACKETED no matter how small and trivial they are...)

      --
      XML is a known as a key material required to create SMD: Software of Mass Destruction
  84. Jabba the Hutt by Anonymous Coward · · Score: 0

    Except Jabba (the Hutt)'s not much easier to write than C++, doesn't take advantage of multiple cores, and is much slower. Minecraft uses 560 MB of RAM with Doom-quality graphics and is as slow as heck. I can run KKrieger (a 96KB game written in C/C++ that's completely procedurally generated, with good graphics fine on my computer, but Minecrap is slow because it's written in Jabba.

    A programming language has 3 main parts, ease to write, speed, and space. Assembly is fast and saves space, but is hard to write. Perl, Python, and Ruby are short and easy to write, but are slow. Good C and C++ are about the middle when it comes to speed, ease, and space, but allow inline assembly and complex bit hacks/optimizations. Jabba is slow, about the same difficulty as C and C++, and uses more space (because you have to rewrite stuff or use special libraries that implement things other languages call from the OS or that are part of the language itself). Java fails on all speed, difficulty, and space.

  85. Evil which ever way you look at it by owlstead · · Score: 1

    This is pure evil from Oracle.

    First of all, it is unlikely that Google actually programmed that part. It was probably part of Harmony.

    They could have just nicely asked to reimplement the conflicting classes, instead they are trying to outmanouvre Google using lawsuits.

    Personally, I would like them to supply J2ME to android on top of the Dalvic VM and Harmony so they could rake in some money from the phone manufacturers or carriers.

    J2ME is not suitable for a smart phone, what the heck are they trying to accomplish here?

    1. Re:Evil which ever way you look at it by Compaqt · · Score: 1

      Google was already asked nicely in a luvvy-duvvy way by Sun to knock it off and stop fragmenting Java.

      But I guess Eric Schmidt just laughed it off, or he thought that the risk of infringing Sun was worth it in the extra money they would make.

      Why isn't J2ME appropriate for a smartphone? There are plenty of nice games and whatnot available as Java mobile apps, and it seems most of what people download is games. I think the latest J2ME has touchscreen support. J2ME has support for network (Internet) access, phone contacts access, text, graphics, sprites, and a lot of other stuff. I think it's fine for 66% of the apps out there.

      It was pure evil of Android to attempt to not pay Sun.

      --
      I'm not a lawyer, but I play one on the Internet. Blog
    2. Re:Evil which ever way you look at it by shutdown+-p+now · · Score: 1

      First of all, it is unlikely that Google actually programmed that part. It was probably part of Harmony.

      It is not, and it never was.

      Combined with the fact that Google used a Java decompiler to obtain the code, and the version they had decompiled was not even OpenJDK, this stinks in a major way. It's not just your patent lawsuit, and not even copyright infringement - it's blatant plagiarism.

    3. Re:Evil which ever way you look at it by owlstead · · Score: 1

      OK, that was new to me, so I'll have to retract my previous statement. When I started to read into it the suspicion was that these were copied from Harmony. My opinion was based on that "fact". As it looks now Google is in some serious trouble.

      That the code was decompiled was probably suspected by most Java devs, since the variable names were clearly lost at some point. Especially the argument names are a good hint: they look a lot like the arg0-argX that are common when only the .class files are available to e.g. the Eclipse IDE. Personally I thought it was likely a lazy programmer that "skipped" one or two classes when trying to reimplement the Java interfaces.

      And it could still be just that, although it is now more likely that this was a developer hired by Google.

  86. Re:FUD with Java by Compaqt · · Score: 1

    The suit doesn't have to do with OpenJDK. Google didn't use OpenJDK.

    They used another implementation, parts of which have been shown to be basically copy/paste/rename jobs.

    And they mangled the implementation to half be Java and half not, while still calling it Java all over the place in their developer docs.

    Google could have used a fully-compliant implementation of Java. Or it could have licensed J2ME (which was never free--it paid for free Java). But it didn't.

    --
    I'm not a lawyer, but I play one on the Internet. Blog
  87. Re:You don't know what the fuck you are talking ab by Compaqt · · Score: 1

    Somebody mod this funny.

    --
    I'm not a lawyer, but I play one on the Internet. Blog
  88. Hey moderators! by Anonymous Coward · · Score: 0

    Are you stupid, or just asleep?

    Why isn't the parent comment (and its parent) moderated up? They are some of the most insightful/informative comments on this topic.

  89. Oracle files against SCO by Compaqt · · Score: 1

    Just as an FYI:

    Oracle Objects to SCO's Cure Notice

    "Oracle asks the court to deny any forward motion on SCO's request to assume and assign any Oracle executory agreement without Oracle's consent."

    --
    I'm not a lawyer, but I play one on the Internet. Blog
  90. Regarding the API... by luis_a_espinal · · Score: 1

    Oracle isn't going anywhere. This lawsuit isn't going to be anything at all like SCO/IBM or SCO/Novell because Oracle is many times larger than SCO is and is at least 2 orders of magnitude more relevant.

    Java is everywhere. Schools teach it. Companies use it.

    If Google really copied things from the Java source like actual source code or documentation, they might be screwed. It sounds like from the summary that the bulk of this 'copying' was the API, which I don't think is even eligible for copyright(not artistic).

    The APIs are governed by a patent license that states how the APIs are to be presented. In fact it goes specifically to forbid presenting a subset or a superset of the APIs presented under the java.*, javax.* package/namespaces (and the org.* namespaces currently included into the J2SEE, J2ME and JEE profiles.)

    Here is where Google is screwed since people that program for Dalvik are using a subset of the Java API (in addition to extensions.)

    However...

    The patent license was intended in this way to prevent someone from doing something that is a superset or subset of "official" Java, and call it Java.

    Here, Google has never called what they do on Dalvik "Java". So on that technicality, they might (just might) have some legal room to maneuver.

    However, Google has implicitly presented the Dalvik platform to Java developers (J2ME developers in particular) saying "you can using your Java skills to develop in Android. It's just like Java."

    That kind of wording, however implicit as it might be, that can be justifiably open to litigation.

    The jury is still out on how all of this is going to pan out, but it is important to understand (regardless of how you feel about it) the following:

    1. Sun didn't go after Google because it couldn't. Oracle now can (there was legal ground precendence.)
    2. Google did this banking on Sun's unwillingness/inability to go after them.
    3. Google banked on legal ambiguities to develop and market a platform that caters to J2ME developers.

    By doing so, and by not buying Sun when they had the chance, Google has put itself is a midly annoying position. It is not a precarious one as I'm sure Google has enough muscle to fight it off (or come to a settlement with Oracle.) But it is an annoying one for everybody else.

  91. Oracles new corporate moto... by twoHats · · Score: 1

    "Do Only Evil"

  92. Google will buy Java by Anonymous Coward · · Score: 0

    I don't think Oracle has any interest in Java, they are more interested in Sun's hardware division. Since Java development is not in their core line of business, they would rather sell it to a big corporation like Google that is already putting it to good use. And by doing that, they will kill two birds with one stone: Sell Java for "billions", while still retaining Sun's hardware division. The lawsuit is meant to act as a negotiating basis for setting a huge price tag on Java !