I'd say almost every software engineer should be rooting for Google here. The implications of being able to claim copyright infringement on anyone implementing an Application Programming Interface are staggering - it would impact every open source project that tried to interoperate with any company's services, for instance.
The world is not going to be better for extending the protections Oracle wants here.
The appeals court fucked this up, hard. I would like to think Alsup's ruling will be upheld -- groklaw has fantastic quotes from him during the trial. At one point, he himself notes he had coded from the spec some of the functions Oracle complained about and disagreed with Oracle counsel statements. Refreshing from our judicial branch, to say the least.
Also, Oracle just sucks in general. Larry Ellison is a notorious jerk and philanderer. Oracle's entire business is based on the success of one expensive database product from the 70s, which is mostly still in use due to decades-long vendor lock-in of stagnant enterprise giants like SAP, IBM, most banks and a good chunk of the DoD.
Notorious jerk is an understatement. He’s literally a garbage human being and a liar.
My last company was entangled in the Oracle web of vendor lock in. Before renewing our contracts, Oracle wanted literal access to our proprietary code - much of which is older code that mixes business logic and logic that works directly with Oracles products. Many of the algorithms we had implemented were 100% proprietary and secrets - not something we want just anyone to see, especially a competitor. On top of that, this company had IT contractors that had built all kinds of functionality using one off features only available in Oracle - shit that didn’t scale with new and upcoming use cases but also just a huge pain in the ass to migrate off of.
People think AWS or Azure risk vendor lock in. Oh boy you do not know what true evil actually is - Oracle literally prays on this happening. It’s the foundation of their business model. Not features, not innovation, nothing else - but solely ensuring your customers have no alternative but to use your products at whatever cost you want or drown in litigation.
Humans love to see the bad guy lose. Larry Ellison has built a business out of lock-in and lawsuits against his own customers. People hate to see that kind of antisocial behaviour rewarded.
No, them fighting on the side of what's good for the industry is what makes them the good guys in this case, not the fact that they're fighting Oracle. If the positions were switched, I would be biting my tongue and rooting for Oracle.
Yeah, let me know when PostgreSQL does distributed transactions across database clusters, or provides a proper development environment for stored procedures.
What about removing Oracle's devs contributions from Linux kernel?
yawn There are other databases systems doing that, no need to depend on Oracle. For example: http://erlang.org/faq/mnesia.html which is also associated with a programming language known for its quality distributed computing.
Removing contributions to the Linux kernel? I don't think so. The kernel is free software and people contribute to it knowing that it is free software, so they cannot hold any code hostage. Once you release as free software, you give up that control.
I’ve never heard of anyone who actually uses mnesia for real or would consider it prime-time. I’m no Oracle fanboy but comparing their DB to mnesia is like comparing an oil rig driller to a fisher price screwdriver.
> never heard of anyone who actually uses mnesia for real
I didn't till I had to become one of them this year. Mnesia is real, it's prime time, but not in place of something like Oracle.
> comparing an oil rig driller to a fisher price screwdriver.
Better analogy would be Comparing SQL Server to Redis. Mnesia is, at it's heart, a(n optionally) Transactional K-V lookup that can be run distributed. It's use case it works VERY well, but I wouldn't consider it a substitute for Relational storage.
Basically, as soon as something is released as free software, you must have the 4 freedoms: use, study, share, improve. This means, that it is not important, who contributed the code and what else they did, in the context of using that code in any of the 4 freedoms ways. It frees the code from the control of the creator in that sense and the creator cannot take it back. Anyone who releases as free software will give up such control.
Oracle once having provided something to free software (My guess: They only did it because the GPL forced them to.) does not mean, that we have to like Oracle. These two things are not connected.
I am not sure about the state of Mnesia, however, I wrote, that it is an example. If I had found a Wikipedia list of DDBMS, I would have posted that. However, I am sure knowledgeable people will be able to name a few more.
Linux would hardly gotten where it is without the contributions from everyone getting paychecks from IBM, Intel, Oracle, NVidia, AMD, Apple, Sony, Google, Facebook, Microsoft, Huawei, Samsung among many others.
Which is kind of ironic, hate them, but then willing accepting whatever comes from them, 'cause hey it is free.
You could also say that Google wouldn't have gotten anywhere without Linux, as they really depended on lots of cheap hardware and software. Humans are connected, which is a great thing (that what makes us human).
There are many conflations in these statements of yours, but one of the more offensive is that corporations are responsible for an individual's open-source contributions because that individual draws a paycheck for something else. What's the corporate equivalent of a bootlicker? An NDA-licker?
What I don't get is how someone can hate companies like Oracle, wish that they would disapeer out of the face of the earth, and at the same time jump of joy when a couple of lines get added to the Linux kernel, by the corporation they want to nuke.
if they offer it under gpl, it's no poison chalice. why do i care who does the right thing? what's good is good.
i would be more worried when they propose that we all abandon this adequate gpl tool for this permissive licensed code they seriously didn't write, but here's ten fantastic contributions they made.
That's a good thing right? I mean, I'm not implying that Google is on the opposite side of this, but still, I'd wager most people on HN would love to be a Larry Ellison (riches aside), where you get start a product today, and still be relevant with that same product 40 years from now.
I honestly don't get the Oracle hate from HN people, even if I do understand it from the Slashdot folks.
I previously worked at Oracle for years in the dotcom era and I can tell you the company culture was horrid. It was completely sales driven, sales people would often lie to customers and promise the product had a feature which it either didn’t have or was not well supported and then have to fly in expensive consultants afterwards to fix the resulting shitshow.
I accompanied Sales Account managers with fellow female engineers to client meeting where they, and I’m not kidding, discussed which strip clubs they would go to after the meetings.
If Apple is a designer culture, and Google is an engineer culture, then I‘d say Oracle is driven by a hierarchy of sales culture.
Another perspective is that Oracle is one of just a few tech companies left that has a proper dedicated research lab that does long-term research without asking about profit. I worked on my research project there for six years and nobody once asked me how we were going to make money from it, let alone talked about sales. That’s pretty special these days.
Oracle even paid me a senior developer salary while I worked on my PhD. Hard to say that’s ‘completely sales driven!’
Yeah but saying it to me (a male) would still be tone deaf, right? There are no locker rooms even in locker rooms these days. All I'm saying is, it being in front of me is disgusting enough.
I'm not afraid or uncomfortable with expressions of sexuality but a boardroom is hardly an appropriate place for it. I don't understand the argument that just because something is a normal part of life it somehow becomes ok to talk about it anywhere. Taking a shit is a normal part of life, that doesn't make it ok to discuss your weekly bowl movements in the board room. In different social settings there are different levels of comfort between people. You can be ok with strip clubs, there are perfectly valid opinions for and against them, but I come to a board room to discuss business, not your sexuality.
If it was the topic of the board meeting, definitely not appropriate, but otherwise it's just the conversation was not meant for you. Can you imagine the abuse I'd catch if I complained about overhearing women talk about their periods? Or, to make it more fair, planning some kind of hypersexualized bachelorette party.
Please explain to me how it's worse? I find it offensive because it's discussion of sexuality and a sexually charged topic in a massively inappropriate setting. If I was a female, why should I feel worse? Just because the performers there are female?
Yes. It's like saying if your colleagues are using the N-word and making racist statements, would African Americans in the room feel worse than the white people? Yes they would.
No matter how "woke" or allied you think you are, there's no way the lived experience of a white person reacts the same way to people reinforcing systemic racism than that of those who have to live under that experience.
It would be really good to have a product which is relevant after 40 years WITHOUT adopting business model of an organized crime syndicate. In other words: Having a product which is relevant after 40 years.
I've worked at Oracle in an engineering (not management) position, and I've seen the (tail end) of the way they interact with acquisitions. I tend to be somewhat guarded about talking about it -- I don't see a benefit to me badmouthing a former employer. But, I'll be open and honest for this comment.
The analogy I use to describe Oracle is that they're this kind of massive lumbering beast that just lays around and occasionally swallows other companies alive and whole. Then those companies run around inside, burning existing customer good will for a while until Oracle finishes digesting them or generating whatever news-reports or vendor lock-in they wanted in the first place. Then Oracle goes out to find another company to eat.
I saw a slow movement with my particular department away from developing useful software towards, "just keep on releasing things, just keep on trying to figure out what looks good at trade shows, just keep the department moving forward like a zombie while it gets eaten away and resources get shifted to new acquisitions and lawyers and salespeople." The software wasn't even a secondary concern, it was just a very minor part of the company that happened on the side. Writing code was a side-effect of the business, our real business was sales and grand promises and multi-year contracts that everyone was going to regret.
As a developer that wants to build products that actually help businesses and users, it felt really, really bad -- and my impression interacting with other parts of the business and other departments felt the same. Like they were just kind of lumbering on, that they existed because a few companies were locked in or were still buying them, and a few more dollars could be extracted before they starved to death or until their staff was fully absorbed into new projects.
I won't go into any more specific detail than that; for better or worse I feel like I have some responsibility to be a little vague. But by the time I left I was convinced that any company Oracle bought or any project it maintained was doomed as soon as they touched it. It's one of the reasons I won't work with Java -- I just don't want to tie myself to a technology that's owned by a company like that.
The current case with Sun is to me perfectly in character with the company. Oracle bought Sun, killed everything that made it Sun, and now their lawyers are out trying to extract every last penny they can get out of its mostly rotted corpse, all under the guise of 'protecting their investment' or whatever.
I'm very cynical on Oracle now, and I wasn't even at the company very long. Since moving on I've been able to work on industry-scale software that's actually being designed for customers and that actually cares about helping them accomplish business goals. It's a massive breath of fresh air that I'm still grateful for to this day. It makes a huge difference to be able to get up in the morning and feel like there's an actual reason you're going to work beyond buying Ellison a new yacht.
It's one of the reasons I won't work with Java -- I just don't want to tie myself to a technology that's owned by a company like that.
Somewhat amusingly, Java becomes more dangerous to use if Oracle wins this case, because they would then be able to kill OpenJDK and any other implementations whenever they want.
Not everyone strives for a relevant product just because of vendor lock-in, I'd wager most of HN would rather make good, portable products that only stay relevant due to continued hard work and incremental feature upgrades.
I ... don't know about everyone else here, but personally I'd rather become a McAfee than an Ellison. At least John has this thing called sense of humor.
Honestly, they need to put it into layman's terms.
The exposed function calls of an API are meant to be implementation-blind.
Let's say car-company A builds the first ever car that's operated with a steering wheel, gas pedal, brake pedal, clutch pedal, and shifter.
Then, Company B comes along and - both to create a complete control system for the car AND to potentially benefit consumers who are already familiar with those controls - also uses a steering wheel, gas pedal, brake pedal, clutch pedal, and shifter.
The steering column and its inner workings are completely different. The gas pedal activates a V8 combustion engine instead of an I4. The clutch pedal triggers a dual clutch for faster shifting between gears. The brake pedal activates disc brakes instead of drum-brakes.
The appeals court is, in effect, saying that Company B has violated copyright because, when faced with the same problem, they came up with a solution that looks very similar on the outside. They turn a blind eye - willingly or unwillingly - to all the new engineering that went on to improve the product and create a new expression of an automobile.
Exactly this. Oracle is nothing but a common patent troll here.
They bought SUN for one and only one purpose..... to sue Google.
I know someone involved in the preliminary investigations into this.
It is not a secret at all. It would be awesome if Google would take
the Cloudflare approach and try to crowdsource prior art for all of
Oracle's patents. (Best case, 1M software patents go away on all sides)
Hopefully as things continue to the cloud with private options
and their loss of the JEDI contract puts them right out of business.
Why would they buy it if they weren't interested in the prospect of suing other people with it? In hindsight it would be a great defensive buy,but there's no way they could foresee this shit storm caused by this absurd lawsuit.
Issue exists with instruction sets as well. If Oracle wins everyone who has written a compiler for an instruction set they did not have explicit permission to write one for is in violation.
There's probably a better case for compilers being fair use than this (not that this doesn't have a great case).
I'd be more concerned about emulators and actual chips. People have been assuming that copyright doesn't apply to APIs for so long that I'm sure there's any number of cases of accidental "copyright infringement as defined by Oracle". I'm just not sure that compilers are a prime example (at least as relating to instruction sets).
"Probably". Hah. That just shows the ramifications of Oracle winning this case are fucking insane. We've been operating as if this stuff isn't copyrightable for the last 50 years. You may as well burn the whole industry to the ground if they have their way.
The EU has similar cases occur. For example between Lego and Best-Lock over what features of lego are copyrightable versus which are functional (and their competitors' minifigures are also designed to "interoperate" with lego bricks)
Yeah. As can be seen in that case they are focusing on things that are mandatory (non copyrightable) and those that are just stylistic choices (copyrightable).
API compatibility doesn’t have any stylistic choices in it.
Could you de-copyright things in this manner? Say I make locks that only open when they hear music from Disney's lion king. Are you allowed to play that song to open the lock, even without opening it? Does it matter if it was disney or me that made the lock?
Silly example of course, can't think of any better. Feel free to substitute your own.
For anyone to care you'd have to be an adversary of the manufacturer who published the specification. Generally they publish these details in order to encourage people to port OSs and compilers.
If a tree infringes in the woods and the silicon manufacturer doesn't hear it...
Then you, for example, write a compiler for SPARC in 1990 and distribute it for twenty years, only to see Oracle buy Sun and then decide they'd rather sue you for twenty years of copyright infringement than maintain your cooperation in continuing to produce a compiler for a processor architecture they're planning to discontinue.
The current state of Java support on Android proves that Google has achieved their own variant of J++, forcing Java library authors to write Android Java, if they wish to support the platform.
"James Gosling Triangulation's Interview on Google vs. Sun"
The way to get there isn't the same, the impact on Java library authors it is.
Even Jake Wharton already complained about this publicly, and he is now working at Google, go figure.
> Happy Tuesday Android developers! Java 13 out today. Java 8 is now 5½ years old. Here's your bi-yearly reminder that Android is holding back the Java library and language ecosystem.
> The Android platform is on the cusp of holding Kotlin back. New bytecodes not being available both in the Dalvik set but also on devices in the ecosystem means Kotlin is forced to target older Java bytecode versions which can hinder new language functionality.
> Kotlin is great but there's no reason anyone should need to target Java 6 bytecode and APIs in 2019. IntelliJ platform switched to 8 in 2016.1 and 11 in 2019.1. Servers are mostly 8 trending towards 11.
So we are just in the same position as if J++ would be kept being a product, any Java library author that wants to have market share on Android needs to constrain themselves to the Android's view of what means to be Java.
And I have to bow to Jake as he is doing a very good job adding support to R8 and D8, to at very least desugar modern Java features into Android Java.
But by that logic, any large organization using an old JVM version and requiring developers to target that version would be holding back the Java ecosystem.
> any Java library author that wants to have market share on Android
Had Google used a completely different language instead, this market wouldn't exist at all, and Java library authors wouldn't even have the option of choosing to target it.
I don't disagree that Google's handling of the language is bad, but that doesn't mean it should be illegal. Creating a bad legal precedent harms us all.
IDE, debuggers, bytecode libraries, build systems, profilers, all of them had to deal with “up to date Java implementations”. Which hurts adoption.
Not just because of this issue, but because of tons of other mistakes made by Oracle: users shouted, Oracle ignored.
The net result is inertia is high, but Java is stable declining. Existing projects continue to be developed in Java, new projects often choose something else.
Microsoft signed an agreement with Sun and advertised the fact that they were Java compatible. "Forcing Java library authors to write multiple versions" was never a factor in either lawsuits.
Only if they rewrite the world in Jawa and stop advertising compatibility with the Java eco-system, then they can use Jawa, Dart, Kotlin/Native, whatever they fell like.
Android Java is a subset of cherry picked features of Java and its standard library, with support varying across Android version.
GCC is an ISO C++ and ISO C compliant compiler, plus a set of language extensions.
Any ISO C++ or ISO C code will compile under GCC.
Not every piece of standard compliant Java code will compile under Android Java.
Not only this produces a burden writting portable Java libraries, it creates a false perception to many developers that learned Java via Android and assume Android Java == Java.
The later point is usually used by Google when they sell how Kotlin fares against Java, because naturally if they would compare it against a proper up to date version, some of the plus points wouldn't uphold.
> Isn't the way the law is written the real root cause here? Judges and courts don't write laws...
This is a complicated question, but I would argue that the answer is no. Congress trying to anticipate every corner case ahead of time would be a nightmare, so instead the courts exist to take general laws and apply them to specific cases.
Even if congress tried to write a law with no unspecified edge cases, they would fail, because any law they pass has to be within the powers granted to them by the constitution, and those powers are vague. The relevant power here is literally "[the United States Congress shall have power] To promote the Progress of Science and useful Arts, by securing for limited Times to Authors and Inventors the exclusive Right to their respective Writings and Discoveries". That's it, one sentence, it's vague and there is no fixing it. If congress tries to legislate something that falls a bit outside of it, or that violates any of the various rights and freedoms specified in equally vague sentences, the law, at least as applied such that is violates the constitution, doesn't exist.
It's also not quite true that judges and courts don't write law in our common law system. They do, that's what the "common" part is about. Statutory law takes precedence, common law fills in the gaps. Here's an example of a case where the Texas Supreme Court directly addresses that they are creating new exceptions to the law, and that they can do so because the relevant law in the first place was invented by the courts: https://www.casemine.com/judgement/us/59148e86add7b04934555a...
Yeah, fancy a scumbag using the legal system to hold people to ransom with their worthless and bogus claim.
Sounds a bit like what Peter Vessenes is doing to 25,000 creditors of MtGox, even after being offered an incredibly generous $10 million dollar kiss off.
Not copyrightable APIs is a fairly dangerous precedent.
1. Good APIs are hard.
2. Under Alsup's ruling, good luck competing with AWS sales org when they decide to offer your own APIs as a service.
3. Nothing prevents Google from inventing their own APIs, and licensing them under whatever terms they like.
As of Google vs. Oracle, it's pretty clear that Google appropriated Java to benefit from its penetration in the market place, instead of putting in the hard work to build their own. Apple has built their own ecosystem, ObjectiveC/Cocoa/Swift/SwiftUI. Microsoft has built their own ecosystem, C#/DotNet, or adopted and contributed to open standards, HTML5/Javascript/Typescript. Heck, even HP has built WebOS around open standards.
good luck competing with AWS sales org when they decide to offer your own APIs as a service
If the only advantage you have over AWS is that developers would have to change the function names in their code, you're dead anyway. And copyrightable APIs mean that you can't offer an API compatible with AWS as a way to get developers to try your platform in the first place.
So...I guess this api signature for string concatenation is on the verge of being owned by oracle forever. Perhaps I can create a non-derived work by adding a few extra arguments.
I'd bet that isolated examples couldn't be copyrighted any more than a single sentence in a novel couldn't be copyrighted. Doesn't it have to do with the whole work?
The case is about APIs, not the whole work. By their very nature, all APIs are both:
1. Single sentence.
2. Usually obvious. In fact, just about every API definition in the above linked String method list is blatantly obvious, and many of the APIs look similar to ones in various other completely incompatible languages.
So even if you argue the copyrighted work is comprised of the whole set of APIs, it may be patent-able as an invention, but it does not seem reasonable to suggest it be protected by copyright.
The better question is would this case mean someone already has the copyright on push, pop, enqueue, dequeue? Someone originally came up with all those APIs, and they (or the people they were working for or otherwise sold it to) would would own any copyright.
(The answer is probably no, I'm sure a half decent lawyer would manage to distinguish that from this case since it is so simple).
I wonder how those idiot judges on the appeals court would feel if a bunch of programmers with Sharpies ran rampant through their law books, altering the long-established order of things with essentially no knowledge of what they were doing. It's a shame the universe doesn't provide for karmic retribution at this level.
Downvote if you like, but there's no other way to describe the absence of de minimis exceptions besides "idiocy." These judges are essentially monkeys in a machine shop.
Perhaps they are not idiots, they are just trying to apply laws written for books and music to software. That is not their fault, they don't get to make laws, only interpret them.
I think this is another case where the law makers have been rather slow to keep up. Copyright is not really working in this era.
Those are too abstract as described. Could you copyright an implementation of those? Yes. And if someone did you shouldn't infringe on theirs you should write your own. But that's not new, you can find tons of different basic data structure implementations out there, with a variety of licenses.
Yes and no, I guess if that's what they meant then yes I was nitpicking but I took it literally (lots of folks confuse concepts between patents, copyrights and trademarks. Less common on HN but still happens. )
Why does it matter? The API is as dead as the telegraph, everyone is just building garden walls higher instead.
I worked on and with lots of APIs back in the day. They are all gone. All of them. Eliminated for business reasons. The internet has become a tool for carving out fiefdoms of engagement to be monetized, it's not about connecting people or systems anymore.
I am one of those fools who "lost their life savings": $11k, that my father worked diligently to gather for me over many years. It still haunts me today that I squandered years of a person's life with such a decision. And yes, I would be happy to recover some of the money -- I supposedly am owed 7.7 BTC if Mt. Gox pays out.
Now, all that said, I am really not happy to see your comment here. And since I paid $11 thousand dollars to be in a position to reply to you, I think I will: it wouldn't matter if he murdered someone. You can't just come up on a completely unrelated thread and be like "It makes me sick to see you here on HN."
Ultimately, we have all made our choices, and part of those choices involved taking risks. That's why it's called a risk. I theoretically would have gained some ~$100k from my risk, but instead I lost my father's hard work. But I consider myself much richer for the lesson: I can pass this knowledge on to my own children so that they will be better positioned not to make similar mistakes.
As someone who has spent countless nights agonizing over such things, my advice is this: make peace with yourself. Externalizing like this only makes everything worse. If Satan himself wanted to leave a thoughtful, relevant HN comment, Satan should be permitted to do so without being harassed. There are very few communities where such an important rule is the norm, and it's worth preserving that culture.
Hey sillysaurus, I've seen you around for years on here so I knew you're one of the people who lost a lot and I'm happy you're at peace with it. I'm someone who only lost a little so I'm not losing sleep over it.
That's not why I'm attacking Peter even while that's against my favorite forum's rules and I might get banned for it. I don't think Peter is comparable to Satan. Peter also hasn't murdered someone, he's not committed an act that stemmed out of emotion, or a great need, or that he regrets.
Peter is a human being that has made the decision to put his greed ahead of tens of thousands of people. At any moment could he say, "ok I'm sorry this was a bad idea" and stop and still gain millions of dollars. He doesn't. He is consciously hurting people for a possibility to make this absurd amount of money.
In my frame of ethics, I can't just let him go around unharassed. If he goes unharassed it means that I, or we as a community, are ok with people behaving in an unethical manner. I'm sorry you had to witness my comment, I know it hurts the thread, but I just can't not make it.
I think I speak for many people on here when I say, we don't care about your drama and don't want this forum to turn into another failed Reddit social justice crusade forum.
If the poster above has an informative post, I'll upvote it regardless of who he is.
I usually don’t respond to comments like this because they tend to inflame the conversation; I can tell you care, so I’ll take a shot here at saying my perspective in hopes that it might help add some understanding.
I’m sorry you both lost money and had it locked off for years; many people in the world, including me have had the same experience. I’m not the cause of your loss, and I’m not in control of its return.
Some longer thoughts on the case below; if it expands your perspective all good.
What we have asked for in the six years since we sounded the warning on mt gox insolvency with our suit (a full year of public warning for everyone who used gox) is a fair trial. The trustee repeatedly slowed or stopped that process, including going to the extraordinary measure of helping get Tibanne into bankruptcy six weeks before our US trial so that the case would be stayed. Before then Mark avoided the suit so aggressively that we had to go through The Hague convention to even serve him papers.
That was many many years ago. We have never slowed a single court date or asked for a single extension. We just believe we are owed a fair adjudication of our contract and have proceeded both in confidence on the merits of our case and with the fundamental confidence that a party harmed by breach of a contract has the right to have damages determined.
The narrative that we are the hold up is absolutely not true. In fact, we have never even been offered a settlement from the trustee which we could accept or reject. The trustee cheerfully went to court in venues he thought he could win, even negotiating for a return of some of mutum sigillums seized funds in the US; he could have had a ruling years ago from a US proceeding if he had wanted it. He clearly did not want that.
We just want a ruling from an independent court on our 2012 contract, a contract made during an era of $10 bitcoin with a man who ended up committing US federal money laundering crimes, ‘lost’ 500k+ of the public’s bitcoin and has since been imprisoned.
Public tweets or essays speculating we want something else come from two places - either from those who have decided, a priori, that our contract must not have been valid and therefore doesn’t even deserve due process and ergo is just a form of petulant spoiling, or are funded by VERY large claim holders in a sort of PR based pressure process.
All that said, I would be very happy to continue to talk with you about this in person or on a live chat; my email is vessenes@gmail.com: feel free to reach out to me to continue this dialogue.
As to who has a right to be where online, I will say over the years I have left some of my own thoughts about my career here and benefited immensely from others doing the same. I’d like for there to be places like this that aren’t gate-kept even if people are fighting.
If you look back in my post history you will see one of my first posts/comments is about deciding not to go into business with Jed Mccaleb when he was running gox out of his bedroom in Costa Rica, long before either of us had heard of Mark Karpeles; I think that’s a cool bit of history!
I liked and appreciated the HN community 10 years ago, and hope to be appreciating it in another 10.
> We just believe we are owed a fair adjudication of our contract and have proceeded both in confidence on the merits of our case and with the fundamental confidence that a party harmed by breach of a contract has the right to have damages determined.
Yeah, only problem is your "we only want what's fair" narrative is sliiighly undermined by the fact that you started with a $75M claim, then went to $16B!!!! and now that the $16B claim got thoroughly rejected you changed it to $500M. You ran wild with the $16B claim because the assessment phase didn't require any court fees and you picked the biggest number you could think of, to block the process. Now for the appeal you actually need to pay court fees as a % of your claim and being well aware that the $16B figure is ridiculous, you changed it to a number that's still big enough ($500M) to block the process but you don't have to pay that much court fees.
Not to mention that your contract with Mark only stipulates $50M of liquidated damages and the rest of your claim is based on potential lost revenue if MtGox never went bankrupt. This is not a thing in Japan or anywhere in the world. You know that very well and your lawyers know it very well. The most you could hope for is the $50M and the rest of your claim is just there to block the process and extort the creditors. So, please, drop the "we only want what's fair" charade. You can only fool people not familiar with the case, which is probably what you're after.
It’s a public forum with particular guidelines. Personal attacks that have nothing to do with the topic at hand are very explicitly against those guidelines.
While the breach/fraud/mix of both/whatever happened was basically out of your control (though should've been considered as a risk; paper wallets have been around as a much more secure storage mechanism for a while), a similar scenario could've occurred if Bitcoin crashed and you sold low, or if it crashed and never recovered.
I don't understand why someone would put 100% of something into a highly volatile and risky investment. Even if this were the ordinary stock market and it was 100% of your savings invested into one or two companies, it'd seem just as absurd.
I know people can do their own research but if you're posting about someone directly like this, maybe share a link so those of us who don't know can easily find out more about this case.
I'm part of the lawsuit that he's blocking, so you could take my word for it that that news article is correct. He has since lowered the claim amount to half a billion, which is still an insane amount that's too large for letting the bankruptcy just proceed.
>You should be ashamed of yourself, at least own it and make your comments under a pseudonym
I've found that this community will turn a blind eye to fraud and corruption, as long as it's done in the name of "disruption" and you're a "tech company".
Could it be changing? I used to be in that camp 10 years ago but in the past couple years my mind changed as these companies became much more nasty in their desperate quest for profitability; I'm sure I'm not the only one in this situation.
I don't think that has ever been true. What companies that are lauded in this community engage in fraud and corruption?
Some people side with the hotel's and the taxi drivers versus AirBnB and Uber, but I don't think circumventing rules and regulations to significantly improve these services is quite the same as fraud and corruption. Especially considering those industries are frequently associated with fraud and corruption themselves.
Not that I don't think Uber and AirBnB have manoeuvred themselves into positions of power that they are abusing or exploiting, but that just means they should be better regulated.
I didn't do that, but I know many who did (like one commenter above) and they exposed their savings to a risk and they got hit. That could have been the end of it and it would have been a sad story, but maybe a good lesson.
That's irrelevant to Peter's unethical behavior though. If you trip because you didn't tie your laces running to the ice cream van, you don't "deserve" people kicking you while you're down. That doesn't make any sense.
Did you read the content? Google did copy the private API’s. I am a legacy Java person and it is blatant theft. Not rooting for Oracle in any sense, but it was a total copy.
Google screwed over Sun Microsystems. Let’s not forget that all this started before Oracle.
The original Java license mandates that mobile usage is differently licensed. Google basically writhed their own JVM just to bypass this - not for any other technical reasons.
I understand that. I was specifically replying to the assertion that "Google screwed over Sun Microsystems". No, they did not. They decided on a path that they believed was legally defensible and would allow them to do their own thing with Java at lower cost. It might turn out that they're wrong, but no one tried to screw over anyone. It was purely an economic decision.
And if it turns out that Google loses this case, then all sorts of things that we take for granted for interoperability (like WINE, and, before the MS acquisition, Mono) are actually copyright infringement and shouldn't exist. I don't think we can claim with a straight face that WINE or Mono were created with malice intended toward MS, so we should give Google the same courtesy.
I don't think that's "begging the question". Google's corporate counsel determined current law allows for clean room reimplementation, so that's what they did. This was subsequently challenged, and that's where we are now. This isn't a case of Natural Law where the decision is commonsensical -- it's up to the courts to make an evaluation based on other established caselaw (in this case copyright), and there's certainly room for interpretation.
This is a fight over whether Oracle can get existing Supreme Court and Ninth Circuit precedent overturned to make clean room reimplementation no longer legal.
Sure, but instead they decided to capitalize on the existing market of J2ME and Symbian Java developers with tricks to sidestep Java licensing on mobile devices.
And nowadays Android holds hostage any Java developer that wants to target Android, because one needs to constrain ourselves to Android Java's view of the world.
But this case isn’t about consuming or interacting with an API, it’s about implementing an API. So less writing a compiler targeting a CPU instruction set and more building a CPU based on someone else’s instruction set.
I’ve always found it strange that other programmers are so dismissive of APIs as copyrightable work. They’re they hard part! Building APIs requires creativity and careful thought.
If you support the idea that APIs can’t be copyrighted, and ignoring the evilness of Oracle and Google, what’s your reasoning?
> If you support the idea that APIs can’t be copyrighted, and ignoring the evilness of Oracle and Google, what’s your reasoning?
Copyright is the thing that applies to works of authorship, like short stories and music. You can't copyright a fuel pump for a jet engine. You can't copyright function. That's patents, not copyright.
Software is somewhat unusual in that it's at the same time a work of authorship (code, copyrightable), and a set instructions for a machine to interpret (functional), and pure mathematics (facts about the universe, not subject to patent or copyright).
But an API is at the intersection of the functional part and the factual part. What distinguishes a literary work from a fact is that the literary work leaves room for creative expression. A copyright on an expression of a fact isn't a copyright on the fact itself, because someone else doesn't have to use your expression. They can create their own expression, so you having a copyright over your expression doesn't exclude them from using or conveying the same factual information.
When someone creates an implementation of an API, the API itself is a fact about how to interact with implementations of that API. There isn't any other way to interact with other implementations, so there is no room for creative expression in that aspect of a compatible implementation, so there is nothing there to copyright. You have to use the same API for entirely functional reasons or it's not compatible. And you can't copyright function.
But is that enough? Let's use a deliberately extreme example to test its limits: Skyrim mods.
Does the presence of third party Skyrim mods mean that everything they refer to is an API and therefore non-copyright? The game geometry, maps, characters and events are facts about Skyrim that those mods need to operate. Does this therefore imply that a hypothetical person could sell their own re-implementation of Skyrim on the grounds that all those things (characters, missions, events, geometry, models, etc) were function required for mods to continue to operate?
Or, to stretch it in a different direction, let's suppose I write some functions. If you write some functions that call them, presumably my API is therefore functionality and non-copyright? But what about if you don't call them, and only I happen to write calling code. It's still an API, it's still functionality required for other code to operate (my own), so is it still non-copyright?
What about whether I mark my code public? If I omit "public" from the same function definitions so they can't be called externally do the definitions become artistic and copyright? If so then is the artistry in the lack of a public keyword? If not then is any code structure copyright - it's all functionality that calling functions requires to operate.
Yes, that's deliberately playing logic games and taking things to extremes to see if there's a clear line in the sand. It's going to be interesting to see what the court determines, anyway, because it seems like a big question.
> Does this therefore imply that a hypothetical person could sell their own re-implementation of Skyrim on the grounds that all those things (characters, missions, events, geometry, models, etc) were function required for mods to continue to operate?
You're supposing that function being uncopyrightable narrows the copyright in the expression, but they're really just two completely different things.
Let's try an even more extreme example. Remember those anti-piracy book codes from a few decades ago? They'd sell a game with a printed manual and then to start the game you'd have to type in the third word of paragraph two on page seven of the manual.
We'll take the game copyright itself out of the equation by saying that the software is cheating by trying to restrict a copyright year 1800 work (expired copyright) using a copyright year 2000 book.
The book itself is clearly subject to copyright. It could be Harry Potter for all that matters. But the third word of paragraph two on page seven? That's a fact about the book. As is the fourth word of paragraph two on page seven, and so on.
If you collect every single fact about the book, you have all the information you need to reproduce a copy of the book. That neither means that facts are copyrightable nor that books are not. If you used all the facts to reproduce a printed copy of the book, that would clearly be copyright infringement. But if you collected and used all the facts only to solve the book code, not so much. Interoperability is solving the book code, not reproducing the book. Function, not expression.
And it has nothing to do with publication vs. secrecy because that's a copyright thing. Facts are facts whether you intended anybody else to know them or not.
I think the answer lies in compatibility and lock-in. Software and even hardware gets built against APIs. If APIs are protectable through copyright and a single entity can control who can and cannot implement that API as a provider, then everyone who has built software that consumes the API will be locked into doing business with a single company or its approved providers. As software engineers, most of us value the ability to compete and be interoperable and we recognized APIs becoming protected as enabling a new era of walled gardens and barriers to creating competing products.
We cheered for Compaq when they reverse engineered the IBM PC and started selling computers that could run software built for the IBM. We cheered Linux when it created a free alternative to the proprietary Unix interface. We cheered WINE when it made Windows APIs available under Linux. This kind of interoperability gives the rest of us the ability to reuse our own software without being beholden to the companies that created the original target platform.
Incidentally, there's a slight distinction in wording around API copyrights. I don't think there's a doubt that they can be copyrighted. Anything that is written down, recorded or filmed automatically receives copyright protection. The interesting question is whether there is a fair use exemption for interoperability. I think it would be obviously wrong if Google had taken Java and its APIs, renamed it Gava and then started pushing developers to write Gava software instead of Java. But they didn't, they just made Java be able to run on a new class of devices. If all you're doing is helping to ensure that existing code written by other developers can work with your product, that's a benefit for those developers too as well as the end users that buy and run the software.
> Anything that is written down, recorded or filmed automatically receives copyright protection.
This is factually untrue. Many things written down, recorded, and filmed do not receive copyright protection in the united states. A common example is recipes.
There is extremely good reason to think that APIs specifically fall into the set of things that can not be copyrighted. That's what the original ruling in this case was (overturned on appeal by the federal circuit). That's what a good portion of Google's brief argues.
Regarding the point in the first paragraph: In that case, that is a legislative issue. A judiciary is not empowered to be lenient in their judgment on copyright infringement because of compatibility and lock-in.
Case law strongly disagrees with you on this point.
Most relevant to this case is the merger doctrine. Ideas that can be expressed in only a small number of ways are not copyrightable.
Even more on point to your comment is the concept of copyright misuse. If you try to use your copyright (a government granted temporary monopoly on the reproduction of your work) to gain monopolies on other things you can not only lose the infringement case but in extreme cases even lose the copyright entirely.
> Most relevant to this case is the merger doctrine. Ideas that can be expressed in only a small number of ways are not copyrightable.
The CC's opinion is of interest here:
> We further find that the district court erred in focusing its merger analysis on the options available to Google at the time of copying. It is well-established that copyrightability and the scope of protectable activity are to be evaluated at the time of creation, not at the time of infringement. See Apple Computer, Inc. v. Formula Int'l, Inc., 725 F.2d 521, 524 (9th Cir.1984) (quoting National Commission on New Technological Uses of Copyrighted Works, Final Report at 21 (1979) ("CONTU Report") (recognizing that the Copyright Act was designed "to protect all works of authorship from the moment of their fixation in any tangible medium of expression")). The focus is, therefore, on the options that were available to Sun/Oracle at the time it created the API packages. Of course, once Sun/Oracle created "java.lang.Math.max," programmers who want to use that particular package have to call it by that name. But, as the court acknowledged, nothing prevented Google from writing its own declaring code, along with its own implementing code, to achieve the same result. In such circumstances, the chosen expression simply does not merge with the idea being expressed.[7]
> copyright misuse
Inoperability with customers who have decided to use a service or product or lock-in due to said inoperability itself does not necessarily make the provider of the original service a monopoly.
Interoperability arguments have relevance in fair-use, but the courts have yet to determine if Google has a right to the APIs under fair use. Google and others may be entitled to the APIs under fair use, but the CC has determined that the SSO of APIs are copyrightable.
And fair use is yet another can of uncertainty, since usurpation of market share counts negatively to one's case for fair use.
====
In the case of APIs, a competing service can create a functionally identical competing API, but differently structured and organized and named, and then provide a competitor2us.sh script to help their customers migrate.
Note that copyright misuse is a separate doctrine from fair use, and unlike fair use it is not effected by any usurpation of market share.
That said, I think fair use is more likely to apply than copyright misuse in this case. I just brought it up as one way that the judiciary is empowered to be lenient in their judgment on copyright infringement because of compatibility and lock-in.
> you can not only lose the infringement case but in extreme cases even lose the copyright entirely.
Does the work become public domain or government royalty subject in that case? If the latter, it is worse since the government cannot be sued for copyright misuse, either.
> If you support the idea that APIs can’t be copyrighted, and ignoring the evilness of Oracle and Google, what’s your reasoning?
The reasoning is quite simple and obvious: We have long-standing statutory and case law that defines specifically what is or isn't eligible for copyright protection, or patents, or trademarks. Your gut feelings about whether your API deserves protection because of how much effort you put into it are completely irrelevant to that legal framework.
Seems like circular reasoning to say that the things that can be copyrighted are the things that we have agreed can be copyrighted. Seems like if the courts decide that APIs are copyrightable then you would be fine with it since it would be part of that case law.
There was a time when software didn’t have copyright protection. Somebody had to make the first move.
It's not circular reasoning. The flow is clear: the Constitution gives Congress the power to make copyright law, Congress passed laws doing so, and the courts work out the details at the margins for stuff Congress didn't make explicit. Software is very much explicitly mentioned by the copyright laws that have been passed by Congress, so there's no reasonable doubt about the legal foundation there. API copyright isn't explicitly supported by statutory law, so for the courts to affirm API copyright on their own, they need to provide a convincing derivation of its existence as implicitly covered by existing statute. I doubt they can do so, and they obviously cannot do so without overturning a lot of previous precedent.
And all of the above is about the legal, technical questions about what the law is. The public policy question of what the law should be is a different matter entirely, and opinions about that generally should be addressed to Congress, not the Supreme Court.
> APIs are functional, not artistic. They belong in the domain of patent law, not copyright.
I think you're mixing up different types of intellectual property:
- Trademarks are intended to identify a source. Trademarks cannot be functional, they have to be descriptive.
- Copyright must express a creative idea. That idea can be artistic, or functional. Computer code and APIs can be copyrighted (as they most often are), but they can also be patented.
- Patents cover inventions with some utility. One can definitely patent a piece of art if it provides some utility.
It's not uncommon for companies to throw all three at whatever they are cooking up.
Implementors aren't piggybacking on APIs because they can't come up with anything better, they can ... easily. They are implementing those APIs because they want compiled Java programs to run on their runtime.
This case is more nuanced than that. Google is not copying the Java API for interoperability with existing Java programs — they’re copying the Java API to provide a familiar environment for Java developers. I agree the former ought to be fair use but the latter I’m less sure of.
Aren't you unfairly privileging the idea of a Java program over that of a Java library? A wholly-packaged Java program may not have interoperability with Android, but lots of libraries don't have that problem. There are plenty of copyrighted works written in Java that are fully compatible with Android.
If they happen to be lucky enough to use the cherry picked features from OpenJDK (cause they are now using it, but only the parts/packages they care about), not taking advantage of newer JVM bytecodes and ideally written in a Java 7 style.
I don’t disagree at all, but the question isn’t “are there pieces of existing software that run on both” but “is that the reason that Google copied the API or is it a side effect?”
I'd argue that that is the wrong question, motive doesn't come into play in this law (specifically: The merger doctrine). You should rather be asking the hypothetical version. If someone tried to make a second system that could run the software, would they have had to copy the API? If so the API is not copyrightable.
The existence of those works that run on both means you really need to start coughing up evidence for your repeated assertion that Google's motives were strictly about something else.
>they’re copying the Java API to provide a familiar environment for Java developers
Well, that's a difference without meaning. Familiarity with the syntax is important but we're not talking about copyrighting the language structure and syntax.
The other aspect is that of the wider ecosystem. Once you commit to Java, you have to reimplement the existing APIs because every Java library relies on those APIs. And it is that ecosystem that is the true value prop. The API itself isn't special itself (in fact, the Java one is frequently maligned for how bad it is), and devs adapt quickly to different ones when they move to another programming language. There would be no point in selecting the Java language without being able to partake in the ecosystem, no matter how brilliant the API design is. And if it was brilliant, they could have aped it in another language (Dart?) ... I'm making an assumption that presumably adapting the API to another language would be fine by you? Because if not, the mess you would cause in the industry would be immeasurable.
I agree. I don't think APIs should be copyrightable, but in a world where some little piece of a tune reminds of another tune and therefore is deemed infringing on copyright.. There is similar intellectual effort behind both.
We will see what happens but I can see the argument why it should be copyrightable from a pure "intellectual property is property" standpoint.
But I also think that it is better for the world with much less copyright protection in general.
The short answer is: I think the law clearly supports the idea that copyright does not extend to APIs, and if copyright did extend to APIs it would be disastrous for the American software industry, and given America's large influence the world at large.
Google's brief probably provides the best version of the legal arguments, that being their job. Read the text under the heading "The Federal Circuit erred in holding that the Java API declarations were copyrightable." on pages 16 to 21 and the text under "This Court Should Grant Review To Decide Whether, As The Jury Found, Petitioner’s Use Of A Software Interface In The Context Of Creating A New Computer Program Constitutes Fair Use" on pages 21 to 29. I personally find the merger doctrine arguments particularly convincing, starting on page 17. Here's a direct link https://www.supremecourt.gov/DocketPDF/18/18-956/81532/20190...
As for why it would be disastrous for the software industry, I particularly like this amicus brief, and would suggest reading section 2. It was written by 78 particularly famous computer scientists, including Steve Wozniak, Guido van Rossum, Ken Thompson, Bjarne Stroustrup, Martin Odersky, Peter Norvig, Brian Kernighan, and Alan Kay. https://www.supremecourt.gov/DocketPDF/18/18-956/89487/20190...
Here's an except, where one of the programmers for Java says that while he was creating Java's standard libraries he copied APIs in the same way ("Amicus" in this context means one of the computer scientists who wrote this brief to help better inform the court)
> Sun reimplemented existing APIs for Java. Java reimplemented C’s math API,which includes methods for calculating a variety of mathematical functions. While at Sun, amicus Joshua Bloch oversaw Sun’s reimplementation of the Perl programming language’s regular expression API for Java, which allows sophisticated text searches and alterations. Oracle’s attempt to copyright Java’s API and hold Google liable for infringement of the resulting java.util.regex API ignores Java’s own history of API reimplementation.
Here's an excerpt about an API you are probably familiar with, which hopefully underlies just how bad a compatability nightmare this ruling will create
> In 1983, the Berkeley Systems Research Group released the Berkeley Systems Distribution (BSD) sockets API. Sockets control the endpoints for any communication over the Internet. Because the BSD sockets API was not copyrighted, it became widely adopted: Every major operating system reimplemented it to enable Internet communication. Thus, programmers can write standardized software compatible across computers to manage Internet connectivity.
Designing APIs != Building APIs. Saying Oracle can copyright the Java APIs is like saying you can copyright the HTML5 specification, making it so the authors are the only ones who can implement HTML5.
> it would impact every open source project that tried to interoperate with any company's services, for instance.
This is categorically untrue. The discussion is not about anything called "API" but only certain kinds of APIs (code APIs, as opposed to protocols like REST "APIs"), and even then there is fair use.
What about the legal arguments made makes a distinction between "code" and "REST" APIs like you're doing? I've been reading the decisions and haven't seen anything like that.
Me neither and I even used ctrl-f. It seems the impact could taint anything loosly called an API. I make an API that is loosly linked to three competing API around then same data. Some of this leads to each of us suing the others.
Anyone can sue anyone over anything right now. The whole purpose of the court system is not to blindly apply any ruling to any other loosely coupled event, especially over the use of borrowed words, but to focus on the nuances and peculiarities of each case laid in front of it. That's what the courts are for, and why human judges and juries pass judgment rather than algorithms.
The legal arguments in any case pertain only to that case, but it is a necessary condition for a work to be covered by copyright is that it "fixed in a tangible medium of expression"[1], i.e. that there is some fixed text (or a picture, or an audio or video recording) that is the work (although once it exists, derivatives are also protected). This is true for a code API, but not for a protocol.
That schema could be copyrighted, but not equivalent ones, because the protocol isn't its schema. That's like saying that an algorithm can be "fixed" by writing a program that performs it, but if you do that, only the program (and its derivations) are protected, not the algorithm (the algorithms can be patented but not copyrighted). A program (including its code API) is a piece of text, and then its derivations are covered. A protocol, like an algorithm, is an idea that could be made into a piece of text, but the US copyright code explicitly states that that idea itself is not copyrighted.
For example, you and I could go to a sporting event and write down a description of it. Both of our descriptions are copyrighted, and any derivation of mine or yours are protected, but your description is not a violation of mine and vice versa, and neither is any other description by someone who saw the event but didn't derive her description from mine or yours.
Similarly for software, BTW. If you look at what a program does and then write a new program that does the same thing -- that's not copyright infringement, as you didn't derive your program from the fixed work of the original.
This whole case is about the "Structure, Sequence, and Organization" of the API. It's the abstract collection of API entry points, not any specific implementations. Yes, it's openly in conflict of previous definitions of copyright.
Yet again, I am not talking about whether code API is copyrighted or not; I'm just saying that regardless of the ruling, protocols aren't copyrighted. I said nothing about a particular implementation, but a code API, unlike a REST protocol, is a fixed expression. If that fixed expression is copyrighted, then what the copyright protects is a whole other discussion. Harry Potter is a fixed expression, but once applied, its copyright doesn't protect just a particular sequence of words, but various derivations of it as well (like translations). As to whether or not what this case is about is "in conflict with previous definitions of copyright," I have no opinion of the matter.
Yet again, the distinction you're making isn't one rooted in these rulings. The combo of striking down de minimus and entertaining that APIs can have copyright applies equally to REST, unless you can come up with a way for a server to not have the endpoint string literals in their code.
What you're describing is "how it should be", not the current state of the world.
Why would the distinction be rooted in the ruling? If there are, say, three conditions for copyrightability, and a work satisfies the first to but the third is unclear, then why would the ruling in that particular case even mention works that don't satisfy the first condition?
> applies equally to REST
Nope. This is a case about a verbatim copy of about two hundred pages of text (11,500 lines). There are interesting legal questions about whether or not the text is copyrighted (because software copyright is more limited than some other forms of copyright), but REST protocols aren't a fixed piece of text to begin with. They are just not works that copyright law deals with.
> unless you can come up with a way for a server to not have the endpoint string literals in their code.
There is no problem with string literals. None of the words in Harry Potter is copyrighted, and most books, or program with string literals, containing all of them don't infringe on Harry Potter's copyright.
How do you define, implement, or use a REST endpoint, without verbatim using the endpoint names?
And the length of the verbatim copying doesn't matter, because these same ruling are rejecting de minimus claims.
Like please look up the legal rulings here. They're using different tests than you normally see with copyright. You're spreading a lot of misinformation here.
> How do you define, implement, or use a REST endpoint, without verbatim using the endpoint names?
You can use names verbatim. You can write a book with the names "Harry" and "Ron" and even "Dumbledore" without violating Harry Potter's copyright. In fact, if you take Harry Potter, translate it to French and change all the names so that not a single word is copied verbatim, that is a copyright violation. But regardless of what you copy, in order for a work to be protected by copyright at all, it must be some fixed piece of text (or an image, or an audio/video recording). REST protocols aren't.
> They're using different tests than you normally see with copyright. You're spreading a lot of misinformation here.
I'm not talking about this case, but about why this case doesn't apply -- whatever the result -- to REST protocols. What you linked to is about the following: Once a work is protected by copyright, what kind of derivations are disallowed? For example, Harry Potter is copyrighted, but I don't make a verbatim copy but a French translation. Is that protected or not? What about basic plot lines? But any such discussions are irrelevant to algorithms and protocols, which are not copyrightable works to begin with. There is also a question about code APIs, because there are other necessary conditions for copyright, but there's no question about protocols, as they don't satisfy the first condition -- there is no fixed work at all. Anyone who says this could affect protocols is spreading misinformation. Whether code APIs are copyrighted or not, protocols, like algorithms, aren't.
If this ruling passes the Supreme Court, you can't anymore in the context of software. That's the whole point of what has people up in arms. These points of copyright are left to the courts, and they can change the rules if they see fit.
I really don't understand your outright refusal to read the ruling or even the damn wiki page.
I won't be responding to you anymore until you make a good faith effort.
> If this ruling passes the Supreme Court, you can't anymore in the context of software.
This is simply and totally untrue; it is nothing but uninformed panic. If you think otherwise, please point me to what makes you think that. In any event, a protocol is not a copyrightable work regardless of the result of this case, for reasons that have nothing at all to do with the discussion about the copyrightability of code APIs. Code APIs satisfy the basic necessary conditions for copyright, and there is debate over more nuanced ones. Protocols, like REST APIs, don't even satisfy the first requirement of copyright law -- they are not a work fixed in any tangible medium -- so they are completely irrelevant. Again, programs are copyrighted, algorithms are not -- even if the algorithms contain some fixed strings in them. If you don't understand that distinction, there is really no point in going further.
> I really don't understand your outright refusal to read the ruling or even the damn wiki page.
I have read pretty much everything written about this case, and the actual rulings. But understanding the basic tenets of copyright law is necessary in order to make sense of what you read.
The question of SSO is, once a work is copyrighted, is its SSO protected similarly to translation? For example, Harry Potter is copyrighted; if I copy the basic structure from Harry Potter is that an infringement? That's the subject of the discussion, which takes as a given that software is copyrighted. In the case of protocols -- like in the case of algorithms -- there is no work from the perspective of copyright law, so questions of what transformations of the work could constitute infringement are irrelevant.
I think that many people don't understand that copyright works like a two-stage process. First there needs to be a work satisfying some requirement to which copyright applies; second, once such a work exists, different kinds of deriving other works from it are determined to be infringing or not. This court case is about the second part, as it is recognized that software is a copyrighted work, and all discussions about the second step (like SSO) are under the assumption that the first step is OK. Protocols and algorithms don't even pass the first step, so any discusssion about the second does not concern them.
Example: I decide to to cleanroom reimplement Google's search REST API. Google hits me with a lawsuit for violating the SSO of the REST API as implemented by the Google Web Services executable and source.
Any protocol worth protecting will have a tangible expression they can point to whether it be code or documentation. The need for a tangible expression doesn't make a practical difference in the de facto copyright of the REST API.
You keep using literary examples even though SSO treats software differently. I will be ignoring any literary allusions from now on, please use actual case law about software.
> Google hits me with a lawsuit for violating the SSO of the REST API as implemented by the Google Web Services executable and source.
No, it doesn't work like that, just as if you implement an algorithm that's at the core of another program (without deriving your code from that other program) you don't infringe on the other program's copyright.
> Any protocol worth protecting will have a tangible expression they can point to whether it be code or documentation.
I don't know how to explain it any better than I have, so I'll mention yet again that your point applies to algorithms, and yet they are not copyrightable.
If you have a paper describing an algorithm, the paper is copyrighted, but the algorithm it describes is not. If you copy or translate the paper you may be in violation of its copyright; if you implement the algorithm described -- you are not. Same goes for recipe books, by the way. If you copy the recipe you could be in violation; if you implement it -- i.e. cook according to it -- you are not.
That the program is a fixed expression that manifests the algorithm or protocol is irrelevant. You are not allowed to infringe on the program's copyright, but the protocol or algorithm it describes are not copyrighted to begin with.
> please use actual case law about software.
Protocols are not software. SSO is irrelevant to them. Their relationship to software is the same as that of algorithms to software, and SSO doesn't apply to algorithms either, because they are not copyrighted works.
Any argument you'd like to make why this case has any bearing on protocols would also need to be compatible with the fact that programs are copyrighted while algorithms are not. If you make an argument that would also cover algorithms you can know you've made a wrong turn somewhere.
Neither my example nor the facts of Oracle v Google are dependent on copying of algorithms due to both being clean room reimplementations with the minimum verbatim copying needed for API compatibility.
Since you obviously aren't interested in a good faith discussion that doesn't involve you adding strawmen, I shall bid you good day.
I think you intentionally misunderstand my point or we're completely talking past each other. This case isn't about protocols just as much as it isn't about algorithms. The only relationship between this case and protocols is that in recent years some have taken to calling them APIs. No matter what the result of this case is, it will have no effect on protocols, just as it will have no effect on algorithms, or on bananas. From the perspective of copyright laws, these things are completely different categories, no matter what mental connections you can draw between them. I only bring up algorithm to help you understand that even though algorithms and programs have a similar relationship to that between protocols and code APIs, copyright law is not concerned with algorithms although it is with programs, so that same connection between protocols and code APIs is equally irrelevant to copyright law. But if you're not able to understand why programs are copyrighted but not algorithms, you won't be able to understand why code APIs could possibly be copyrighted but definitely not protocols.
> if you're not able to understand why programs are copyrighted but not algorithms, you won't be able to understand why code APIs could possibly be copyrighted but definitely not protocols.
The lack of copyright protection for algorithms was never in question here until you started bringing it up.
Protocols aren't copyrighted regardless of whether code APIs are for the same reason algorithms are not copyrighted even though programs are. Any argument you make that if APIs are copyrighted then so are protocols would also lead you to conclude that since programs are copyrighted, then so are algorithms. The latter is untrue, and so is the former.
For example, you said above that a program implementing a protocol becomes its fixed expression, and so every implementation of the protocol would violate that program's copyright. Well, that same argument can be applied to incorrectly conclude that algorithms are copyrighted as well. Same goes for an argument about certain fixed strings. I've explained directly why those arguments don't work, but if you don't understand the explanation, perhaps seeing that your argument would also apply for algorithms make you realize you've made a bad turn somewhere. To claim that this case affects protocols you'll need an argument that cannot be used to claim algorithms are copyrighted, too. If it can be -- it's a wrong argument.
> Same goes for an argument about certain fixed strings.
The fact that you don't see the difference between copying an abstract idea like an algorithm compared to literal copying of the names necessary for the structure, sequence, and organization of the API belies your ignorance wrt to copyright.
One involves no "this piece of the original is listed here in the reimplementation, verbatim" and the other does.
So far you've given no examples as to why you think that literal copying of SSO of a clean room code library reimplementation isn't equivalent to literal copying of SSO of a clean room REST server reimplementation.
I think you're confusing the "fixed text" requirement with the question of whether the Java language constrains the declaration of an API to a unique textual representation. The latter is more or less true, but the declaration that the compiler ingests isn't the only way to describe a Java API in writing.
The two things are completely separate, but having a fixed expression is a necessary requirement. If I go to a sporting event and describe it in an article, then my article is copyrighted, and derivations of it are protected (translations etc.). But there could also be other people who wrote different original articles describing the same event, each of them is copyrighted, but none a derivation of the other or of mine. But the fact that all of those articles are different descriptions of the same match doesn't mean they're not all copyrighted, and that their derivations aren't protected. Each of those articles is a fixed expression, but the game itself isn't.
Send a GET request to some_website.com/some_protocol to get back a jpg of a cat
I wrote it down, and thus it was "fixed in a tangible medium of expression". As I understand that requirement of the law that is all that is required.
If I just told you that verbally, and we did not write it down, record what I was saying via a mic, or anything else, then it would not be fixed. No one does protocols like that though.
What you have here is a particular description of a REST protocol that is fixed, and indeed, if it fulfills the other requirements of copyrightability, it could be copyrighted, and I wouldn't be allowed to, say, sell T-shirts with that sentence printed on them. But if you developed a protocol and I asked you what is the work that you have produced, that work wouldn't be that sentence, but the algorithm it describes.
The same applies to algorithms, BTW. If I write and publish an algorithm, it is possible that my paper and even the particular pseudocode I used is copyrighted, but that's not "the work" (of the algorithm) nor is it a part of it. That is why even though the paper is copyrighted, the algorithm itself is not, although it could perhaps be patented. As confusing as it may sound, in the US the situation is: the paper describing the algorithm is copyrighted, a program implementing the algorithm is copyrighted, the algorithm itself cannot be, but it can be patented.
Whether or not code APIs can be copyrighted, they are different from protocols just as programs are different from algorithms, as a certain fixed piece of text is certainly an important part of the work. That may not be a sufficient condition for copyright, but it is a necessary one.
If Oracle is right, copyright protects the "[not relevant to the case] GET [not relevant to the case] <base_url>/some_protocol [not relevant to the case]" and it would be copyright infringement.
Well really I'd probably need to have a few more APIs involved, such that I have a tree structure similar to classes, but the point stands.
All that this subdiscussion was discussing was whether or not REST APIs are fixed in a medium as required, they are.
No, because the fixed portions are too small to be copyrighted, and they're also not creative. Being a fixed expression is just one of many necessary conditions, not a sufficient one. Also, not every copying of a copyrighted work is an infringement.
> they are.
They most certainly are not. If you think REST protocols are like code APIs, you should be able to explain why algorithms are not copyrightable but programs are. The law already makes a distinction between those two, so you'll need to explain why that distinction does not apply for protocols vs. APIs.
> Being a fixed expression is just one of many necessary conditions
And yet it is the only one you raised, and the only one I responded to in this thread. You are moving the goal posts. If these posts were legal briefs the judge would say you have waived the rest of your arguments and I would have won (Waiving arguments being the legal equivalent to moving goalposts).
Because it is the difference between protocols and APIs, and why, regardless of the status of code APIs, protocols cannot be copyrighted. This is also the difference between programs and algorithms.
But you seem to have interpreted the necessary condition that a work must be fixed in order to be eligible for copyright as "any fixed portion of a work is copyrightable." This is untrue both because being fixed is necessary but insufficient for copyright, and because tiny portions of a work aren't works in themselves. Also, I have not claimed that anything that might be called an API and is fixed is necessarily copyrightable. I only said what is definitely not copyrighted. So no goalposts have been moved, you just misunderstood the necessary condition and my point: Protocols (like algorithms), unlike code APIs (and programs), aren't fixed, and so cannot be copyrighted regardless of anything else that may or may not be. That some tiny portions of a protocol might be fixed does not change the status of the work.
A story I tell you in a bar and a written story may seem like the same thing to you, but one of them is copyrighted and the other isn't. A feature that may seem incidental to you is an essential one to copyright law. To copyright law it matter a great deal exactly how some expression is made, and how it is fixed to some recording medium. In particular, it requires that there exists some particular piece of text that can be called the work. This just doesn't exist for a protocol (there are many original texts that could describe the protocol), but it does exist for a code API.
How is there a difference here between "code APIs" and "rest APIs"? Both are simply interfaces which allow two pieces of code to talk to each other, the only difference is the protocol used (HTTP vs the platform's ABI)
Because copyright law doesn't care just about the purpose of a creative work, but also about its precise form and medium of expression. Why? That's a whole other discussion.
I don't love everything about Google, but the enemy of my enemy is my friend. If Oracle wins, that precedent will hurt everyone in the software industry, including me.
So yeah, I'm rooting for Google and I have no hesitation or shame rooting for Google -- because for better or worse, Google is the company fighting for my rights in this case, and I want to win.
Not surprisingly but this comment / position gets downvoted and yet plenty of approval for "Also, Oracle just sucks in general. Larry Ellison is a notorious jerk and philanderer...."
(I'm all for crapping on Oracle, I guess the lesson is to weave that into any post on this topic).
On the contrary, I’m actually not 100% sure who’s side I should be in on...
Look at it this way, if oracle loses, then what’s the implications of the software licenses in general. The whole point is that they were protected by copyright. If that’s shot down, then what’s at stake?
Not saying I side one way or the other, simply that I don’t think it’s clear. Depending how the court rules one way or the other could have a huge impact (as you pointed out).
> Look at it this way, if oracle loses, then what’s the implications of the software licenses in general. The whole point is that they were protected by copyright. If that’s shot down, then what’s at stake?
An Oracle loss would not damage the legal framework that the software industry has been operating under. Oracle's loss would only confirm the non-existence of a new class of copyright that Oracle is trying to invent (one that appears to be patent protections with copyright duration, enforced in part by trademarks). An Oracle loss would not undermine the legal foundations of existing copyrights on code that implements an API.
Software licenses still work exactly the way we've always thought they do if the federal circuits ruling is shot down. Copyright still works exactly the way we've always thought it done.
No one has ever thought that you could stop people from copying APIs. If they did all sorts of things like Linux (hi Unix), Wine, Windows Subsystem For Linux, AMD x86 CPUs (ok, Intel might have licensed them to avoid anti trust issues), Intel x64 CPUs, and so on would not exist.
Oracle isn't complaining about their software copyright. They are complaining about their API copyright. They believe that they own the idea of a tool os where one tool is called "println" and another tool is called "math.sqrt". Their work was never copied, only their naming scheme.
Seriously people - read the comment before down-voting it. A flood of down-votes coming in in less time than it takes to read what I wrote implies that you aren't even considering the argument I'm presenting.
I hate to say it, but I'm with Oracle on this - but not for any reason that I've seen mentioned (so I guess I want neither party to win).
(Notwithstanding Sun's internal excitement at Google's use of Java prior to the Oracle acquisition.)
There is a justification on the grounds of obviousness for certain method headers to be uncopyrightable.
But for inobvious and complicated method headers I do not believe that the restriction should prevent the API from being subject to copyright, but rather to limit the applicability of the copyright for fair use purposes.
Specifically I believe the copyrights on such interfaces should not be applicable where interoperability is the justification for the reuse of the interface.
Google broke compatibility with Java. I do not believe that Google is using the API under fair use constraints.
I'm not sure how the law operates here - but I believe that the precedent set by a Google victory would be more damaging to my position.
I'd like to see Google lose, and for someone later - operating with cross-compatibility in mind - to present and win a fair use case for reuse of an API.
Let's assume everything you said except the conclusion is right (I disagree with almost all of it, but for the purposes of this discussion I'll put that aside since it's better argued in the fine legal briefs).
Why does fair use for interoperability require perfect interoperability? That seems like a totally unreasonable bar. It would mean that making some fraction of an API ridiculously complex to implement a way from stopping anyone from implementing the rest of it.
I'm not talking perfect interoperability - I believe that substitutability should be the bar.
Google produced something that is not substitutable in either direction, so what I perceive as the reasonable fair use argument cannot be used here.
What do you mean it's not substantial? People use the same java libraries on android and servers all the time, thanks to being able to use a shared standard library API (the supposedly copyrighted material in question in this case).
You seem to be arbitrarily setting the scope for substitutability to Java as a whole, but why? Why can't it be e.g. individual classes, or even methods on them? Two pieces of Java code pretty much never need the entirety of J2SE API to interact.
The destruction of interoperability wasn't the goal in mind with Android either. Java ME sucked, and SE is somehow even a worse fit for phones. The fundamental process model destroys battery life, hence the switch in Android to that model that'll shut the app down basically at any time and allow it to save state, so it can come back to where it was later. In addition to that, an IPC system was added (which basically doesn't exist in Java ME), and a bunch of support for devices that are only accessible in Java via 3rd party libraries anyway. Oh, and the lack of swing. But come on, even Eclipse doesn't use swing.
I'll admit that I'm not sure how the law operates here myself. But I worry that because fair use is an affirmative defense, your formulation opens the door to something like a platform vendor analog to SLAPP suits. That is: it seems like if I, as the legally anointed steward of a platform, believe that your leveraging of my API is in line with my business model, I can decide not to sue you. If you try to compete with me (even in a venue that isn't using said API), I can decide to sue you just to make you incur the cost of defense. The particular burden of platform fragmentation and how it interacts with trademark law is a pretty subjective thing, so I suppose Oracle ultimately gets to make a prospective competitor relitigate Apple v. Franklin and Sega v. Accolade and Oracle v. Google Every. Single. Goddamned. Time. They. Want.
I don't disagree with you about that being a danger - but I don't think that the solution to bad faith operators in copyright is to bring the system down any more than I believe it to be the answer in patent law.
I think that the system desperately needs to more actively punish those who abuse the legal system.
If a case is found to be frivolous I belief that the plaintiff should have to pay both fines and damages. The plaintiff's lawyers should also be punished - warnings, fines and eventual disbarment.
I'd prefer it if it didn't to come to that, and they lack the budget to do all that needs to be done, the system simply lacks enough good operators to act as a counterpoint to those operating in bad faith.
I think when you need that counterpoint at all, it's the system as a whole that needs to change.
But this is getting way off topic.
> Specifically I believe the copyrights on such interfaces should not be applicable where interoperability is the justification for the reuse of the interface. Google broke compatibility with Java.
You cannot make good law on this basis. Requiring compliance to a compatibility standard written by Oracle would give Oracle all the power, and render that kind of fair use exception effectively impossible to exercise. There's no good way to define what kind and degree of interoperability should qualify. The only regulatory option that doesn't trivially collapse into a complete win for Oracle is for API copyrights to not exist in the first place.
Not all of which will be Oracle certified, I would argue that each and every one of them should be free to exist regardless of that fact, on the grounds of fair use.
The courts have never been black and white entities - and there has long existed the legal notions of best and reasonable efforts. Which I think should be the standard by which a competing implementations interoperability should be judged.
This also ties in to another part of another response that I had not addressed - the reasonable efforts standard would protect against being required to implement needlessly complex parts of API.
Postulating a "reasonable effort" legal standard does absolutely nothing to answer the more important questions about what kind and degree of compatibility should be considered the goal. Whether it's judged strictly or with some leeway, we still need to know who other than Oracle gets to decide how much compatibility with Java would be necessary for fair use to unquestionably apply.
The mistake you are making is assuming Oracle is, and will continue to operate in good faith, judging by their past history of rent extraction maximization, that is absolutely not the case.
I know full well that Oracle isn't operating in good faith, it never has it never will - I have made no statement regarding Oracle's intention or nature (which I generally find to be malignant).
In this instance, I believe both parties to be operating in bad faith.
My position is relatively simple, and despite the hate it seems to have inspired I stand by it: A complex API is a creative work that deserves the protections of copyright, fair use limitations should be applicable based upon a need for the existence of interoperable software.
If you allow it to "deserve the protections of copyright" then it absolutely will be abused to ensure that inter-operation, and thus not violating Oracles copyright, is impossible.
Both copyright and patent law is already abused to a significant degree - that does not mean that the protections provided provide no worth or are unjustified.
The problem is a system that rewards bad actors - and yes Oracle is one of those bad actors.
The solution is to improve the system to disincentivise bad actors while continuing to provide time limited protections to those operating in good faith.
As I've mentioned in other comments best and reasonable efforts are standards already used in the legal system - and there is no reason that those standards could not be applied to reimplementation efforts.
All of the arguments that I've seen against what I'm suggesting are based around abuse of the system by bad faith actors - I think that they can be disincentivised without tearing it all down.
The best way to disincentivise bad actors is to not give them a nuclear bomb to go threaten people with.
The legal system has largely failed in constraining copyright and patent abuse, and indeed has been key in massively expanding their reach (See "business process" patents and software patents, as well as stuff like the DMCA to shut down basically anything that involves interfacing with things).
API copyright is absolutely a _new_ concept invented whole cloth by the court, what advantage do you think it brings, vs the heavy tax on literally every piece of software ever created it imposes (after all CPU instruction sets are APIs).
You have repeatedly failed to present any actual advantage it provides beyond "it was hard work". What new APIs are going to exist because of this new law, that did not exist beforehand? What is the point of even trying to design a system where supposedly only "good faith" is rewarded? (good luck with that one)
Copyright is not about ownership because you created something, it is about benefit to society, that's why it expires and the public domain exists and also does not apply to all works.
I hate to say it, but I’m not optimistic about Google’s case here. From a purely technical point of view, APIs being free to reuse is an awesome thing that makes for a more vibrant and competitive software ecosystem.
At the same time, Oracle’s characterization of their API as “original software” is not entirely off base, as anyone who has spent time and energy creating and API would know. The amount of design and work required to create an elegant and useful API is huge, and while it would irreparably harm software as a field to call it copyrightable, calling it anything other than an “original” work is a weak position.
Personally, I’m dreading the outcome of this case.
We have precedent that game mechanics can't be copyrighted -- they get classified as "inventions" and have to be patented instead.
Obviously IANAL, but to me as a game designer, mechanics aren't any less creative work than narrative. In fact, I'm spending more of my creative energy on mechanics than I am on story. So the lines to me just seem incredibly arbitrary, or at least I don't understand the legal differences well enough to figure out intuitively where they lie. I am incredibly grateful that game mechanics can't be copyrighted, but game mechanics don't feel like inventions to me. A game mechanic is how I express an idea.
I tried to make a prediction about which way this would go, and I genuinely don't know -- not even that my prediction is uncertain, I don't feel like I know enough to even make a prediction at all.
It does make me nervous. I think it's important that the Supreme Court hear it, and I'm glad they agreed to, but it would be utterly disastrous if this got decided in Oracle's favor. My (perhaps incorrect) impression is that the Supreme Court is not particularly fond of the 9th, and have something of a history of slapping down attempts at copyright expansion. A ruling against Oracle would be fantastic, and would maybe even open the door for talking about blocking copyright on grounds of compatibility.
I guess I'm just nervous because it feels like the stakes are really high.
At this point, there's nothing really that people like me can do, right? It's just up to Oracle and Google's lawyers?
Furthermore the 9th Circuit does the most basis and almost all of their court cases are not taken up by the Supreme Court, that means less than 1% of Court Cases are overturned.
Source for numbers but other places have written about this.
I'm thinking specifically about copyright, not the 9th circuit's rulings overall. I don't know if that would make a difference from the overall stats you link to.
Although having just said that, the Blurred Lines, "these songs sound similar so that's good enough to say they're infringing" case didn't get overturned, and I think that's almost as dangerous a precedent as this. And a few other commenters are saying that it's actually more just patent-law expansion that the Supreme Court has been wary of.
So maybe it's entirely wishful thinking on my part.
I dunno. I just want someone to tell me it's all going to turn out OK :)
I would definitely characterize more than 3/4 of appealed cases being overturned and within 10% of the most overturned court as "not particularly fond"!
You can't seriously say "more than 3/4 of appealed cases being overturned" and "within 10% of the most overturned court" as if they are both significant in the same sentence.
The supreme court (according to the same article) overturns 70% of all cases it takes. The 9th circuit (and 3/4) is within 10% of the average.
> At this point, there's nothing really that people like me can do, right? It's just up to Oracle and Google's lawyers?
Yes, with regard to this case, there’s nothing we can do at this point.
In the longer term, it’s up to law makers on the state and federal level to address shortcomings and expansions of copyright law. So vote! (Or, I guess if you are particularly wealthy, lobby!)
> Obviously IANAL, but to me as a game designer, mechanics aren't any less creative work than narrative.
I agree, to me it is a bit annoying seeing asset flips like Wargroove being hailed as new innovative games. They took the units from Advance wars straight offs. AA gun -> Wizard (fast good against infantry and air but weak against armor), Light-Tank -> Knight (fast, good against most targets and armored), Medium Tank -> Giant (slow heavy unit), Recon -> Dogs (very good against infantry, see invisible units), AA missile launcher -> Ballista (ranged unit that only attacks air), Bomber -> Dragon (strong flyer that only attacks ground) etc.
I don't think that anyone making an original game would have made those choices, like why can dragons only attack ground targets? Makes sense for bombers, not for dragons. Why are wizards so fast and weak against armored targets? Usually it is the other way around. Why can ballista only attack air? Historically they were used against ground targets, etc etc. The only original unit in wargroove not straight up taken from Advance wars is the Amphibian.
I wonder how much faster they got their game made thanks to just stealing the entire combat system from Advance wars...
You're right, this is CAFC, where all patent matters end up (the case originally involved a patent dispute, but that was dropped very early).
SCOTUS has not looked kindly on CAFC when it comes to patents, almost always overturning CAFC's decisions as being utter lunacy. I hope that same skepticism will transfer to copyright.
The 9th is involved in spirit because the Federal Circuit was in principle bound to apply 9th Circuit law on the copyright claims (which, arguably, they did not do.)
But that's mostly immaterial at the Supreme Court, as the Supreme Court isn't deciding based on whether the CAFC correctly applied 9th Circuit precedent.
The appellate ruling originated from the Federal Circuit, but only because Oracle's suit included a patent claim that didn't last long—the Federal Circuit is the appellate court for all patent-related stuff. For the non-patent stuff (ie. the copyright stuff), the Federal Circuit was supposed to follow precedent from the local circuit: the 9th. They didn't.
Taking time and energy doesn't define copyright. There's tons of acts that take time and energy, and don't grant you a century long government backed monopoly on anything almost like it.
For instance, recipes, and tables of contents aren't copyrightable.
Going into case law, Sony v Bleem made it pretty clear that clean room reimplementations of APIs are on the table.
Going into US code, the otherwise crappy DMCA explicitly allows reverse engineering for interoperability. ie. interoperability even when the original vendor won't even tell you what the API is.
Going into practicalities, who owns SQL? Who owns POSIX?
The entire idea that APIs can have copyright is blatantly in contrast to decades of law, and is only happening because the CAFC is going off on it's own and ignoring 9th circuit precedent.
For those who would like more detail on this, the major case on this in the US is Feist Publications, Inc., v. Rural Telephone Service Co., 499 U.S. 340 (1991) [1].
This is not necessarily the case in other countries. See [2].
> The legality of the emulator is not at issue in this lawsuit.
> The issue in this appeal is the validity of the method by which Bleem is advertising its product.
> In various advertising media, Bleem has included comparative "screen shots" of Sony PlayStation games.
> We conclude that it is a fair use for Bleem to advertise comparatively only between what PlayStation games actually look like on a television and what they actually look like on a computer when played with the emulator.
The technical point of view needs to be combined with the legal one here, and —
> At the same time, Oracle’s characterization of their API as “original software” is not entirely off base, as anyone who has spent time and energy creating and API would know. The amount of design and work required to create an elegant and useful API is huge, and while it would irreparably harm software as a field to call it copyrightable, calling it anything other than an “original” work is a weak position.
just because something takes a lot of work, that doesn't automatically mean it is copyrightable.
An API doesn't implement anything, it describes a function. Even if it describes a lot of functions and they mesh together really well, there's a distinction between "what" a program does and "how" a program does something.
To compare with literature copyright, there are a ton of romance novels out there — pretty sure you can find a lot of common patterns on "what" story they tell. However, only the "how" is copyrighted, you can't prevent anyone from writing a story with the same outline as an existing one.
(For literature, the problem becomes really tricky since the crossing over from "what" to "how" is kinda fluid; e.g. you can't just swap out character names. Software is actually easier there.)
> An API doesn't implement anything, it describes a function.
Unfortunately, that is also a definition for the whole of programming: describing functions. In Java, the method signature gives only a very incomplete definition, but that is a factor of the programming language itself.
For example, you might wish to imagine a hypothetical language that has a type system so refined that the behaviour of any function is completely described by its type (1). In such a case there would be no difference between its description and its implementation.
(1) We'll leave aside the question of whether this is strictly possible. It would be possible to have more powerful type systems than Java's, and program designs that use such small and clear function definitions, that if you have the type signatures then filling in the code for them is more straightforward than designing the function definitions was in the first place.
The API description of a single function seems too trivial to be copyrightable. All the functions combined could perhaps be covered by a database copyright, but I believe those aren't recognised in the U.S. Thus phone books or listings of television programs are not copyrightable.
What Oracle has won on is in the Structure, Sequence, and Organization in the API.
The analogy with phone books is if someone else published a competing phone book, with the same positions for adverts and paid listings, and same distinctions between adverts and paid listings. The courts would find that such a phone book infringes as well.
To make the analogy more accurate, many consumers have since come to be used to the layout of the old phone book, and do not want to switch because they have to retrain their habits to use the competitor book. Competitor book argues that the old phone book layout has merged with the idea of a phone book, or that the old layout is essential to the use of a phone book. The circuit court disagrees.
I think the phone book analogy still falls short; two phone books can be organized different and have different adverts, styles, etc., but still fulfill the same function (allowing a reader to look up the phone number associated with a person or business). On the other hand, two APIs with different SSO do not fulfill the same purpose, since programs must be written to use one API or another.
It's much more similar to recipes. Recipes, like programs, are functional; they exist to produce useful output. Two different recipes calling for different ingredients/proportions can be used to bake similar cakes. However, the two cakes are fundamentally different, and copying the ingredients/proportions/steps of a recipe might be the only way to produce a cake quite as tasty as the one from the recipe.
Recipes themselves are not copyrightable because of the idea-expression divide. Authors can express the recipe using different words/formatting, and that expression is copyrightable. Likewise, an API, including the SSO, is merely an idea and so can't be copyrighted, while the implementation is the expression of that idea and so can be copyrighted.
I think if we take the phone book analogy to it's logic conclusion, it must be okay for Google to use the API only if they change it to make it sufficiently non-interoperable, which seems highly unintuitive.
> On the other hand, two APIs with different SSO do not fulfill the same purpose, since programs must be written to use one API or another.
According to the 9th Circuit opinion, for the purpose of whether an API is copyrightable, interoperability (with client programs) does not factor in. Interoperability comes into play on a case-by-case basis when considering whether or not the use of a copyrighted work is fair use.
So, to use the telephone book example, if machines have been built to interoperate with the old telephone book layout and cannot accept the new telephone book layout, the competitor may have a fair use case, but the competitor cannot argue that the layout of the original could not be copyrighted; at the time of designing the layout, there were many avenues to lay out the pages, but the holder chose a particular layout.
Intuitively, this differs from trademark law where use in a generic manner dilutes the trademark. With copyright, there was copyrightable creative expression in the API's SSO when it was designed, and because others have come to rely on the SSO aspects doesn't mean that the copyright of the API's SSO has become diluted.
> Recipes themselves are not copyrightable because of the idea-expression divide. Authors can express the recipe using different words/formatting, and that expression is copyrightable. Likewise, an API, including the SSO, is merely an idea and so can't be copyrighted, while the implementation is the expression of that idea and so can be copyrighted.
At the time when the API is created, there is creative expression as to what the API should look like.
> At the time when the API is created, there is creative expression as to what the API should look like.
At the time a recipe is created there is creative expression as to what ingredients will be in the recipe. Creativity/originality is a necessary but insufficient condition for copyright.
> According to the 9th Circuit opinion, for the purpose of whether an API is copyrightable, interoperability (with client programs) does not factor in.
I disagree with the 9th circuit here. To be clear, my argument is not that because copying is necessary for interoperability, APIs are not copyrightable. Rather, the argument is that because only one API (including SSO) fits any given purpose and because it is not functional in itself, the API is closer to an "idea", a "system", or a "method of operation" rather than a "literary work" under the Copyright Act section 102. A data structure with enqueue, dequeue, and size operations is an idea, not a concrete expression of that idea.
Plus I believe if the Supreme Court upsets 50 years of practice in the industry, they are essentially legislating.
My bad, it's not the 9th. It's the Federal Circuit.
> At the time a recipe is created there is creative expression as to what ingredients will be in the recipe. Creativity/originality is a necessary but insufficient condition for copyright.
To use the recipe analogy, just as the functionality the API necessarily must provide are uncopyrightable, so a list of ingredients is uncopyrightable.
But once someone organizes their ingredients list; e.g. according to the first time they must be used in the recipe, that organization is copyrightable just as the hierachical organization (SSO) of Java's standard library is copyrightable.
> Rather, the argument is that because only one API (including SSO) fits any given purpose and because it is not functional in itself, the API is closer to an "idea", a "system", or a "method of operation" rather than a "literary work" under the Copyright Act section 102.
The Fed Cir. cites case law suggesting that the 9th, 10th, and 3rd, among others, found that just because something is a "method of operation" does not mean that they are uncopyrightable.
> A data structure with enqueue, dequeue, and size operations is an idea, not a concrete expression of that idea.
For a data structure with enqueue, dequeue, and size, there aren't really enough creative choices choices that can be made. The Java API is different; e.g. as the CAFC points out, their API for dates and timezones are organized very differently from iOS's, and there is sufficient creative choice there.
> Plus I believe if the Supreme Court upsets 50 years of practice in the industry, they are essentially legislating.
With regard to the effect on the software industry, it may be less than you think. For general cases a competitor may be able to provide a competitor2us.sh to convert uses of a competitor API to a functionally equivalent API.
But we are talking about the source code representation of the API? Nobody cares about how its ordered or formatted: Google could change those aspects and programs would still link and run.
Exactly. An implementation of an API is copyrightable. Not the API itself. With a lot of goodwill, with some very generous interpretation, an API could be patentable, but copyrightable seems absurd to me.
I don't think the comparison with literature makes sense.
API is what defines a software. For instance, if someone copies Microsoft suite full public interface (including the UI which is part of the interface it would be a problem even if the implementation was different).
API signature is the UI equivalent for a library/programming interface software. So, I agree with the original commentors concerns here. Oracle's got a point too.
> API signature is the UI equivalent for a library/programming interface software.
It isn't. "A main window with toolbars and an edit area." is the equivalent of the API signature. The layout, icons, ordering, etc. is artistic work of the "how" and copyrightable.
(FWIW by your logic, LibreOffice would be violating Microsoft's copyright already and we could only ever have one office suite in the world.)
No, that's not a reasonable interpretation of his comment. Other OO VMs (e.g. dot NET) exist and do not have the Java API. Google's argument is that the API is required to maintain compatibility with Java programs, not bytecode-based VM programs in general.
Google's argument is that it falls under fair use to do a clean room implementation of the APIs. District Judge Alsup agreed with this legal idea:
"So long as the specific code used to implement a method is different, anyone is free under the Copyright Act to write his or her own code to carry out exactly the same function or specification of any methods used in the Java API. It does not matter that the declaration or method header lines are identical."
The whole PC industry was deeply affected, in a positive manner for consumers, in a negative manner for IBM, by Compaq's reverse engineering of IBM's BIOS ROM API. Imagine if users of BIOS/UEFI API had to pay royalties to IBM (which derived it from CP/M).
>Imagine if users of BIOS/UEFI API had to pay royalties
I always thought that every PC maker did have to pay royalties to Phoenix or one of the other BIOS vendors.
I know that open-source BIOSes, e.g., coreboot (formerly known as LinuxBIOS), exist, but I got the impression that even at this late stage in the BIOS game, only a minority of machines ship with them.
I always thought that Compaq created its clean-room implementation because IBM outright refused to license their BIOS (to Compaq or anyone else).
> I know that open-source BIOSes, e.g., coreboot (formerly known as LinuxBIOS), exist, but I got the impression that even at this late stage in the BIOS game, only a minority of machines ship with them.
coreboot is not an open source BIOS, it's open source firmware. It can be combined with SeaBIOS, which is an actual PCBIOS implementation (that may or may not be in violation of IBM's APIs given this case) to provide a PCBIOS-alike boot environment.
It can also be combined with Tianocore, Intel's open sourced implementation of the high level APIs of UEFI, so that this approach would be less affected by the court case (since that's using code verbatim that was specifically published for that purpose). But who knows if the Oracle case wouldn't affect this approach as well?
coreboot can also be combined with other code for customized boot concepts, like on Chromebooks, which are probably the largest consumer deployment of coreboot, at ~6% of laptops and desktop in the US, apparently (The numbers on https://en.wikipedia.org/wiki/Usage_share_of_operating_syste... vary wildly depending on the detail each is covering)
> I always thought that Compaq created its clean-room implementation because IBM outright refused to license their BIOS (to Compaq or anyone else).
Apparently Google (or Android before they were bought? not sure) also tried to license Java for Android and that fell through. They didn't clean-room because there was the Harmony stuff to work from that nobody seemed to have a problem with. These days Android's Java is based on OpenJDK which gives it a whole new twist (it being licensed by Oracle under GPL terms).
that's the difference though, theyrr free to make one or use any of the existing ones with the conditions of the authors. they're not forbidden to make their own or use a competitor's like the oracle ruling could otherwise mean.
Google has several arguments, I find most of them persuasive. The fair use one is sort of a fallback.
The more immediate argument is that APIs aren't copyrightable material, since there isn't more than one way to write them. You can't write the API differently and still let existing java programs run with your standard library.
To implement such an "invisible shim" you would still need to write the exact same API that oracle is claiming is copyrighted to let other programs build against it.
It's not the internals of the functions that this case is about, it's literally about "class ArrayList { void clear() { [this part excluded from case] } ... }"
there is a big difference between an API exposed to all other programmers in the world - versus one that is there for say compatibility.
Their entire API works the same way as Java system and you program it as Java - it would be very different if say Android was programmed in Go and they had a way to translate Java programs into Go.
I assume your first post was in response to my "you can't write the API differently" paragraph. If not we are talking past eachother, sorry. If so, your followup is that focusing on Google's actions is missing the point. If there is only one (or a small number) of ways to write it then it isn't copyrighted, so Google can do literally whatever it wants. If there are many ways to write it, the argument fails, and Google taking a more minimal approach to copying it wouldn't change that (it might change the fair use analysis, but that's a separate discussion).
It's more of a nitpick, but your reply also exaggerates the scope of the case. No one is arguing in this case that Google was not free to implement Android or an API in Java, they are arguing about re-implementing Java's standard library APIs. As far as this case goes I don't think there is any salient distinction between implementing android in Go, and implementing android in Java with a different standard library api.
That was only after the appeals court stuck down Alsup's previous ruling that APIs couldn't be copyrighted and sent the issue back down to him to determine whether it was fair use.
In general, the amount of time/energy/cost invested in something is not a prime indicator of whether it is copyrightable, under the law. This is a misconception.
Facts are not copyrightable no matter how much time/energy/cost went into compiling them, and this is clearly established law.
Google's case is that an API specification or implementation is more like a set of facts. Which as a software engineer, seems pretty plausible to me, they do seem like a set of facts, a description of fact about how software works. On the other hand, unlike facts, they were not purely observed, but were indeed invented by humans -- but recipes aren't copyrightable either, even though they are not observed but invented too. Neither are the rules of a game. These are all considered more like 'facts' than creative works. Doesn't matter if eg you spent years and millions of dollars researching food chemistry to make your recipe.
I don't think its entirely clear who will win, but I don't think Google's case is as weak as you think, although i agree that Oracle's contention isn't entirely off base. . In particular, in general, how much time and energy went into making something is not generally one of the most significant factors in determining copyright or fair use. (Additionally, the well-established law around reverse engineering and creating clones -- that it is allowed -- is in Google's favor, as that analogy seems pretty strong too). Copyright law is -- has always been, or at least for 100 years -- about a bunch of competing factors balanced against each other.
And when it comes to technology advances, has always relied on analogies to previous technologies and industries, and who has the most persuasive analogy. And then we have the fact that the people deciding what analogy applies best may not entirely understand the technology as a social fact...
APIs are facts, and facts are not copyrightable. How is an API a fact? You have a system, in the real world. It is a "thing". There are facts about this thing: if you send it particular bytes, it does X, if you send other bytes, it does Y. The fact that it does this is empirically derived. There are not two or more options for it, it's like gravity or electromagnetism. APIs are facts about the systems they apply to, so while there is creativity in designing them, there is no creativity in building a system that interacts with them. There is exactly one way derived from the empirical fact of how it works.
Where the case IS weak is that there IS creativity in how you document and organise the API. And I'm pretty sure Google's re-implementation was very similarly organised to the real Java. That will be the crack Oracle will be trying to exploit here. But its not actually about the original work being "original" or even "creative".
This would seem to call in to question their being "friends of the court" rather than associated with a particular litigant, especially in the cases where they chose to also work for Google and likely have an a interest in the outcome of this specific case. As opposed to legitimate amici who are generally more concerned with the precedent.
If you're talking about the 78 programmer amici brief, only 12 have any connection at all to Google (only 5 are employees), and each of those are affected personally, beyond association with Google. This is addressed directly in the brief.
Also when the commenter said "wrote the API", he was referring to the Oracle/Sun Java API, not the Google Android API.
> From a purely technical point of view, APIs being free to reuse is an awesome thing that makes for a more vibrant and competitive software ecosystem
This is not merely a technical benefit, it's a practical one and represents the status quo. The fact that there's no precedent isn't because it's new, it's because no one ever thought it was infringing before.
Nobody might believe that such a thing is infringing but there are plenty of people who are mad that a competitor just copies and pastes their API. Smartcar was such a case that made it to HN.
I really do think the determination for this case ought to be if you copy an API to facilitate interaction with existing software then you should be in the clear. If you do the same because it’s easier than coming up with your own then I think it should be infringement.
I agree that designing good APIs requires a great deal of work, but Sun/Oracle were not alone in doing this work. In fact, they had considerable help from community, competitors and customers.
Java APIs are to a great degree a collaborative effort and it isn't right that Oracle should be the sole benefactor of this uncompensated work that has only made their product more valuable.
If this is true for these particular APIs isn't very relevant in my view. What is relevant is that the Java platform as a whole has gained much from its community. Without the Java platform the APIs would hardly have any relevance at all.
What you are questioning then is not that whether APIs should be copyrightable or not, but rather whether Oracle solely should have a copyright over the Java APIs.
I am saying that if they want to claim ownership of something they can’t pretend the Java community didn’t contribute significantly to the development of the Java APIs.
If you are asking for my opinion: extorting those who use your API is always a poor long term business decision because it proves ill faith and undermines trust.
Oracle already has a problem with corporations making a conscious effort to move away from their database platforms.
The possibility that Oracle might prevail keeps me awake some nights.
Oracle's "original software" is not. It is derivative of other work, for example, Smalltalk and its libraries. The idea of including explicit interface declarations with each module was, I think, introduced by the programming language SUE designed by Rick Holt.
Copyright does not protect ideas; copyright can only protect the expression. And when the two are intrinsically combined, there cannot be copyright.
My understanding is that this case has produced emails inside Google about essentially how to avoid licensing Java. In the light of the incredible profit machine Google is, and how large a monopoly Android is, its hard to imagine any judge looking favorably on a plan to avoid paying licensing for something to build a multi-billion dollar industry.
That being said, I feel ruling against Oracle would be also very perilous for open software from for profit entities, as it would have a harmful chilling effect on companies trying to dual license or keep their technology open. Arguments Google had made in earlier stages used the GPL-licensed OpenJDK to justify using their non-GPL implementation.
I don't get this perspective. The Open Source movement relies on adversarial operability far more than for-profit entities do.
Would WINE be legal if Oracle won? Would Oracle's OpenOffice be able to read and save Microsoft document formats? Replicating APIs has always been a huge part of the Open Source movement.
Assuming that the court rules in the way I would want then 100% yes.
WINE would be fair use because it’s purpose is to allow programs written for Windows to run on Linux.
Google’s use of the Java API would be infringement because Google’s use of the API is to provide a familiar environment for Java developers and it was easier to borrow the Java API than design a new one.
Wanting to avoid paying licenses by doing your own implementation is perfectly legal and moral. Let's say we lived in a world where there were no Open Source RDBMS, and you didn't want to pay Oracle's license. There would nothing shady on you deciding to develop your own RDBMS.
Ignoring patents for a second you’re absolutely right. Where it gets hazy is if you copied Oracle’s query language because it was easier than designing your own.
To me the intention matters. If you copied it so that you could market that you work with existing software then I think you ought to be fine. If you copied it because designing a query language is hard then probably not.
The FSF has been very vocally for APIs to not be copyrightable. They've filed amicus briefs to that effect.
Edit: also why do those emails matter? The facts of the case aren't dependent on them. There's nothing wrong with a company looking to build a semi interoperable replacement to avoid license fees. That's why sun bought and continued development on OpenOffice; they figured out that was cheaper than the MS Office fees at their scale.
I believe there's more. Oracle had specific clauses in the licence terms to prevent usage of JVM on mobile. In other words, Google actually releasing Android under GPL is not enough for the case to be finished off.
I'm really not sure about why this comment has been down-voted besides that people disagree with it. This comment and the one above that was heavily down-voted both inspired some relatively interesting responses. It's a shame because the HN that I used to appreciate had more tolerance for civil disagreements. (Maybe this is just a reddit norm leaking here.) So it goes.
You're seeing folks with a certain persuasion downvoted because frankly, there is a right answer here, and it's astounding that people would undermine their own profession.
If Oracle wins, software engineering will be seriously hampered. And that's not hyperbole. If you are on Oracle's side you directly jeopardize the livelihoods of most of the contributors of this board. So not only am I not surprised by the downvotes, I think they're appropriate.
That is actually the very definition of hyperbole. No, software engineering isn't going to be seriously hampered because Google has to pay for what they knew they stole.
Some terms about API use would likely change in some software agreements. Google would fess up about 8 billion dollars. And not much else would happen.
Software engineering is a vital part of the world and the economy and it will not go away because the law got enforced.
Well I suppose an Oracle victory could be good news for AT&T if they own the copyright to the standard C library and the UNIX/POSIX API.
Then they could demand licenses for any C toolchain as well as any piece of code (libc, Linux) that included libc/UNIX compatible declarations.
This could be highly beneficial to software engineering since it would discourage the use of languages like C and Java, as well as UNIX-like systems. ;-)
Specious arguments that provoke well-informed corrections may be better than obvious trolling, but overall they're still not beneficial to the level of discourse here.
It's ridiculous this is being decided by the courts instead of legislatively.
Fair use doctrine was obviously never intended to apply to reimplementing API's either way because it didn't exist yet.
Rather than have a court make up some kind of ultimately arbitrary precedent ruling either way, Congress should be debating the ramifications of whether reimplementing API's is explicitly fair use or not, considering both pros and cons to the economy, with opportunity for all tech companies to weigh in -- and then pass a good law.
Courts interpret law, they aren't supposed to make it, and the Supreme Court certainly isn't even remotely qualified to determine what's the best policy for a healthy dynamic tech economy here. The law is so ambiguous here that Congress is shirking its duties by not establishing relevant law here.
This isn't at all unusual. You might have been taught in school about the courts "interpreting" the law, but a lot of American law was inherited from English common law which does basically come from court decisions, and a lot was created by court decisions since then.
In times like these where Congress is often deadlocked, someone needs to make decisions. Congress can pass a new law if they can get their act together.
You can still have laws preceding APIs that are abstract enough to also apply for it well enough. In Germany for instance we have a special clause that specifically allows reverse engineering for making something compatible with another product.
Notes on scheduling for anyone who wants to follow along:
Google now has 45 days to file a brief on the merits that explains their position.
Once that is filed, Oracle has 30 days to file a brief on the merits that explains their position.
Google then has 30 more days to file a reply to Oracle's brief. That brings us to the 28th of February, assuming everyone uses all their time (and no more).
The court can extend all those deadlines.
Once all the briefs have been filed the case will (probably) be scheduled for oral argument. It looks like oral argument is usually scheduled several months out, and the last day for oral argument this term is April 29. It might meet that deadline, otherwise it will be pushed to next October. If the oral argument is heard this term then we can expect a ruling by the time the court goes into recess for the year (end of june).
Of course a ruling doesn't mean the case is over, it may well then return to lower courts for more argument. (It almost certainly will for various details, like attorney's fees and/or damages).
This case started August 13, 2010. It's been almost a decade. Something is very wrong with how our court system functions.
A decade is obviously too long, but there is some value in taking a long time to decide important matters. If you rush everything in a short time span, you risk getting carried away by the public opinion and political environment of the moment. This can be especially problematic when it comes to the kind of deep constitutional issues that we expect the Supreme Court to grapple with; the court needs to keep a certain distance from the propaganda du jour. Besides, it's not uncommon for people on the death row to dig up evidence that exonerates them many years after the case was deemed closed. If we sped up the whole legal system and carried out sentences asap, they might not have been given enough time to do so.
Meanwhile, the system can be surprisingly agile if it needs to be. New York Times Co. v. United states only took 12 days from the first hearing to the Supreme Court ruling! Of course that was because Nixon wanted to rush the case, but in the end he lost hard and the heat of public opinion probably didn't help, either. In the case of Google v. Oracle, nobody seems to be particularly in a hurry. Both sides can afford to drag out the dispute as long as they want to.
I mean, it's a fair point that the schedule of this case doesn't matter that much. But cases of nearly every sort take too long.
To be honest I mostly included that line out of frustration with a Canadian Supreme Court ruling today, that said having a juvenile trial go on for 18 months can be "sufficiently speedy". Which is definitely off topic here, but still one I consider important.
I agree that it's ridiculous to drag a kid through the legal system for 18 months. Ideally, criminal cases involving minors (and individuals in general) need to be fast-tracked, and there should be a strict limit (measured in weeks, not months) on how long prosecutors can take to prove beyond a reasonable doubt that somebody committed a crime. If they can't prove it before the timeout, the defendant goes free. This should also reduce the incentive to stack one frivolous charge upon another for psychological effect. Aaron Swartz committed suicide just over two years after he was first arrested. He never faced an actual trial during those two years, only an endless series of indictments with minor changes.
But as I said, this is a double-edged sword. People need time to collect evidence and arrange witness testimonies, so insisting on a quick resolution could create bias in favor of those who can pay for a lot of lawyer-hours up front.
> This case started August 13, 2010. It's been almost a decade. Something is very wrong with how our court system functions.
For civil cases between large companies, this speed doesn't seem entirely terrible. Criminal cases and civil cases between individuals are another story.
I think one could make a good analogy to Baker v. Selden[1], a case from the 1900s about the copyrightability of blank accounting forms, in that APIs are the modern day equivalent of blank forms that are filled out and submitted to a computer.
Thinking from first principles, and forgive me for going into hippie philosophical mode here but I can’t see how an API can have copyright that is owned.
Creating an API is of course a creative process. Getting the API right is, for me, the most creative part of programming. When well written, it describes to a human how the software truly works, with the implementation really being the computer version of what the function name is already telling you. A browser rendering engineer could be defined just as much by the model that the DOM API describes as it is defined by the actual source code. They both describe the outside and inside of the same thing, a system which, when it’s interface is shared, is shared between us all and not just under the sole ownership of the first person to describe it.
It’s hard to see an API therefore, particularly a published one, as a traditional piece of intellectual property that can be subject to copyright. One cannot copyright F=ma or e=mc^2. Once these object models about software are discovered they are like descriptions of the natural world and their formulae are open and shared for all to use.
Yes: how you build your specific machine that makes use of and conforms to the API — the actual source code for function implementations — can be your intellectual property, but the underlying description of the natural world and its API are discoveries that are part of
the commons, for all to interact with, use, and re-use.
The only difference between natural laws, in my analogy to physics, and software APIs is that there is only one physical world with a limited set of natural laws that describe it. With software engineering we create our own new universes everyday, but they are common universes for us all to share.
I feel like that’s being super rude to the devs at Oracle that have been constantly innovating and improving the language. Java has changed a lot in the last 9 years.
Oracle’s upcoming design of continuations I think is genuinely novel and will inspire a lot of other languages’ implementations.
Sorry if it wasn't phrased well, but that's what I was meaning by it being a serious question: does this lawsuit cover code written by Oracle engineers? It's my understanding the lawsuit was based on code developed by Sun, given they announced the lawsuit almost immediately after acquiring them in 2010, so it seems disingenuous to claim this is about their innovations, rather than Sun's. It feels equally rude to those Sun engineers to act as if Java in 2010 was their innovation. Buying something makes it your property, but not your creation. Whatever Oracle contributed after the acquisition, certainly would count as their innovations, but that was not the original basis for this lawsuit.
The lawsuit was filed less than a month after the purchase went through. Oracle's engineers hadn't touched Java before their lawyers started attacking Google.
In heard a good explanation for that in a talk by law professor Eben Moglen.
Congress passed in 1982 a statue called the Federal Courts Improvement Act, where instead of having a random judge make decision, you now instead have selected judges specialized in IP. Those specialized judges comes from lawyers who have worked for companies protection their IP, and thus a bias in favor of IP in the court of appeal. When the case goes to the supreme court this bias goes away.
> Congress passed in 1982 a statue called the Federal Courts Improvement Act, where instead of having a random judge make decision, you now instead have selected judges specialized in IP.
No.
Instead of the geographic Circuit Courts of Appeal hearing patent cases, any first appeal of a case with any patent claims involved goes to court specialized in Patent cases.
Other IP (copyright, trademark, trade secrets, right of publicity) cases are not affected and have appeals go through the regular geographic circuits, so substituting “IP” for “patent” is incorrect.
(Oracle v. Google is a copyright case, so why is CAFC and not the 9th Circuit involved? Because there were also patent claims in the case, so even after they were dead the Federal Circuit “owned” the appeal.)
The current holding that APIs are copyrightable, and reimplementing them for interoperability is not fair use.
This is in direct contrast to decades of consensus that APIs are not copyrightable, and furthermore, there is a particular procedure to go through [clean room technique, which Google did] to ensure that the API is reimplemented without infringing any copyright.
Letting this ruling stand would mean that nearly every piece of software you use infringed someone's copyright.
Ah, gotcha - so the Court of Appeals for the Federal Circuit* decided in favor of Oracle in this case. Thanks for taking the time to type that out, I've been living under a bit of a rock it seems!
Pretty much what jcranmer said: The status quo, for decades, has been that you can do that. So this would be a drastic change to the rules by which we play the game.
More: Recall that copyright lasts close to forever. (95 years for corporations, if I recall correctly.) This ruling, then, would have allowed IBM to sue every BIOS clone maker, and keep a stranglehold on the PC market, and still have that stranglehold to this day, and be able to keep it until 2076. Then, on August 2, 2076, then we could get IBM-compatible PCs.
Compare that to actual history, and you can see why I think the current ruling is horrible.
> What's better for society doesn't matter in the face of the Constitution which is what the SCOTUS will judge this on.
The Constitution only says
> The Congress shall have Power [...] to promote the Progress of Science and useful Arts, by securing for limited Times to Authors and Inventors the exclusive Right to their respective Writings and Discoveries.
most of copyright is defined in statute (the various copyright acts) and court precedent.
Yeah, the Copyright Clause is pretty unusual. More than literally anything else in the Constitution, copyrights and patents actually are supposed to be judged in light of what's better for society.
Most stuff in the Constitution gives the government the power to do X (sometimes stating explicitly that it's for reason Y). The structure of the copyright clause is that Congress has the power to do Y, using mechanism X — a strict reading of that means that the government cannot do X for reasons other than Y, and cannot pursue Y using means other than X, and definitely shouldn't do X for reasons of not-Y.
I have a hard time believing SCOTUS will toss 50 years of standard practice in the software industry in the trash bin, regardless of what the law says.
Every programming language has stolen large portions of their API from other languages. Even Java.
In the case that Oracle wins solely on Structure, Sequence, and Organization, I don't see how such a ruling immediately spells doom for competitors trying to interoperate.
Competitors can still publish a functionally identical but differently organized API, then provide a competitor2us.sh script to statically change references to their own API. Sure, the friction is higher, but not unreasonable.
Assuming Oracle wins, what would be necessary to differentiate an implementation from their owned interfaces? For example, would a method named FuckOracle_min be different enough to not run afoul - or is it the plain text description of the API that covers what does / doesn't constitute infringement?
Google is not greedy? Oracle paid money for Sun and the property Sun owned at the time. Google said, nope, we'll just copy that property for ourselves and keep our money. That seems greedier.
If the future of computer programming is important to you, read the briefing calling for cert in this case.
A timeline and references can be found at http://www.project-disco.org/oracle-v-google-case/ .
For a programmer, the weight of the evidence against copyright for APIs is conclusive as presented in the briefing. Unfortunately, there are no programmers on the Supreme Court; while Judge Alsop did learn Java Programming so he could understand the issues,the Circuit Judges who reviewed Alsop's decision were not so dedicated.
This case clearly shows how taking something from the public and making is private is essentially a greedy and harmful activity. Unfortunately, our economy is based on this idea.... it doesn't have to be though.
They didn't take it from the public any more than Led Zeppelin took their songs from the public when they sued those who violated their IP rights.
Software has a real and tangible value. Songs ... well, you decide their value, but I don't understand why the value songs create should be protectable, but software not.
That's really what this is about. This is about granting to those who write software the same rights to that property as anyone else who has rights to what they write.
We make things protectable so that private entities can cordon them off from the public so that they can make money from them by selling copies. If we had a different funding arrangement for the arts, such things would certainly be unnecessary. In this case, we can clearly see that privatizing APIs gains the public nothing and Oracle and co. lots of things.
You are a private entity. You can write software. If you do, you should have the same rights as Oracle does on software it owns. Corporations are people and you are people.
Private entities create things of value and share them with an incentive to recover their investment, and then some.
If it's possible for anyone, including private entities like Google, to CTRL-A, CTRL-C, CTRL-V it into their own use, then there is negative incentive to create that kind of value for the world.
Lol, what? You still have copyright over software you write regardless of how this case goes. It's whether you can shut down other people's works just for being compatible with yours that's at stake.
What’s the current status, today, right now, of the copyrightability of APIs? Does the Federal Circuit decision stand because it hasn’t yet been overruled or is it not yet in force because it’s being appealed?
My mechanic says he can not service my car because the nut to open the hood latch has a copyrighted shape and the owner of the copyright on that shape advised me not to use my adjustable wrench or he would sue, but I could rent his crescent wrench each time I want to service may car, or I could keep the creascent wrench at home and the installed counter on the wrench would talk to his billing software and he would send an invoice every month...
In 3 words or less, compare and contrast this to the Google-Oracle copyright fiasco...
Thinking cynically, could an Oracle win increase demand for programmers? Companies may need to hire lots of extra programmers to audit what they have, and possibly rewrite or make trivial and mechanical API changes to avoid infringement. Sort of like the broken window theory from economics - break ALL the windows.
I mean, API-copyright plumbing wouldn't be my first choice of work, but might make for a decent part time remote job while I spent most of my energy on something else that is actually useful.
Was wondering would it be possible to get a petition on change.org started in googles favor? I think we need the court to understand the ramifcations of oracles arguements.
This is an interesting comparison to Dataflex vs. Powerflex: http://www.austlii.edu.au/au/journals/SydLRev/1998/12.html In this case, the use of “copied” reserved words was at the heart of it. I never understood why reserved words could be protected.
The SC has already denied to hear on whether APIs' SSOs are copyrightable, suggesting that it agrees with the Fed. Cir. opinion that they are.
This hearing is about Google's Fair Use defense.... and I don't expect Google to win on fair use unless the SC intends to really break new ground on fair use analyses.
I can't help and wonder though, as much as I think it would be madness for APIs to be copyrighted, including a language's standard library. Would I just have more job opportunities as a dev if it was? Since much more work would be needed to provide alternative solutions to all these?
If the supreme court rules in favor of Oracle here, you can expect trolls to start suing small businesses for copyright infringement based off of old software APIs. I think Americans should be encouraging tech startups not laying legal minefields for them.
One effect of a ruling that APIs cannot be copyrighted would be to make it more likely they can be subject to patent protection. That's probably better, but don't be surprised if we see API patents.
When this started Oracle was the evil one. Now we have your run of the mill predatory capitalism vs a particularly nasty and dangerous form of surveillance capitalism, which makes oracle look harmless.
I know this is going to be an unpopular opinion, but Google created this problem because they didn't want to pay Oracle for commercial use of Java.
This isn't always a problem. When Compaq did the same thing to create the first IBM compatible PC's, they did so very carefully, ensuring there was no one working on the team with prior knowledge.
I don't believe Google did the same thing and that's where my problem is. If they can look through Oracle's code, and just re-write it slightly to do the same thing to avoid commercial licensing, that doesn't help Open Source, it hurts it.
It is property law and the ability to protect one's rights to property that has granted the creators of property a return on their investment of resources into property.
If creators of property cannot protect their property, there will be less return on that property and thus, less incentive to create it.
Oracle bought Sun, and with that purchase, the ownership of intellectual property in the form of the Java API. Google then proceeded to copy that property into their own property without abiding by the usage restrictions Oracle, the property owner, specified. That was theft of Oracle's property.
If the Supreme Court does not uphold protections of property, I believe, we will see less investment in such property.
I am not sure if that is good or bad for the future of the world, but I do believe had Sun not had property rights to Java, they wouldn't have created it.
> Oracle bought Sun, and with that purchase, the ownership of intellectual property in the form of the Java API. Google then proceeded to copy that property into their own property without abiding by the usage restrictions Oracle, the property owner, specified.
You have the order backward. Google made Android with the full consent from Sun. Their CEOs had a handshake deal, and neither of them believed there was any need for a legal contact.
Fourish years later Oracle bought Sun and promptly sued Google. The handshake deal wasn't legally binding, apparently.
I know this doesn't necessarily change the legal picture, but it certainly changes the ethical one. Your timeline makes Google out to be a predator, maliciously stealing Oracle's precious IP. The actual timeline makes Oracle out to be the predator, buying Sun for little other purpose than to sue people.
I suspect Google wouldn't have gone with Java if it were owned by Oracle at the time. Which would have made for an interesting alternate timeline. Maybe they'd have gone with D? Who knows. C++03 was kind of ass, but if they'd have gone with c++ we'd have new c++ as a first class citizen which would also be rad.
> Android, Inc. was founded in 2003 by Andy Rubin, Rich Miner, Nick Sears, and Chris White to develop a mobile phone platform.[7][8] Google purchased Android in 2005 and continued developing the Android operating system.[8] During development of Android, Google wanted to incorporate the Java Standard Edition libraries. Google's executive chairman Eric Schmidt had approached Sun's president Jonathan I. Schwartz about licensing the Java libraries for use in Android. Sun offered a licensing deal of between US$30 and 50 million. Schmidt said Google would have paid for that license, but they were concerned that Sun had also requested some shared control of Android along with the fee.[9][10][11] Google states that they wanted more control in order to open source the language and allow third parties to take better advantage of its code;[9] Oracle states that Sun refused because Google's intention was essentially to fork Java to a Google version of the language, and to prevent it being inter-operable with other versions, an idea which was "anathema" to the "write once run anywhere" basis of the language.[12] Because of these differences of view, the negotiations failed to reach a deal and Sun refused Google a license for Java.[12]
> At this point in time, the OpenJDK implementation offered by Sun was not as mature or complete as the Java Standard Edition.[13] Instead of licensing Java, Google chose to develop a cleanroom version of the Java Standard Edition libraries
You seem to be trying really hard to give the impression that copyright law is a special case of common law property rights. The US Constitution plainly disagrees with you on that.
To promote the Progress of Science and useful Arts, by securing for limited Times to Authors and Inventors the exclusive Right to their respective Writings and Discoveries;
Re-read that bit of the Constitution that you quoted, and tell me why the Supreme Court should hand down an opinion that will require the entire software industry to grind to a halt for a few decades while we sort out who owns API copyright on everything that's already in use everywhere before we can continue building on top of any of it. How does that "promote the Progress of Science and useful Arts" in any way?
More importantly, how is any part of the government obligated to extend IP rights to be as powerful as you want to treat them? Congress was granted the power to create copyright law, but they chose to do so with more limitations than just duration.
I think rather, it's on you to explain why the software industry doesn't have to respect property laws like every other industry.
The industry wouldn't have to grind to a halt if it had been respecting those rights from the beginning.
If companies want to provide their code, API's, or any other intellectual property to the world at large, a la public domain, they are free to do that. No one is stopping them.
But if someone in the software industry wants to protect their IP, they should have those rights, just like any other inventor/writer in any other industry.
> I think rather, it's on you to explain why the software industry doesn't have to respect property laws like every other industry.
Those "property laws" you allude to don't cover software. Software is covered by separate laws that are designed to function similarly in many ways, but the differences are real.
> The industry wouldn't have to grind to a halt if it had been respecting those rights from the beginning.
There's no legal precedent establishing the existence of those rights, and quite a bit to the contrary.
> But if someone in the software industry wants to protect their IP, they should have those rights, just like any other inventor/writer in any other industry.
No. Copyright doesn't apply to every kind of idea or writing. This has been explained elsewhere in this thread, and in most previous discussions about this case.
The precedents establishing those rights are long, they go back decades. You really don't have the facts.
I didn't say these rights extend to every kind of idea or writing. I said software writers and inventors should have the same rights as writers and inventors in any other industry.
Really, I ask this in all seriousness, why shouldn't software writers have rights over what they write? Why are words in software different than those in books or movies? Why shouldn't inventors of software have the same rights as inventors of mechanical devices?
If you're repeatedly saying "property rights" and you mean to encompass common law property rights, copyright, and patent rights in a discussion where the differences between those are relevant, then you really shouldn't accuse anyone of not having the facts. You're being deliberately obtuse and unclear. Go remind yourself of the rules here, especially:
> Comments should get more thoughtful and substantive, not less, as a topic gets more divisive.
Knowingly glossing over important distinctions is not appropriate.
I don't mean to do anything that I am not doing. I am saying, there is property owned by one company being appropriated for use by another company without respecting the compensation requirements specified by the owner of that property. Period.
That is illegal. Google intentionally committed that illegal act due to the financial incentive. Sun explicitly told Google they cannot do that. Google did it anyway. Now, Google should have to make amends.
That is exactly what I am saying. It is exactly what I have been saying. You are saying I'm saying something else or saying what I have said isn't the case, but provided no evidence to support that.
I have repeatedly provided evidence that what I am saying is true. You have provided no evidence to support your case.
I'm not glossing over any distinctions. You are saying there are distinctions, but you are not saying what those distinctions are. You are saying there is common law property and other kinds of property and that is relevant, but I am saying, the laws governing the kind of property Google appropriated for their own financial gain is exactly the kind of property that is governed by the laws I have stated, specifically copyright law and patent law.
For some reason, you are claiming those laws don't apply or something like that. I'm not sure why you believe that, but the court precedents have already been set to indicate that they do.
Clearly, the courts are debating this already because someone agrees with you and someone agrees with me.
What I do know, is that Google has flagrantly broken copyright law to their own ends since their inception. They have copied books. They have copied newspapers. They have copied people's private healthcare information.
Google does not respect people's rights to their property and intellectual property is property, regardless of what you are saying about common law property. Yes, I agree that "intellectual property" under the law is distinct from "real property" under the law in the form of land or real estate, however, I am not claiming Google broke those laws. I am claiming Google broke Intellectual Property Laws and they have done that -- very clearly -- many, many times.
I hope the Supreme Court, once and for all, puts Google in their place and says, "No, Google, You do not have the right to break the law simply because you want to."
I can buy aftermarket parts for my car that are designed to be substituted for OEM. The aspects that form the interface to the rest of the vehicle seem like the physical equivalent of an API (of course if the parts have electronics, then there might be a software API involved too).
So, I ask you, why shouldn't inventors of software have the same rights as inventors of mechanical devices?
Google copied Java's API, but not the implementation. The question at hand is whether that matters - a question that you are assuming the answer to, as if it is absolutely straightforward and clear. I really doubt your interpretation of the situation.
No one said they destroyed it. Google appropriated Oracle's intellectual property for Google's own use, specifically because Google didn't want to pay for the use of that intellectual property.
If I write a book and you read it, love it, and then retype the book, print it and sell it, you have violated my property rights.
You and many others here don't want it to be that way, but it is exactly that way.
This is a bad analogy. You don't need to copy title and chapter names to allow other people to "interoperate" (read, scan, and index I guess?) with the book. Moreover substantial creativity goes into title and chapter names. Both of which imply they should be substantially more copyrightable than APIs.
> This is a bad analogy. You don't need to copy title and chapter names to allow other people to "interoperate" (read, scan, and index I guess?) with the book.
Bad analogies are inevitable, and aren't the commenter's fault. It's the Federal Circuit's fault, for trying to blur the lines between functional matters (the domain of patents) and copyright matters. Any analogy that's simple enough to quickly understand will suffer from basically this same flaw, or else not apply to this case.
Oracle's trying to get copyright duration on the exclusive rights to something that falls under patent subject matter, so yeah, they're blurring the lines.
Ultimately, the problem for Oracle is that the APIs are too functional to be eligible for copyright protection, too abstract to be eligible for patent protection, and too generic to be eligible for trademark protection. But that doesn't stop them from trying to get the best features from all the above.
A better analogy (i think) is a city that has in its constitution "streets and building locations must be in the exact same spot and have the exact same purpose as they are in neighboring City B (eg a coffee shop must be on the corner of 2nd & 3rd, but which coffee shop it is doesn't matter as long as it does the same thing as the coffee shop in City B)".
Your analogy is false. Google didn't copy the whole thing; they copied the API. THat's analogous to copying the chapter titles but not the chapter contents, far more than it is analogous to copying the whole book.
No, it's more analogous, but worse so, IMO, to copying all the sentences of the book in a manner like this:
"Jack and Jill ran down the hill."
into
"Gil and Jacky descended the mound."
It's exactly the same story just with different implementations that exhibit the same behavior. They didn't make something compatible with Java -- they replaced Java with something exactly like Java.
It's even worse than the example above, because they kept the same names of the classes, interfaces, etc.
They had to keep the same names of classes, interfaces, etc. in order to copy the standard library’s API. And it’s not illegal to copy the titles of chapters and write your own story. Even if they’re very similar, if you do it properly (no peeking at original), there’s nothing illegal about it.
The world is not going to be better for extending the protections Oracle wants here.
Alsup's ruling is sane, shows his clear understanding of coding and the history of Java and how it was licensed out to the world under Sun, and is really very simple to understand: http://www.groklaw.net/articlebasic.php?story=20120531172522...
The appeals court fucked this up, hard. I would like to think Alsup's ruling will be upheld -- groklaw has fantastic quotes from him during the trial. At one point, he himself notes he had coded from the spec some of the functions Oracle complained about and disagreed with Oracle counsel statements. Refreshing from our judicial branch, to say the least.