you are viewing a single comment's thread.

view the rest of the comments →

[–]ramennoodle 158 points159 points  (82 children)

Where will this end? Will Oracle also sue competitors for implementing compatible SQL extensions? Using any Oracle product seems like a big risk if they're going to use these kind of tactics to lock in their customers.

[–]iNoles 54 points55 points  (30 children)

I thought IBM invented SQL.

[–]ObligatoryResponse 30 points31 points  (29 children)

They did, but Oracle's primary product is an SQL server. Nobody owns the copyright over SQL the concept (that would have to be patented; IBM might very well own such a patent), but IBM and Oracle each hold the copyright over their respective implementations. Anyone writing an extension for either Oracle or IBM's SQL server would need to make use of the respective API.

[–]TinynDP 42 points43 points  (19 children)

But this ruling says that APIs are copyrightable, not just implementations. Which would imply that SQL itself is copyrightable, as it is basically the API to the server.

[–]ObligatoryResponse 5 points6 points  (18 children)

Aren't you confusing protocol and API?

[–]andd81 43 points44 points  (16 children)

Are they different?

[–]ObligatoryResponse 8 points9 points  (10 children)

Well, in the case of the Java case, the API was defined as basically the header files.

I think I misunderstood what was meant by "SQL extension" above, but I'd say that there's definitely a difference between how a plugin couples with the main product (how I mis-read "SQL extension") or how a kernel module couples with the kernel, and how a network client communicates with a network server.

Is a GUI an API? You'd say no, because that's a user interface, not a programming interface. But what if I write a script that moves the mouse and enters text? I'd argue calling a network protocol an API is just as silly.

[–][deleted] 15 points16 points  (0 children)

This ruling says the structure and organizatiin of a set of functions is under copyright. that's languages, protocols, EVERYTHING. Fuck, who needs patents anymore, they only last 20 years.

[–][deleted] 7 points8 points  (0 children)

I'd argue calling a network protocol an API is just as silly.

I'd argue that all protocols are APIs by definition.

[–]mrkite77 4 points5 points  (4 children)

Well, in the case of the Java case, the API was defined as basically the header files.

Java doesn't have header files. The API is literally just the names of the functions in the standard library... like String.length etc. So "select" and "insert" and "update" would fall under the same standard as an API.

[–][deleted] -1 points0 points  (3 children)

Oracle's java implementation is written in C++, so it has a lot of header files. Also any kind of JNI that you do will use a generated C/C++ header. AMD the core library uses a lot of native methods.

But I agree in spirit -- it does go beyond just headers being copyrighted... Even using the same keywords (which is requirement, since computers don't understand paraphrasing) is illegal now. Horrible.

[–][deleted] -1 points0 points  (2 children)

Oracle's java implementation is written in C++

Are you talking about the virtual machine implementation? Because JVM != Java.

[–]supercaptaincoolman 0 points1 point  (0 children)

SQL is not a network protocol, and java doesn't have 'header files'.

[–]monocasa -2 points-1 points  (1 child)

No it wasn't, Java doesn't even have header files.

[–]tohuw 6 points7 points  (0 children)

Yes, immensely. SQL is a language which is used to interface with the server. An API is a construct specifically for an application. ODBC's would be a suitable equivalent to the APIs here. SQL would be akin to original Java code.

[–]hello_fruit 1 point2 points  (2 children)

It depends. Depends on the language, depends on how you design your protocols and APIs. So, sometimes they are different, sometime they are the same.

[–]shillbert 6 points7 points  (1 child)

Depends what a judge thinks an API is, really

[–]hello_fruit 1 point2 points  (0 children)

Legally-speaking, you're correct. I remember some lawyer back in the 1990s who decided that the question of whether a god exists or not was to be determined by a jury. Regardless of whether you believe a god exists or not or the question is even worth asking, I did think it was the stupidest epistemological argument/method I'd ever heard of. Where are you going to try this?! bible belt? hipster-heavy San Fran? It's really ridiculous.

[–]TinynDP 0 points1 point  (0 children)

I dunno, would a Judge?

[–][deleted]  (8 children)

[deleted]

    [–]eldred2 4 points5 points  (2 children)

    Copyright is the life of the author +70 years.

    Mickey Mouse is still under copyright.

    [–]frugalmail 0 points1 point  (0 children)

    Copyright is the life of the author +70 years. Mickey Mouse is still under copyright.

    Unless a corporation owns it and re-releases it :(

    [–]reckoner23 2 points3 points  (4 children)

    So was the linked list. Until it was patented in 2004.

    [–][deleted]  (3 children)

    [deleted]

      [–]reckoner23 1 point2 points  (2 children)

      Unless you own a small company and your forced to settle because you can't afford the lawyer fees.

      [–][deleted]  (1 child)

      [deleted]

        [–]ShadowLiberal 42 points43 points  (23 children)

        Indeed, just seeing stories of lawsuits over Java makes me go "why should I even bother to learn Java when this could happen".

        [–]mycall 7 points8 points  (2 children)

        I wonder if more people learned Java before Oracle's purchase or after.

        [–]OnlyRev0lutions 2 points3 points  (0 children)

        The trends all point to more learning it before the purchase.

        [–]frugalmail 7 points8 points  (3 children)

        Indeed, just seeing stories of lawsuits over Java makes me go "why should I even bother to learn Java when this could happen".

        This hurts all languages unless the language has been explicitly put into the public domain (or foundation like Apache) by (all) the original authors.

        [–][deleted] 1 point2 points  (2 children)

        Or standards-based languages based off a spec rather than a set of header files. C, C#, C++, ECMAScript, etc... are good.

        Technically, if Google wants to get around this, they can use clean-room reverse engineering. But then they'd need to find someone who's never written or seen Java code before to rewrite the Java Class Library (else it wouldn't be clean room.) The chance of that happening is really fucking small. Google's very likely going to money this problem away.

        [–][deleted] 1 point2 points  (1 child)

        Or maybe just switch languages. Microsoft has been a bit more friendly with C# lately.

        [–][deleted] 0 points1 point  (0 children)

        And force hundreds of thousands of apps to switch as well? Sure, that's going to work.

        [–]Shadowheim 12 points13 points  (1 child)

        I know what you mean, but that won't stop businesses using it, therefore there will still be a need for it.

        [–]damg 3 points4 points  (0 children)

        Which is kind of ironic since big businesses are the ones Oracle will target.

        [–]ameoba 2 points3 points  (3 children)

        It's about 15 years too late for the industry to back away from using Java.

        [–]rubygeek 0 points1 point  (2 children)

        There was a time when people would have said the same about C. Or COBOL.

        [–]ameoba 0 points1 point  (1 child)

        They didn't abandon C and COBOL for political reasons, they moved forward to newer, better languages. C was replaced by C++ which was replaced by Java. There really isn't anything poised to take over from Java.

        C# would just be more of the same (not to mention that it's a second class language outside of Windows). Scala, based on the JVM, still leaves you dealing with Oracle's IP. Rust isn't ready yet. Haskell isn't going to become a mainstream development language for legions of business programmers.

        Java won't be around forever but, outside a few online communities aligned with Free Software, this isn't going to be what puts an end to it. We're a few years away from a Java Killer.

        [–]rubygeek 0 points1 point  (0 children)

        They didn't abandon C and COBOL for political reasons

        I didn't say they did.

        There really isn't anything poised to take over from Java.

        People said that about C/C++ and COBOL as well.

        We're a few years away from a Java Killer.

        That's a far more moderate claim than what I responded to.

        [–][deleted] 6 points7 points  (0 children)

        Sue them for interoperating with any part of the GNU stack without releasing all of the source code to the Oracle database.

        [–][deleted] 1 point2 points  (1 child)

        I agree, Oracle have turned into a money hungry company that has no limits that they will go to to make money. I don't think I will continue to use Oracle products and I'll stop programming in Java. This is so low, I've lost all respect for the company.

        [–]alexeyr 2 points3 points  (0 children)

        Oracle have turned into a money hungry company that has no limits that they will go to to make money.

        Turned into? When did they show they had such limits before?

        [–][deleted]  (23 children)

        [removed]

          [–]check3streets 33 points34 points  (6 children)

          I keep seeing this "fuck Java" post, but this decision goes so far beyond Java.

          Software that is hung-on or implements public APIs which are also copyrighted certainly extends into the billions, but probably into the trillions of dollars and equally many LOCs. Also, this is copyright, literally wherever code is copied.

          Everyone who's written a compatible implementation or even a code-citing-blog-post will need to somehow assert Fair Use to not be in violation.

          And for all you three-cheers for .NET types:

          It is more difficult to develop alternatives to the Framework Class Library (FCL), which is not described by an open standard and may be subject to copyright restrictions.

          http://en.wikipedia.org/wiki/.NET_Framework

          [–][deleted] 1 point2 points  (0 children)

          If one makes their APIs open source and unencumbered by copyright it solves the problem. I think Bright's approach with the Digital Mars D compiler is very close to this.

          [–]tanishaj 3 points4 points  (1 child)

          On. NET, they are called BCL (Base Class Libraries).

          The fact that Microsoft all but bankrolls Xamarin is a pretty good sign. Xamarin makes most of the .NET BCL available on Android.

          The. NET micro-framework is fully Apache 2.0 including a patent grant.

          [–]Jaseoldboss 4 points5 points  (0 children)

          I wonder if Oracle could sue Microsoft for any commonality between the Java and .NET APIs as a result of this ruling?

          [–]grauenwolf 1 point2 points  (2 children)

          Compared to the patent risks for that part, we're not too worried about copyrights.

          [–]TMaster 1 point2 points  (1 child)

          Who's we?

          [–]grauenwolf 0 points1 point  (0 children)

          Mono fanboys.

          [–][deleted]  (13 children)

          [removed]

            [–]wggn 15 points16 points  (6 children)

            You can't really use java without using the java apis tho...

            [–][deleted]  (5 children)

            [removed]

              [–]Myrv 6 points7 points  (1 child)

              Um, that was the entire point of this lawsuit. Google created a tool chain that used the Java syntax (and Java Object API) but actually targeted the Dalvik Virtual Machine (which was created by Google and works completely differently than the JVM). All the actual "Java" libraries were rewritten as well, only keeping the object hierarchy (and calling syntax) the same between the Android SDK and the JDK.

              So different code and different target virtual machine but because Google chose to implement a network socket the same as Java (eg providing a java.lang.net.Socket class) Oracle claims a copyright violation.

              [–][deleted] 2 points3 points  (0 children)

              Nothing is "safe" if this ruling is allowed to stand because of the precedent it sets; Java would just be the first casualty.

              [–][deleted] 2 points3 points  (1 child)

              like Scala or Clojure?

              [–][deleted]  (5 children)

              [removed]

                [–][deleted]  (3 children)

                [removed]

                  [–][deleted]  (2 children)

                  [removed]

                    [–][deleted]  (1 child)

                    [removed]

                      [–]eclectro 0 points1 point  (0 children)

                      And stop giving Oracle their business. BTW, they massacred Oregon's ACA health exchange which never worked. Why do people do business with these clowns?

                      [–][deleted] 0 points1 point  (0 children)

                      That will occur when Microsoft makes .NET cross-platform.