Slashdot Mirror


Schmidt Testifies Android Did Not Use Sun's IP

CWmike writes "Google built a 'clean room' version of Java and did not use Sun's intellectual property, Google's executive chairman, Eric Schmidt, testified in court Tuesday. Schmidt said its use of Java in Android was 'legally correct.' On this day seven of the trial, Schmidt gave the jury a brief history of Java, describing its release as 'an almost religious moment.' He told the jury that Google had once hoped to partner with Sun to develop Android using Java, but that negotiations broke off because Google wanted Android to be open source, and Sun was unwilling to give up that much control over Java. Instead, Schmidt said, Google created the 'clean room' version of Java that didn't use Sun's protected code. Its engineers invented 'a completely different approach' to the way Java worked internally, Schmidt testified."

51 of 239 comments (clear)

  1. Re:Google did not develop Android to be open sourc by binarylarry · · Score: 4, Funny

    Where do you get the shit that you smoke?

    --
    Mod me down, my New Earth Global Warmingist friends!
  2. We really need better names by girlintraining · · Score: 5, Funny

    We really need better names in this industry. I read the headline and immediately imagined a robot falling over and convulsing while saying "IP conflict.. conffflict... unaaaable to.. reboot," while a self-satisfied and positively glowing Sun glanced over the top of his laptop and started giggling quietly to himself. But it could just be the caffeine withdrawl too.

    --
    #fuckbeta #iamslashdot #dicemustdie
    1. Re:We really need better names by Confusador · · Score: 2

      But it could just be the caffeine withdrawal too.

      So, you're testifying that you also did not use Sun's IP?

  3. Re:Google did not develop Android to be open sourc by MightyYar · · Score: 3, Insightful

    Guess why Google doesn't use it or create their own? Because that would be much more work to do.

    1) What's wrong with saving yourself work?
    2) Isn't that the whole point of OSS?

    --
    W..w..W - Willy Waterloo washes Warren Wiggins who is washing Waldo Woo.
  4. fragmentation? by Anonymous Coward · · Score: 3, Insightful

    If Oracle is so worried about the "Fragmentation of Java", why would they want to force Google to write a completely different API?

    1. Re:fragmentation? by julesh · · Score: 5, Informative

      Google were going to use a completely different API anyway (the android application framework, rather than J2ME which Sunacle would have preferred). By "worried about fragmentation" what they really mean is "worried that people won't pay to license the patented parts of Java".

  5. Re:Google did not develop Android to be open sourc by Genda · · Score: 2

    And so the myth that Steve jobs is still alive begins!...is that you Steve? Knock once for "yes" and twice for "God wants an iPad!".

  6. "Clean Room" implementation by willoughby · · Score: 5, Insightful

    If what he says is true, there should be lots of evidence including a big stack of affidavits signed by the reverse-engineers swearing that they have never seen the original code. If he can't pull these out of his pocket, along with the Attorney who oversaw the project, I'd be.. erm... skeptical.

    1. Re:"Clean Room" implementation by LiENUS · · Score: 5, Insightful

      There are some fairly large differences between Dalvik (the vm in android) and the JVM from sun/oracle/whoever. Namely the Dalvik instruction set is register based whereas java is stack based. You can easily have any engineer look at the code for the Dalvik vm itself and see there is quite a difference. Then the libraries that aren't android specific are based on the Apache harmony project so affidavits from Google engineers would be quite useless there. Now the question to me wouldn't be in Android itself but is the Android SDK truly clean room. There's a static re-compiler to recompile JVM bytecode to Dalvik bytecode. My guess is the SDK is clean room itself but Schmidt being honest about android being clean room isn't so unlikely but it is quite possible this is doublespeak and the SDK itself (hey it's not "Android") could very well be based on Sun IP. The relevant stuff I've seen in this court case hasn't related to so much lifted code as it was patents which is quite difficult to avoid infringing just by not seeing code.

    2. Re:"Clean Room" implementation by phantomfive · · Score: 2, Interesting

      This is exactly true. If it were truly a clean room implementation, they couldn't have possibly ended up with parts of Sun's Java in their code, even a single line. But they did. Not only that, Google engineers have said that they were looking at Sun documentation while they were writing Dalvik.

      So Schmidt might be right. It could have been 'legally correct.' But it sure wasn't a clean room implementation.

      --
      "First they came for the slanderers and i said nothing."
    3. Re:"Clean Room" implementation by Anonymous Coward · · Score: 4, Insightful

      If you look at docs, specifically java docs you will get variable names and description what it does. This is still clean room implementation.

    4. Re:"Clean Room" implementation by Anaerin · · Score: 2

      The problem with your statement is that they are implementing an SDK, so the code they produce has to have the same behaviour as the original. For instance, making a sandwich - without having the original recipe and reverse-engineering it, it'll end up being (virtually) identical, as you're trying to produce the same output. And even if this wasn't the case, there are some functions that need to be the same - if they're not, breakage happens.

    5. Re:"Clean Room" implementation by phantomfive · · Score: 4, Insightful
      It seems some people here are a little unclear of what a clean room implementation is. Here, from the wiki:

      Typically, a clean room design is done by having someone examine the system to be reimplemented and having this person write a specification. This specification is then reviewed by a lawyer to ensure that no copyrighted material is included. The specification is then implemented by a team with no connection to the original examiners.

      That's the proper way to do a clean room implementation. Once you start looking at copyrighted materials of the person you are copying, then it's no longer clean room. And yes, Javadocs are copyrighted.

      Now, what you have done might still be legal. That's what I'm hoping for in this case. However, it certainly isn't clean room.

      --
      "First they came for the slanderers and i said nothing."
    6. Re:"Clean Room" implementation by Talisein · · Score: 5, Insightful

      That's the weird part of this trial, there doesn't seem to be a formal decision paper/memorandum saying "Okay, we are doing a clean room, and these are the measures we need to be sure we enforce, here is the manager in charge." [Cravat: Maybe there is and Oracle simply didn't want to present it. But that seems unlikely] It seems more like Andy Rubin was shooting the shit over email and some engineer said that he could write his own byte-code interpreter, and some others piped up that maybe rewriting everything would be fun. And then 2 years later they had it done and Rubin was just like, "Oh, cool, let's build our business on this then."

      But really this entire phase of the "trial" is bizarre. Oracle spent hours and hours and hours proving.... Google implemented the methods in java.lang et al. And Google is saying.... they implemented those methods. What exactly is the jury supposed to decide? Isn't whether or not Google can implement those methods be a matter of law? if the jury is supposed to say its fair use or not, why wasn't Oracle's presentation filled with examples of what things are fair use and what things aren't?

      Oracle's lawyers are so focused on saying that Google should have got a TCK license, but they never presented WHY Google should have gotten that license. They just asked the Google people, "Hey, did you know you should have got a TCK license?" Then they ask the Sun people, "Hey, should they have gotten a TCK license?" But they never seemed to explain why the TCK was needed beyond avoiding fragmentation of the language. Fragmentation of the language isn't against the law AFAIK.

      I guess things will become clear when the judge gives his instructions to the jury, but I am completely puzzled.

      --
      "The right to do something does not mean doing it is right." William Safire
    7. Re:"Clean Room" implementation by phantomfive · · Score: 3, Interesting

      Oracle has two goals. The first is to prove that Google copied them. They've already established this, though they might need to deal with a fair-use defense, or any other defense Google uses.

      Their second, and to them very important, goal is to prove that Google willfully infringed, and benefited a lot from it. They want a big payment as a result of this.

      I believe the focus on the TCK license is an attempt to get bigger damages.

      --
      "First they came for the slanderers and i said nothing."
    8. Re:"Clean Room" implementation by GryMor · · Score: 3, Informative

      Everything Google 'copied' (really, re-implemented) was released under the Apache license as project Harmony.

      --
      Realities just a bunch of bits.
    9. Re:"Clean Room" implementation by julesh · · Score: 2

      An affidavit from a developer about that developer's practices, or even the practices that that developer observed other developers using, is not hearsay.

    10. Re:"Clean Room" implementation by julesh · · Score: 4, Insightful

      It's not clear to me you understand what a clean room implementation is. It is perfectly possible to make a clean-room implementation of an SDK, or a chip, that implements the behavior accurately, without looking at the original code. There is no reason to believe Google did this (except for the sketchy testimony by their CEO).

      And the fact that a very large majority of the non-trivial portions of the code clearly do what they do in different ways to Oracle's implementation. And the fact that the developers of the code (in this case Apache, not Google) have stated several times that it is clean room. And that it was an open source project where the practice was to obtain a signed statement from developers providing complete details of exposure to Sun's IP prior to accepting patches from them (see http://harmony.apache.org/auth_cont_quest.html ), so it seems to be pretty clear that either it was clean room, or there is a developer who lied to them in a written warranty and therefore *that developer should be liable*, not Google.

    11. Re:"Clean Room" implementation by phantomfive · · Score: 2, Informative

      It is even higher if the lines were contributed to Java by a programmer who then contributed to Android.

      That wouldn't be a clean-room implementation then, would it.

      --
      "First they came for the slanderers and i said nothing."
    12. Re:"Clean Room" implementation by phantomfive · · Score: 2, Insightful

      Why do you have a strong opinion for google or oracle in this case? I don't have a horse in the race, and I hope truth will out.

      Incidentally, the bias on Slashdot against Oracle, and for Google, is so strong right now, that if you aren't careful, you can get modded down for pointing out a way Google can lose, even though your post is 100% accurate. It's ridiculous.

      Mentioning that you think it's better if Google wins is a way to let those people feel good without needing to mod you down. Sad but true.

      --
      "First they came for the slanderers and i said nothing."
    13. Re:"Clean Room" implementation by ppanon · · Score: 2

      Berkeley vs. AT&T seems to have pretty well established that APIs cannot be copyrighted, although it's possible that a specific API include file layout can be.

      --
      Laissez lire, et laissez danser; ces deux amusements ne feront jamais de mal au monde. - Voltaire
    14. Re:"Clean Room" implementation by julesh · · Score: 2

      OK, that is evidence of a clean room implementation. How did Sun code end up in Android then?

      I see no clear evidence that it did. All the code examples I've seen that are supposedly copied code seem trivial, and likely to be accidental duplication.

      Also, what was this guy doing working on Android?

      He wasn't. http://www.zdnet.com.au/google-oracle-get-technical-in-court-339336340.htm

      He was working for Google in an entirely different capacity, and wrote the code as a translation of a Python implementation. The code was then copied into Android by a second Google employee, who was possibly unaware of its source. But as the code in question is trivial, and represents just about the only sensible way to achieve the same results, I'm not sure it counts as copyright code (see the Lexmark case of a few years ago -- if code is the only sensible way of implementing a functional requirement, no copyright exists). Here is the code in question:

      private static void rangeCheck(int arrayLen, int fromIndex, int toIndex) {
                        if (fromIndex > toIndex)
                                throw new IllegalArgumentException("fromIndex(" + fromIndex +
                                                      ") > toIndex(" + toIndex+")");
                        if (fromIndex < 0)
                                throw new ArrayIndexOutOfBoundsException(fromIndex);
                        if (toIndex > arrayLen)
                                throw new ArrayIndexOutOfBoundsException(toIndex);
                }

      Sure looks trivial to me.

    15. Re:"Clean Room" implementation by GryMor · · Score: 3, Interesting

      Equitable and promissory estoppel: Sun helped project Harmony and was deeply involved in it's creation, to the extent that it infringed, it had permission to do so. Sun definitely received benefit from this arrangement as parts of Sun's own implementation were contributed, as a result of Harmony, by Google.

      --
      Realities just a bunch of bits.
    16. Re:"Clean Room" implementation by geantvert · · Score: 2

      Humm... If the purpose of that function is to check that the interval fromIndex:toIndex is valid within an array on length arrayLen then there is another sensible way to implement that function.... without a bug:

          This code does not throw ArrayIndexOutOfBoundsException if toIndex == arrayLen

    17. Re:"Clean Room" implementation by dzfoo · · Score: 2

      Because the copyright does not apply to the functionality of the API, it applies to the format and organization of the function calls.

      You can't copyright a number, and you can't copyright the idea of looking someone's phone number in a list. But you can copyright an ordered collection of numbers as an artful expression of of such a list.

      An API is more than "all about functionality"; it is an artful expression of the collection of function calls, and their parameter signatures, needed to implement such functionality.

      Or it could be. Only a judge can decide that.

                        -dZ.

      --
      Carol vs. Ghost
      ...Can you save Christmas?
  7. Like Linux? by ukemike · · Score: 4, Interesting

    Isn't this basically what Linus Torvalds did with Linux? If it can be done with an OS couldn't you do it with a compiler or an interpreter? I'm not a programmer, so the likeliness of this story being true is beyond my ability to judge.

    --
    -- QED
    1. Re:Like Linux? by ukemike · · Score: 2

      Also, if this is true, shouldn't the evidence of it be bloody obvious to any sufficiently skilled programer who could examine both sets of code? It seems like a totally testable hypothesis to me. Someone should test it.

      "Stand back I'm going to try SCIENCE!"

      --
      -- QED
    2. Re:Like Linux? by jd · · Score: 2

      Kaffe was a clean-room Java, so yes it can be done.

      --
      It's a small world and it smells funny; I'd buy another if it wasn't for the money; Take back what I paid (SoM)
    3. Re:Like Linux? by wrook · · Score: 3, Interesting

      Linux is written to the POSIX standard. The POSIX standard is copyright IEEE and the Open Group. They have been clear that they won't sue people for implementing the standard (though, they also own a trademark which is a separate issue...). Additionally, the ability to implement this was pretty much covered by the BSD lawsuits in the 80s, which said that *this* API could be implemented (not that *all* APIs could be implemented).

      I don't know for sure, but I don't think that the issue of blocking the implementation of APIs has been tested. POSIX is a special case. SCO was *clearly* full of shit. It is much less clear wrt to Oracle and Java from my position. The strange thing is (as others have mentioned) that Oracle seems not to be pushing the API copyright issue and are instead claiming that Google needed a TCK license. Things may change later, though.

    4. Re:Like Linux? by Adrian+Lopez · · Score: 3, Insightful

      Linux is written to the POSIX standard. The POSIX standard is copyright IEEE and the Open Group.

      IEEE holds the copyright to the documents describing the POSIX standard. It doesn't necessarily apply to the particular items being standardized (APIs, utilities, etc.).

      --
      "In prison you just have to shut your eyes and take it. Here you have to shut your eyes and give it."
    5. Re:Like Linux? by TechyImmigrant · · Score: 3, Funny

      As a contributor of code to IEEE documents, I always found it necessary to release the code to the public domain before I submitted it to the IEEE, so their unashamed copyright grab would not apply.

      --
      I should use this sig to advertise my book ISBN-13 : 978-1501515132.
  8. Re:Clean room is irrelevant by Fjandr · · Score: 2

    My take on the case:

    Sun requires licensing to ship their JVM and SDK with a commercial product.
    Google claims their wrote their own without using any Sun code.

    If that is true, there's Google's case: they're not using the parts requiring licensing.

  9. Re:mod up by Anonymous Coward · · Score: 2, Insightful

    Nice nearly universal copypasta there.

    Name any market Apple has created? Tablets? Smartphones? MP3 players? It's all polished implementations of other peoples well proven ideas. Their finest and purest idea was their first one: computing accesible to masses.

    Name any market Microsoft has created? Operating systems? Database servers? Directory services? It's all polished etc. etc. etc.

  10. Re:mod up by The1stImmortal · · Score: 5, Insightful
    There is nothing new under the sun :)
    Seriously though - I love the irony in someone saying

    "Name any market Google has created [...] It's all polished implementations of other peoples well proven ideas."

    in response to a comment about Google "stealing" from Apple

  11. Re:Schmidt cannot be trusted or believed. by simula · · Score: 2

    What "IP" did Schmidt "steal" while serving on Apple's board?

  12. Re:mod up by edremy · · Score: 4, Interesting

    Schmidt has dirty paws. I would not be surprised if this behavior is why Sergey Brin had to oust him. Name any market Google has created? Search? Mail? Maps? Online Docs? It's all polished implementations of other peoples well proven ideas. Their finest and purest idea was their first one: search ranking by citation.

    AdWords. I'm unaware of any prior system that did automatic auctions for specific search terms. As far as Google's success, AdWords was equally as important as search, since it's the financial basis for the entire company. If you read some of the early history of Google their original sales methods were human centric, slow and no better than anyone else. AdWords started the flood of cash.

    --
    "Seven Deadly Sins? I thought it was a to-do list!"
  13. "Google wanted Android to be open source"?! by G3ckoG33k · · Score: 2, Interesting

    "Google wanted Android to be open source, and Sun was unwilling to give up that much control over Java."

    What?! Java already was open source, GPLv2. Since 2006. http://en.wikipedia.org/wiki/Free_Java_implementations#Sun.27s_November_2006_announcement

    It must be something else then, or what am I missing here?

    1. Re:"Google wanted Android to be open source"?! by zbobet2012 · · Score: 4, Informative

      Google wanted the [i]actual virtual machine[/i] to be open source. Java the [i]language[/i] was open sourced. This trial resides around whether or not that open source license extended to the api's of the language.

    2. Re:"Google wanted Android to be open source"?! by fsterman · · Score: 2

      Java ME (a version of Java for mobile phones) doesn't include the classpath exception, so ALL Android software would have had to be GPLv2.

      --
      Is there anything better than clicking through Microsoft ads on Slashdot?
    3. Re:"Google wanted Android to be open source"?! by julesh · · Score: 5, Informative

      In 2006, only javac, the java compiler, was open source. Android doesn't even use this compiler, so this was irrelevant to them. It took until 2007 for a GPL release of the class library, and Android was basically finished by this point in time. The first android phone launched only weeks after Java's GPL release. The decision to pursue an open source Java implementation was taken in 2005, shortly after Google acquired Android, and long before Sun began open-sourcing anything.

    4. Re:"Google wanted Android to be open source"?! by Anonymous Coward · · Score: 5, Informative

      You are mixing things.

      OpenJDK is the GPLv2 licensed reference implementation for Java SE. This is important because it includes crap like Swing and AWT that have no place on a modern mobile phone or tablet, amongst countless of other fat that's not needing. The virtual machine itself is way to heavy, doing optimizations that can be afforded on a desktop, but that are too expensive on a mobile phone.

      But Java ME (mobile edition) is an entirely different matter. It does not have an open-source implementation, so you have to license it from Sun/Oracle. And if you do that, you cannot modify it to suit your needs, unless Sun/Oracle agrees, which is very unlikely because historically they've been quite religios about their TCK.

      So the thing left to do, if you want to use "open-source Java" is to fork OpenJDK. But the problem here is that the patents grant in GPLv2 is implicit and this means for derivate works it does not hold in Europe (for example) as the "implicit patents grant" is an artifact strictly related to the US patents office only.

      Apache begged Sun for years to license them the TCK for Apache Harmony (the most complete third-party open-source implementation), but the license of the TCK says that distribution of the implementation for mobile devices is subject to licensing, a clause which is incompatible with Harmony's APL license, therefore Sun disagreed ... but at least people assumed that a clean-room implementation is fine, even if it does not pass the TCK, as long as you don't use the Java trademark. And now Oracle wants to prove otherwise.

      So no, for mobile devices Java is closed, unless you go with a clean-room implementation, which Google did.

      Dalvik is a virtual machine optimized for mobile phones. The latest version is pretty good too. Android has its flaws, but it's overall pretty good and this is in part because Google went the extra mile with their own VM implementation, which wouldn't have been possible otherwise.

    5. Re:"Google wanted Android to be open source"?! by JasterBobaMereel · · Score: 3, Interesting

      ..One point if the GPLv2 does not cover US Patents in Europe but it does cover US Patents in the US ... what is the problem?

      US Software patents are covered in the US - but implicitly granted

      US Software patents are meaningless in Europe

      Europe does not have Software Patents ...

      So this is about Copyright and not Patents ...and nothing was copied?

      --
      Puteulanus fenestra mortis
  14. Re:Google did not develop Android to be open sourc by truedfx · · Score: 5, Funny

    That's impossible. Where in heaven would Jobs have found a lawyer?

  15. Re:Registers vs. Call Stack = speed gain... apk by julesh · · Score: 3, Informative

    We're talking about an intermediate representation. Both Google and Oracle's virtual machines take their respective bytecode formats and convert them to a register-based machine language prior to execution. The only difference is that Google does this by translating from a different register-based language while Oracle translates from a stack-based language. This isn't about calling conventions, but compiler technology.

  16. Re:Schmidt cannot be trusted or believed. by zuperduperman · · Score: 4, Insightful

    He should have excused himself from the board the moment Google started working on Android.

    That would have been silly because Google started working on Android when Apple was a company that made portable music players and pretty much nothing else. But even so, he did in fact recuse himself from all discussions involving the iPhone and resigned not long after its release. Since Google purchasing Android was very publicly known there is no excuse for the rest of the board for not removing him if they thought it was a problem. There was absolutely nothing secret about it, so if it was a problem as you seem to believe then that is a testament to incredible stupidity of the Apple board room and not much else.

  17. Re:Google did not develop Android to be open sourc by Barefoot+Monkey · · Score: 4, Funny

    Oh come on, just saying a name is harmless. It's like Candlejack - I say "Candlejack" all the time, and nothing bad ever ha

  18. Re:mod up by Swampash · · Score: 2

    Adwords was technology developed by a company originally named Boingo, later renamed to Applied Semantics, and which Google purchased in 2003. Google did not develop Adwords itself.

  19. Re:Google did not develop Android to be open sourc by oobayly · · Score: 2

    If you say "Steve Jobs" three times to a mirror he appears and smashes your Android phone.

  20. Re:Google did not develop Android to be open sourc by tom17 · · Score: 2

    Why did you click on both 'Preview' and 'Submit' before attempting to comple your sentence?

  21. Re:Google did not develop Android to be open sourc by icebraining · · Score: 4, Insightful

    No, he's just wrong.

    In fact, despite the fact that kernel and userland programs in Android require it to be open source, Google is making it as hard as possible for it to be any use for others.

    This is wrong - only the kernel is GPL. They have no obligation to release the rest of the source, which is either Apache2 or BSD licensed. In fact, they didn't for a version (Honeycomb?).

    Bionic, Dalvik, they could've kept all of that closed and they didn't.

    You need to be registered partner and pay hefty sums just to officially use Android.

    This is a red herring and slightly wrong. You can call your device "Android" if you pass the compatibility test, which is free (as in beer and speech). If this is enough to call Android not open, then Firefox isn't either (see Iceweasel).

    You have to get a license to get access to Google Play, which isn't software but a service provided by Google and not really part of Android.

    In fact, they have basically used the work of countless amount of volunteer programmers without giving much back.

    That's called open source. We all use much more than we contribute back; in fact, that's the whole point!

    But the fact is that the Android software is open, and Linux 3.3 included contributions from Android's kernel.

    Guess why Google doesn't use it or create their own? Because that would be much more work to do.

    They have created a language (Go), they pay for the development of Python (check who employs Guido van Rossum) and they have developed a full compiler and VM (Dalvik).

    The reason they chose Java has nothing to do with it being more work, but with the fact that developers already know the language.

  22. Re:Google did not develop Android to be open sourc by Zero__Kelvin · · Score: 3, Insightful

    "You appear to have been the victim of several (-1, Most of us are not clueless morons) mods."

    FTFY

    --
    Guns don't kill people; Physics kills people! - John Lithgow as Dick Solomon on Third Rock From The Sun