Oracle: Google Has "Destroyed" the Market For Java
itwbennett writes: Oracle made a request late last month to broaden its case against Android. Now, claiming that 'Android has now irreversibly destroyed Java's fundamental value proposition as a potential mobile device operating system,' Oracle on Wednesday filed a supplemental complaint in San Francisco district court that encompasses the six Android versions that have come out since Oracle originally filed its case back in 2010: Gingerbread, Honeycomb, Ice Cream Sandwich, Jelly Bean, Kit Kat and Lollipop.
It's a shame Pamela Jones shuttered Groklaw ... her insight into this case would have been invaluable.
We need to stop the dangerous idea that interfaces can be copyrighted before it becomes as much a bane on software as software patents were before Alice vs. CLS Bank.
vi ~/.emacs # I'm probably going to Hell for this.
Because J2ME was such a brilliant mobile platform.
The world's burning. Moped Jesus spotted on I50. Details at 11.
Oracle (then Sun) could have created an operating system for mobile phones based around Java. But since Google did, they want to profit off of it? They should go to hell.
Java was never useful on phones until Google built something decent.
Sun/Oracle could never build a decent phone with Java, no matter how much money they pumped into it.
If you work somewhere that uses Oracle products or is considering an Oracle product, fight to the bone to get their shitware tossed out.
We need to end this company, it's a tumor in the software ecosystem.
Mod me down, my New Earth Global Warmingist friends!
irreversibly destroyed Java's fundamental value proposition as a potential mobile device operating system
Well there's the problem. Oracle thinks the language and runtime are a complete operating system. There's nothing stopping Oracle making a different OS that uses Java. In fact, the vast amount of libraries for Android out there should be easy to port. Next we'll hear how Microsoft destroyed the value of C as used to build an OS.
Java...[garbage collection] is the .[garbage collection] best .[garbage collection] programming .[garbage collection].[garbage collection] language for .[garbage collection] mobile devices .[garbage collection] .[garbage collection] because it is .[garbage collection] faster .[garbage collection] then C++ and .[garbage collection] more .[garbage collection].[garbage collection].[garbage collection] deterministic and .[garbage collection] .[garbage collection] .[garbage collection] nev .[garbage collection] er .[garbage collection] drops .[garbage collection].[garbage collection].[garbage collection] user .[garbage collection].[garbage collection] input.
I like Java .[garbage collection] becuase .[garbage collection].[garbage collection] it's write .[garbage collection].[garbage collection] once, .[garbage collection].[garbage collection].[garbage collection] and it runs .[garbage collection] .[garbage collection].[garbage collection] provided you have all .[garbage collection].[garbage collection].[garbage collection] the libraries, the .[garbage collection].[garbage collection].[garbage collection] correct java interpreter .[garbage collection].[garbage collection].[garbage collection] and enough .[garbage collection].[garbage collection]
javax.servlet.ServletException: Something bad happened
at com.example.myproject.OpenSessionInViewFilter.doFilter(OpenSessionInViewFilter.java:60)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
at com.example.myproject.ExceptionHandlerFilter.doFilter(ExceptionHandlerFilter.java:28)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
at com.example.myproject.OutputBufferFilter.doFilter(OutputBufferFilter.java:33)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:388)
at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:765)
at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:418)
at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
at org.mortbay.jetty.Server.handle(Server.java:326)
at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
at org.mortbay.jetty.HttpConnection$RequestHandler.content(HttpConnection.java:943)
at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:756)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:218)
at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
at org.mortbay.jetty.bio.SocketConnector$Connection.run(SocketConnector.java:228)
at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582)
Caused by: com.example.myproject.MyProjectServletException
People are reverse engineering their shit, and Google is destroying value. This is a pretty sure sign that Oracle is going down.
"Windows is like the faint smell of piss in a subway: it's there, and there's nothing you can do about it." - Charlie Br
At first, I read that as "Oracle Has 'Destroyed' the Market For Java"... which, of course, seemed quite plausible.
RIP SUN
I have no special gift, I am only passionately curious. --Albert Einstein
Does anybody feel sorry for Oracle???
There was no "value proposition" for Java, Sun eventually made it open source with new APIs and language features created through a community development process, in order to compete against Microsoft and others. That's why IBM, the biggest corporate cheerleader for Java, refused to increase its $8 billion acquisition offer for all of Sun Microsystems including their server and storage businesses, as well as Solaris, Java, and MySQL.
But Larry was/is intent on pulling a Darl Mcbride and figuring out how he can take Java closed so Oracle can charge users serious dough. He can't, that genii flew.
The contenders for biggest enemies of Java are:
1) Micro$oft - Effectively killed the JavaBean web plugin market with their own lackluster JVM via EEE (Embrace, Extend, Extinguish).
JavaBeans is the technology that has the biggest negative view on the net and rightly so. If Microsoft had not done such a good job killing it, Java would likely be in a different light today as more energy would have been spent making JavaBean libraries better while the real engineers at Sun still had control of the source.
2) Oracle - They just do not get open source or anything that came from Sun.
Google has popularized Java way more than Oracle could ever imagine.
"You don't anthropomorphize your lawnmower, the lawnmower just mows the lawn, you stick your hand in there and it'll chop it off, the end" - B. Cantrill
FTFY
Oracle.self.project.sins(google);
Table-ized A.I.
Google's fall back plan switching to PalmOS in C++.
Quick message to Oracle: Between the security officer coming off as, at best, a self-entitled, over-inflated executive believing her services are better than her customers deserve, and now the company claiming they have a "right" to market share, I think the psychology of the company is becoming quite clear. It isn't that their products are poor (which they are not), it is that they seem to believe that they deserve their piece of the market by divine providence.
Please note, this is opinion, and only my own. Note to Oracle: One of the only things anyone is actually entitled to. Meaning: You are welcome to the opinion that you are above competitive market forces, but reality may or may not disagree. Be humble, quietly make better products than your competitors, and demonstrate effectiveness in the market rather than in the courts.
Java could be great. Make it so, or let those who can do better do better. That is the nature of the free market large corporations are supposed to embrace.
Oracle's products are extremely poor.
Mod me down, my New Earth Global Warmingist friends!
Sun destroyed the market for Java.
Sun wanted to sell hardware, and they designed Java to run well with their hardware. Sun's ideal was the network is the computer. Java is/was a client language that could run on a lot of platforms, with in Sun's mind a Sun server at the other end. Didn't quite work out that way. Sun was going belly up, Oracle bought the carcass. Sun gave Java away. You can't put the jinni back in the bottle.
Java was worthless when Oracle bought Sun. They're engaged in revisionist history trying to milk a dead cow.
The tech industry, just like every industry, improves as people discover new and better ways to do things. If you can't keep up Oracle, you fall behind. And since you've chosen to litigate instead of innovate, you have fallen behind.
No one is guaranteed profit.
Be seeing you...
Are we supposed to believe that business models in general must be protected from disruptive technologies?
Yes, and what exactly did Sun do with that?
Oh yeah, there is JavaFX, which still requires an OS to run on
That is where the disconnect is
Wherever You Go, There You Are
I have bought them and Oracle products suck. For developers and end users.
Mod me down, my New Earth Global Warmingist friends!
You must give Oracle credit.
Oracle has taken the remnants of Sun and has now, through hard work and determination, turned it into the World's Greatest Patent Troll.
Oracle ... Now, claiming that 'Android has now irreversibly destroyed Java's fundamental value proposition as a potential mobile device operating system, ...
It must have been something you assimilated. . . .
To put this in context, Oracle thinks so little of Java it slaps a malware (^h^h^h^h) adware bundle with the installer that installs ASK toolbar to take over searches.
http://www.zdnet.com/article/oracle-extends-its-adware-bundling-to-include-java-for-macs/
One of the reasons I've stopped installing their 'critical updates' and instead turned it off.
Larry doesn't want to sell, he wants a percentage of the action
Wherever You Go, There You Are
Oracle's lack of quality control has brought untold numbers of zero days which has eroded confidence and trust in the 'compile once run everywhere promise.' Likewise Google has fractured the mobile handset and tablet eco-system with too many variants of a 'standard' framework . Both companies should be taken to court by a class action lawsuit and sued for a gazillion dollars.
Lol javafx!
Mod me down, my New Earth Global Warmingist friends!
I wonder if I can use the Oracle for Android app to keep up to date on the lawsuit against Android...
http://www.appszoom.com/androi...
My Other Computer Is A Data General Nova III.
Yeah because why only have a legal battle with one evil software compnay, when you could battle two at the same time! Just to show off how much of a silicon badass you are.
Cmon Oracle and Microsoft, Google will fuck your shit up 2 on 1!
Mod me down, my New Earth Global Warmingist friends!
“Given the widespread dominance Android has achieved with its continued unauthorized use of the 37 Java API packages over the past few years, Android has now irreversibly destroyed Java’s fundamental value proposition as a potential mobile device operating system,” Oracle wrote.
Judge: So I see here that Google has made Android a very popular and successful mobile OS over the past five years. What has Oracle done over the past five years to promote the JAVA platform as a potential mobile device operating system?
Oracle: Well Your Honor we have studied new and innovative ways to litigate our position.
Judge: No, you misunderstand. What have you done to improve and promote JAVA as you say Google has done?
Oracle: As we said Your Honor, our lawyers have devised a strategy ...
Judge: So you really haven't done a single thing other than plan legal ways to squeeze money out of people actually developing useable mobile systems?
Oracle: Ummm, we will take the fifth on that Your Honor.
Reminds me of Project Looking Glass back in the day.
Someone should make one of those raging Hitler movies (from Der Untergang) with quotes from the Oracle tirade, especially "Oracle: Google Has "Destroyed" the Market For Java"
I thought Java was only good for CS college courses and Minecraft.
Not noteable, IMO a rubbish article.
Fine. Next time I have a large project I will ask you to analyze the problem and design the interfaces/class declarations. I will then take/copy those interfaces from you without paying you a penny. Any half-competent programmer will implement those interfaces you donated for free.
Oracle is the new SCO
Now, if you'll excuse me, I have backups to corrupt.
Can you imagine a interpreter of perl or python written in Java where no native option possible?
Yes, and it's called Jython.
Java is a programming language, not an operating system. Examples of operating systems are Linux and Unix.
Nothing could have "destroyed Java's fundamental value proposition as a potential mobile device operating system" because the value proposition of Java as an operating system is zero, and always has been. It's like the value proposition of an orange to be an apple.
Oracle's nonsensical claim might be merely a case of lawyers or managers showing their ignorance of the computing subject domain or just being sloppy with their terminology, which is not uncommon. However, it gets worse.
A proprietary software package may have a calculated expectation of market share and profit if there is no competition, but this is not the case with programming languages because they always have competition from countless other languages. It is especially not the case with open source programming languages because they typically enjoy multiple implementations, and these make captive markets almost impossible to maintain.
It seems therefore that Oracle's market expectations were based on a flawed analysis.
That mistake would have made any market expectations unsafe, but any expectations were dealt a further blow by Oracle's highly abusive attempt to copyright SSO in their litigation against Google. This must have alienated practically everybody who knows anything about programming, and the likelihood is high that many Java programmers who had other languages available must have abandoned Java like the plague to avoid potential SSO copyright liability.
In other words, if anyone killed off interest in Java, it was probably Oracle themselves.
"The question of whether machines can think is no more interesting than [] whether submarines can swim" - Dijkstra
Google doesn't have to do any such thing. They can just get rid of the legacy Java APIs and, instead, provide modern ones using lambda expressions. Then they can provide a tool chain that goes directly from source to .dx files and skips the whole Java .class file intermediate step. I'm surprised actually that we still even have to compile to Java classes. Then, in order to have write-once, run-anywhere we can get an ART VM for non-Android operating systems.
IBM will finally find a use for OS/2, as a mobile OS to replace Android!
Oracle: Ummm, we will take the fifth on that Your Honor, by the way, did you get the invite to party on Larry's superyacht?
Judge: Oh yes, the court rules in favour of Oracle.
Java sucked from day one. Anything that can be "destroyed" by MS, Oracle, IBM or Sun was never worth a crap to begin with. I've programmed with MS .Net and Java and every Java solution took longer to code, was less reliable, slower and consumed more system resources. It got hyped because it was an alternative to MS back in the days when Ellison and McNealy went crying to the government over MS's supposed "monopoly".
Maybe Google should convert Android code to their own Go programming language.
You should have a look at the C# license. I believe it stipulates that you must maintain compatibility with core classes or face the consequences.
In general, no. Unfortunately, Oracle owns the rights to Java. That means that Google must comply with Oracle's terms within the limits defined by law. Doubly unfortunately, that means that everyone with a vested interest in the situation is going to have to watch a drawn out soap opera as the case winds its way through the courts.
I don't know about that. I do perceive them to have the unfortunate combination, however, of being priced to make their customers poor(er) while not being anything special. In the end, high-priced mediocrity is merely high-priced.
Oracle are the ones that have destroyed Java since nobody trusts Oracle and their licensing.
If builders built buildings the way programmers wrote programs, then the first woodpecker would destroy civilization.
And unless you pay me some fraction of the costs up front, I wouldn't even bother doing the work to design the interfaces. That's a completely different situation.
What legal battle with Microsoft? As the OP already stated, Microsoft has put C# out there for 3rd party implementations with a legal guarantee not to sue.
So, a few issues here and there, but really, why not?
The amount of effort required. Not only does Google have to rewrite the relevant portions of Android to use C#, all the apps in the store need to be ported too.
I have used iPhone and iPad. They gave me a shitty experience. I felt like my devices were still owned by Apple and whenever I was using them I was just doing time. I moved to Android and it feels much better. I have a lot of freedom.
Had Google just straight up used C or C++ we wouldn't be in this predicament.
I sort of agree with you on that point. But C++ lacks core language support for so many fundamental things. Then there are a myriad 3rd party libraries with their own quirks.
sony-e had a working prototype all java(with I suppose their own os underneath). basically android was a clone of that.
but what sunoracle fucked up in the mid 00's was being too slow in developing j2me extensions(and the 'all java' phone os that they kept in different projects for years and years) and just badly managing how they could be used(four security dialogs for creating a file in a folder on the sd card each with two clicks from the user, for example - NO MATTER WHAT SIGNING YOU PAID FOR), thus the market for android was there when android emerged.
as for j2me, the process a new API went through to be an approved API was just stupid. the end result was api's that had always some flaw on them or were just unusable from the day 1, like the j2me 3d _scene_ descriptor shit, which was just a wrong, wrong way to go about it on the hw and use it was launching for(like, the api might have been ok for making some animation suite or whatever, but shitty for making games).
there was a market for a java development based smartphone os all right.. they just dragged their feet on it for way too long, so that market hole is now filled with android.
they just didn't care about it enough to make sure that the shit they were certifying and dictating how it should be was usable at all.
world was created 5 seconds before this post as it is.
I don't see how this argument is any different than "Apple's used of an operating system has destroyed the market..."
BTW Oracle, the Android OS is not built in Java. At it's core it is a Linux kernel. There just happens to be a Java-like API and VM for running applications.
To avoid data corruption, race conditions, and deadlock, the Java garbage collector must obtain exclusive access to memory. While the garbage collector is running, no thread on any core can access the same memory as the garbage collector. Java's garbage collector is called a "stop the world" garbage collector for a reason.
From Oracle's own site: "Major garbage collection are also Stop the World events. Often a major collection is much slower because it involves all live objects. So for Responsive applications, major garbage collections should be minimized. Also note, that the length of the Stop the World event for a major garbage collection is affected by the kind of garbage collector that is used for the old generation space." http://www.oracle.com/webfolder/technetwork/tutorials/obe/java/gc01/index.html
The approach used in Objective-C, Swift, some Python, some Ruby, and possibly in new C# provides the benefits of garbage collection along with deterministic behavior and no "stop the world" situations.
Java was never that great, and Sun/Oracle tried their best to monetize it, maximize the leverage they had over their network-effect monopoly. So boo-hoo that reality didn't go their way.
The courts are not a valid way to fix your competitive failures.
But I digress, Android is an even worse clusterfuck by itself because nobody wants to develop for it, and only develop content for it because some bigwig in their company says so.
People look at iPhones and iPads and then get bait&switched by AT&T/Verizon/Rogers/Bell/etc being told that these Android devices are exactly the same device and experience, but cheaper. Then they get a substandard experience and believe that all mobile devices are a shitty experience.
I've have iphones, ipads, and android devices. I much prefer the android devices. Despite apple's reputation of "just working", I have found
that for me, the androids "just work". They android devices have a better user experience, have more configuration options, have less "gotchas"
and just are all around more pleasant and easier to work with not to mention that google is considerably better than siri as are google maps.
Ditto for developing. I much prefer developing android apps vs iphone apps. The only downsize with android is having to pay attention to different
resolutions for different devices. This is a minor inconvenience for a developer but gives the end-user a lot more choices on what type of phone
they want so I think it's worth it. Have you actually owned and used both an iphone and multiple android devices as your primary device for any
length of time? Yes, there are some crappy android phones out there but the top of the line android phones are every bit as good as the iphones
if not better. I'm currently using the iphone 6 as my primary phone but will probably switch back to the android when it's time for a new phone
as I much prefer the android. I have a friend who used iphones 4-6 and recently switched to android as well and doesn't plan on going back.
Why Google did not buy Sun?
Tat Tvam Asi
I've never used a Java program had equivalent performance to a similar compiled program.
Just my experience. And in that context, I have a hard time respecting the idea of lots of java nonsense on the android. Maybe I'm being unfair. But I've found Java to be more of a problem over the years than a solution. It starts out as a nice thing. Its easy to develop something in Java and easy to tweak and fix stuff. But it has limitations.
I've decided to stop wasting my time responding to AC trolls/sockpuppets... so if you want a response from me... login.
Adnroid lives on top of linux kernel. Dalvik, the Google fork of Java that Oracle is crying to mommy over, still has this problem. Thankfully, the OS underneath android is very powerful and useful, and it can be tamed for use by the user if they get root access to it.
No shit. If not for Android, maybe Nokias or Microsofts efforts would have been more successful, but Oracle has managed to create enough antipathy that people will go out of their way to avoid them by now.
With these ridiculous claims that interfaces can be copyrighted, Oracle themselves killed java.
No company is going to use a language where someone claims to assert copyright over the APIs.
At my company, when management discovered this, all Java development was killed right away.
It's a real shame, but when a company's management goes deranged, you don't want to be anywhere near their path.
Why didn't Google leave Java as soon as this lawsuit kicked off? Just move to some other language, or provide some wrapper around c++ to keep the noobs happy. We'd be 3 years further along now. Must be galling for anyone at Google to see the "3 billion devices run java" splash screen when over a third of those are android devices they're getting sued over.
qt was owned by Nokia at the time, being developed in house in Nokia to be basis of programming for their mobiles.
gtk was and still is a piece of shit, abandoned for use on mobiles already because coding for it is so shit.
anyhow, google went with java because a lot of mobile devs were already familiar with java syntax and if they just offered them something better than j2me the devs would just jump straight over.
"only because some bigwig in the company says so" in regards of java is _BULLSHIT_. perhaps you're thinking about windows phone for which it is true - not because wp development would be a pain, but because wp has no market share - but there's plenty of willing android developers out there, perhaps because it's not such bullshit as objective c.
with android you get choice from 70 dollars to 700 dollars, that's the whole point. but then again some devs could only do windows applications for hardcoded 1024*768 size too so whatever..
world was created 5 seconds before this post as it is.
And now they even want to destroy the only working free and open-source mobile operating-system .. this is like destroying the ocean for profit, destroying the rain forest for profit or destroying free wisdom by patents .. so in the end Oracle yes indeed is as evil as any other terrorist / capitalist.
If Java was profitable, wouldn't Sun been profitable in the first place?
https://www.youtube.com/c/BrendaEM
If there was a good market for Java, wouldn't Sun have been been profitable in the first place?
(Let's see if that title is acceptable for the filters.)
https://www.youtube.com/c/BrendaEM
I don't see that happening server side.
And desktop/mobile, cough, Java never really got serious traction there.
1) Nothing stops JIT compiler to produce code that is faster than static compiler, on the contrary, JIT compiler can do faster, knowing runtime data (i.e. which branch is more likely to execute) OK?
2) I've written "parse file and feed it into DB" Java code that beat C code written by a colleague. (used JavaCC/JDBC)
3) In general, Java loses vs C on the following fronts:
a) operations like sin/cos, since it must produce exactly the same result on all platform
b) memory footprint
c) uh, no stack, just very fast (compared to C) heap
All that is not because of JIT compilation, but rather because of automatic mem-management. That's the price you pay for having easier time diagnosing / fixing errors.
In real life, mem footprint is the major difference you'd notice. It's in no way "times slower".
It's not about language -- Dalvik is a full-blown virtual machine, based on the JVM architecture. Using a different language wouldn't get them away from the lawsuit, as they'd still be compiling to the Dalvik VM as target architecture.
Got them moderator blues I blieve I walk out the do', With these mod-points I been gettin', I 'most never post no mo'
Android doesn't use Java. Android used to use the Dalvik runtime environment. In Android 5 they introduced ART (Android Run Time) to replace Dalvik.
Dalvik and ART work like Java in that they execute compiled bytecode, but they are separate implementations and are not compatible with Java bytecode.
You can write your own source code in the Java language and compile it to Dalvik/ART bytecode.
Oracle is mad that Google made something that worked similarly to Java, but is not Java and isn't bytecode compatible.
So we ended up using another VM called Skelmir which was a clean room Java, roughly analogous to Java 1.5 SE albeit missing some stuff mostly in the javax & sun namespaces. Performance was better, it was cheaper and it was possible to develop normal Java code with a reasonable expectation it would work on the STB. I'm sure the same sentiment was felt everywhere. Companies resented being charging an arm and a leg for a piece of shit runtime which was barely fit for purpose.
As for why Google succeeded where Oracle failed... It's because they offered more or less a full Java SE API and a rich mobile API that allowed developers to write apps without making compromises. It didn't really matter that the byte code was compiled into something else because they also provided excellent tools that integrated with Eclipse to take care of all that.
I don't believe for a second that if Google hadn't used Java as their API that Oracle would have triumphed. Not in the slightest. If anything Google did Oracle a favour by using their language and therefore keeping it relevant for portable devices.
Still, it would be a pretty good environment, though. It would attract and cross-pollinate some apps and games with the Windows ecosystem as well. Solid language, solid framework, solid tools, and fucking Oracle = a pretty good move.
Java was never any good as a mobile platform.
-jcr
The only title of honor that a tyrant can grant is "Enemy of the State."
Hardly surprising really - after being repeatedly shafted by Oracle, anyone who has had dealings with them would probably rather not have a phone at all than be dependent on an Oracle product.
Witness the way that their take over of Sun was seen as a step backwards - its not like Sun was revelling in a great reputation for its ways with customers.
I suspect their motto is:
"Let's be evil".
Sent from my ASR33 using ASCII
I agreed with that sentiment.
+----------------- | What is the question!
if it looks like a duck, walks like a duck, quacks like a duck then its a duck, even if you artificially grew it from duck embryos in a lab.
They didn't make something that worked similarly to Java - that would have been OK, C# is similar to Java after all. They made something that was *identical* to Java. If they didn't want to be sued they should have made their own API and their own language, Oracle couldn't have done anything about that then, but Google wouldn't have been able to take Java programs and run them without change either.
That means that Google must comply with Oracle's terms within the limits defined by law.
But Google doesn't use Java, they use Dalvik/ART, which aren't written by Oracle and therefore don't have Oracle's ToCs attached to them.
They do happen to be compatible with Java, but if you are allowed to copyright APIs (which is what Oracle are pushing for) then that would be absolutely insane for the IT industry, as you wouldn't be able to implement an API (or possibly even access an API) without the permission of whoever wrote that API.
Java fanboy here.
Java is the new COBOL. that's a status very few general purpose languages have reached. It runs everywhere, can do crazy stuff and banks have embraced it. I'll not jump ship for a long time.
But calling Java "a potential mobile device operating system" is bat shit crazy.
I hadn't the slightest objection to his spending his time planning massacres for the bourgeoisie... (P.G. Wodehouse)
They didn't make something that worked similarly to Java - that would have been OK, C# is similar to Java after all. They made something that was *identical* to Java. If they didn't want to be sued they should have made their own API and their own language
What it comes down to is should APIs be copyrightable. Google created their own implementation of the Java API, if companies are allowed to copyright APIs then you can kiss WINE goodbye immediately, anyone wanting to implement an existing API would also be in trouble, and you might not even be able to create a program that even accesses an API without explicit permission.
To come back to your metaphor just because something implements the IDuck interface doesn't mean it's the same kind of duck.
LE - was an asshole
" Dalvik, the Google fork of Java"
Dalvik was not a Java fork. It's VM, and it was written from scratch, not forked from a Sun/Oracle VM.
I am putting myself to the fullest possible use, which is all I can think that any conscious entity can ever hope to do.
Sensationalism at its worst...
Loading...
Because with a single, seemingly innocuous loophole in that "legal guarantee" MS could tie Google up for years in court. The anonymous OP was trolling plain and simple. Google would lose half their market cap overnight if they ever bought into that ridiculous line of reasoning.
Seriously folks, the leopard's spots may have changed color slightly but there all still in the same spot. Microsoft is never to be trusted.
And Linux is not UNIX. But it was designed for compatibility, using most of the same system architecture and API's, and software is designed to be compatible between them.
Or at least, it was increasingly compatible until systemd came along.
there was another update in 2008, with more ui building blocks. for touch phones. s60 5th gen had it and symbian^1.
but they still didn't make enough of the api's sane enough to use(practical. many api was unpractical due to asking the user 10 times yes/no to create a file.. )
world was created 5 seconds before this post as it is.
I'm calling the Waaaaaambulance.
* Carthago Delenda Est *
What Oracle fucked up on in the mid-Aughts was not copying Apple's iPhone innovation.
quiquid id est, timeo puellas et oscula dantes.
Oracle owns Java - how is that a monopoly. That's like saying Nike owns a monopoly of Nike Air sneakers....
What freakin freedom? Why the fuck do you have to register an account at Google Play (and a credit card too boot) in order to download a fucking app! Cell phone carries lock down your phone - restricting access to certain features of that phone. And some phones may or may not be able to upgrade to newer versions of Android; the restriction is not based on hardware specs.
Spare us your notion of freedom.
NDK development and debugging of C++ code on Android is no where near as polished as it is in Xcode for iOS. Debugging Java on Android is trivial, but that's not where the big money's made. Writing JNI wrappers for everything is getting tedious. I've also had to rewrite Java nio channel code that was cloned poorly in Android, causing deadlocks; whereas the same code worked perfectly in Sun's/Oracle's implementation that Google couldn't touch; only the interfaces were carried over.
I haven't used Java on anything device in years. I haven't installed it on the last 5 computers I've owned (about 10 years worth of computing hardware) and have no intention to do so, ever. Java has no place on any of my hardware and never will.
Just cruising through this digital world at 33 1/3 rpm...
You can install an APK without that. Blame the developers for not releasing free apps directly as an APK.
In that case, it's no different than Windows 8 or 10 or even OS X. There's an app store, but you don't have to use it.
Write once, run nowhere.
I was under the impression that Python was replacing Java as a teaching language in the community colleges, ensuring a monopoly of Python programmers.
Google didn't see the point.... previously, Sun offered to license Java to them for 100M, but Google decided they would make a their own clean-room implementation that wouldn't be called Java in the first place, and so would not have to pay them anything. Later, when Sun was floundering and about to be bought, why would Google want to buy the company for access to a technology when they had already decided that they would go in a direction where they wouldn't need to pay licensing fees for that technology in the first place? The only thing Google can be faulted for with not buying Sun themselves is not anticipating that the company that *DID* buy Sun would turn around and say that even a clean-room reimplementation of Java wasn't enough to be free of obligation to them, when Sun had already apparently let the matter drop when Google announced their intention to not try and actually use what Sun called Java in the first place. This is just IMO, but I think that Google probably would have decided to buy Sun before Oracle did if they had realized the headache it may have saved them, but I doubt anyone could have reasonably foreseen at the time that is how things would ultimately go down.
The biggest problem that I see, however, is that If Oracle is allowed to win this, then absolutely every single clean-room reimplementation of anything can become a target for a copyright infringement claim. And if something like that had been a precedent over a decade ago, the whole SCO vs. IBM thing over Linux could have gone *VERY* differently than it did.
File under 'M' for 'Manic ranting'
It was not "pretty amazing". I have written J2ME apps. It was a disaster zone, mostly for policy not technical reasons.
Problem one: its conformance testing was crap and the licensing for the upstream implementation was expensive. So, guess what, phone OEMs made their own. And did it badly. EVERY J2ME phone was full of bugs, often incredibly basic and obvious bugs like camera APIs that leaked every image taken (take three photos in a row->OutOfMemoryError), or drawing APIs that crashed the device if you tried to draw a bitmap to negative coordinates (correct behaviour is to clip).
This meant that in practice you had to test every version of the app on every device, because bugs were so common.
Problem two: it was tiny. Almost every API was optional, and Java has no good support for on the fly adaptation to missing APIs. So apps ended up needing a C style macro pre-processor to customise the app for every combination of bugs and missing features. You think Android is fragmented? I rofl in the face of Android fragmentation, because I've seen J2ME's equivalent.
Problem three: the CLDC VM was unbelievably sluggish, even compared to the early Dalviks.
Problem four: many APIs were protected by a code signing requirement that was painful to meet and often very expensive for no good reason. Forget about writing free hobby apps.
Problem five: no app store. Every carrier ran its own, and if you wanted distribution ....... yup. They wanted money. Often, meetings and contracts too. Just forget it.
if APIs were copyrightable, Linux would be in jeopardy. Linus pretty much created Linux by looking at BSD man pages and implementing that. (At least initially) I remember - I had a bug in some code because Linux wasn't bug compatible with BSD. Linus actually implemented "send whats left in the time" for select(2), just as the man page said, just as BSD didn't do.
but if you are allowed to copyright APIs (which is what Oracle are pushing for)
You are allowed to copyright APIs. This case went through the appellate court, which ruled that APIs are copyrightable, and to the supreme court, which let that ruling stand.
The case has moved on, and is now trying to determine if Google has a fair use defense. But there is no doubt that APIs are copyrightable under current law.
"First they came for the slanderers and i said nothing."
if companies are allowed to copyright APIs then you can kiss WINE goodbye immediately
No. There are two levels of defense. This is something you need to understand if you want to understand copyright.
1) Is a thing copyrightable? Does the author own the copyright? The answer is clearly (according to the Supreme Court) that APIs are copyrightable.
2) Is there a fair use defense? This must be answered after question 1 is answered. WINE has a clear fair use defense, because it is built for the purpose of interoperability. Interoperability is well established as fair use.
"First they came for the slanderers and i said nothing."
I remember when some video of them presenting Looking Glass at some conference and the cheers that went up when they demonstrated the rotating windows. I also remember spending a lot of time getting the LG3D WM working on some very old hardware. Fun times!
APIs are copyrightable.
I think if this is true - you have to wonder what the statute of limitations is on this concept. One could easily argue that Java, C#, AS were all inspired by C/C++ - which was developed by AT&T Bell Labs. I'm sure there's some lawyer who could craft a case that they need to pay royalties now.
True, insightful, and comprehensive. Well said.
-kgj
It's still not a fork - if you're talking about code repositories. No-one went to Sys 5's repository and made a fork to develop Linux.
There are licensed variants where this did happen - Linux isn't one of them ;).
I think if this is true - you have to wonder what the statute of limitations is on this concept.
70+ years after the death of the author. Yes, it can get messy, which is why we have court cases.
One could easily argue that Java, C#, AS were all inspired by C/C++ - which was developed by AT&T Bell Labs.
These could be called "derivative works," and the courts use several tests to determine if something is a derivative work. "Inspired by" is probably not enough for it to be a derivative work.
Also, even if they are derivative works, they may have a "fair use" defense.
"First they came for the slanderers and i said nothing."
But it's not resolved because if it's fair use to re-implement an API then everything's fine. The problem is if APIs are copyrightable with no fair-use exemption to use/re-implement then that's an issue, because anyone who writes a compatibility layer or service that adheres to a 3rd party's standard is just one copyright claim away from ruin despite the actual implementation being an original work.
But it's not resolved because if it's fair use to re-implement an API then everything's fine.
In some cases it's fair use to re-implement an API, in some cases it's not.
Seriously, go read something about copyright and fair use, then come back. This conversation will be a lot more interesting.
"First they came for the slanderers and i said nothing."
Alright, the court case is still on-going to decide if reimplementing an API is fair-use. If it is fair-use it would put us back to where we were before, if it's not then that's set a precedent where there is no fair-use protection for someone to re-implement an API, which again is what WINE, Mono, GNUstep and many other projects do.
Ok then, list a few examples of where it's fair-use to re-implement an API, and where it isn't.
"Install an APK"? Wait, I didn't think you could edit your hosts file without rooting the phone.
Socialism: a lie told by totalitarians and believed by fools.
You don't understand copyright law, it's clear. Before continuing the conversation, please:
1) Re-read my earlier comment, which explains why WINE has a fair-use defense.
2) Read the Wikipedia entry on fair use.
Educate yourself.
"First they came for the slanderers and i said nothing."
... and then it is suing Google for not picking the same gun to put a bullet on it's head. Oracle/Sun never went too far way from the 'plugin' mentality: yes, it succeeded in launching a server platform and became the industry standard, but it also failed on he desktop and web applets. And that's so sad, because at some point Sun could have owned the whole stack, they even launched a 'Java OS', which really was just a mimic... Sun lacked the money to create Android, and Oracle lacked it's vision. So sad. Now, give all you money, or else...
WINE has a clear fair use defense, because it is built for the purpose of interoperability. Interoperability is well established as fair use.
Any API reimplementation is built for the purpose of interoperability. So by your logic, they should all have a fair use defense anyway.
I agree with you. I was trying to point out that most people won't care about the subtle distinctions, and will insist that they are they same even when there are clear historical, architectural, and API differences between them.
Any API reimplementation is built for the purpose of interoperability.
No. To take the present example, Google's Java API is clearly not interoperable with the original Java code.
"First they came for the slanderers and i said nothing."
Ok then, list a few examples of where it's fair-use to re-implement an API, and where it isn't.
The thing about Fair Use is that there are a set of guidelines, but no hard and fast rules. Everything is a case by case, situational analysis. Further, since it just recently became the law that APIs are copyrightable, there isn't yet any body of legal opinions on what does and doesn't constitute Fair Use.
Those facts mean that this is green field new law territory and, even worse, that it will never become thoroughly-settled law. The nature of Fair Use ensures that every single implementor of an API will end up in court unless the owner of that API gives them explicit permission to use it.
My position is that this won't be as disruptive to the industry as people expect, because once it's known that implementing an API without explicit permission can land you in court, no one will implement APIs without explicit permission. If that had been known in the early days of Android, Java wouldn't have been used... except actually it would have because Sun was quite happy with Android's use of Java, and encouraged it. So Sun would have given Google a blanket license and we'd have no issue.
So, that's what the copyrightability of APIs is going to mean to the industry: Everyone who has an API they want others to use and implement will give blanket licenses. Everyone who doesn't liberally license their APIs will find that no one uses them.
Note to ACs: I usually delete AC replies without reading them. If you want to talk to me, log in.
you forget that Sun (before oracle owned them) sued Microsoft over J++. Microsoft lost and then C# was born
In some cases it's fair use to re-implement an API, in some cases it's not.
Well that really cleared things up.
1) Is a thing copyrightable? Does the author own the copyright? The answer is clearly (according to the Supreme Court) that APIs are copyrightable.
We've been round this set of houses before in the 80s and 90s with DR DOS and IBM and Phoenix BIOSes. Every time someone has tried to claim that APIs are copyrightable, and courts have agreed, the inevitable problems crop up. Hence:
2) Is there a fair use defense? This must be answered after question 1 is answered.
This makes absolutely no sense whatsoever. The very reason someone else uses the same API is, by definition, interoperability. At the very least It is done to allow the same code to be recompiled and for developer familiarity with the API. 1 simply becomes a nonsense when you understand this, but unfortunately that decision was made by people with no knowledge of the topic they made the ruling over nor the precedents set here before. If APIs were practically copyrightable then the fair use clause shouldn't even be necessary.
Unfortunately, yet again, legal people don't understand the difference between interfaces and software. It really isn't as if we haven't been here before and unfortunately we will go through the same thing all over again in this drawn out legal battle.
1) Re-read my earlier comment [slashdot.org], which explains why WINE has a fair-use defense.
It doesn't explain why WINE has a fair use defence at all. Define interoperability.
However you're looking at this the wrong way specifically because you can't provide an example as to why WINE doesn't have a fair use argument. By definition, any software that uses the same API does so for the purposes of interoperability. There is no other reason. Ditto Google. Developers could take existing Java code they were familiar with, recompile it and have it run in an environment that Oracle had absolutely nothing to do with and didn't build. All you end up doing is spending time in court arguing something that is already crystal clear - APIs can't be copyrighted - which I suspect might be the point.
Educate yourself.
Funny considering we've been over this very same ground in the 80s and 90s. These precedents have been set and we're just covering old ground.
This makes absolutely no sense whatsoever. The very reason someone else uses the same API is, by definition, interoperability
You would look smarter if you said, "I can't think of any other reason for someone else to use the same API."
At the very least It is done to allow the same code to be recompiled
Java code can't just be recompiled under Android. There are a number of incompatible changes.
"First they came for the slanderers and i said nothing."
No. To take the present example, Google's Java API is clearly not interoperable with the original Java code.
Total and utter nonsense and this gets to the heart of the matter. I've no idea what you mean by the original Java code by the way and this is a pretty big clue that you don't have an argument here because you haven't been able to say why. There is nothing clearly about it and I'm afraid it really doesn't matter what adverbs you use for embellishment. I'm sure Oracle's lawyers will try using the same language in their arguments and why probably why they've had to come up with an additional claim.
.Net VM or vice versa or in any of the countless compilers out there for C, C++ and other languages. This happens in countless development tools between various programming environments every day of the week. The parts of Google's API that aren't interoperable because Oracle doesn't have an implementation of them don't apply because they aren't part of the Java API as it is. If you're arguing that this is a problem then you've just argued that a programmer cannot implement their own classes, interfaces and API in general on top of an existing one or that look likes one. This is even more nonsensical than anything else and would destroy programming completely.
Google's API means you could take existing Java code, recompile it to run on a Dalvik VM and have it run on an Android system Oracle didn't build. You could reverse the process. Using this nonsensical logic it would be illegal to take code written for Java and recompile it to run in a
Either way, you have nothing to stand on here because you can't argue where interoperability doesn't apply. This is what happens when you get legal people making judgements on things they clearly haven't taken any effort to understand. We have been through this all before.
The legalities over J++ had nothing to do with the Java API. It had to do with Microsoft creating their own, subtly incompatible, version of the JVM they had actually licensed. It then became a trademark argument as Microsoft wasn't using a compatible JVM that passed compliance tests. Microsoft and Sun then settled, so this was not a court ruling. J# still existed afterwards.
It's not like we haven't been here before.
Google's API means you could take existing Java code, recompile it to run on a Dalvik VM and have it run on an Android system Oracle didn't build.
No, that's not true lol. Try using a Java Point class, for example.
Anyway, the case is currently back in court, waiting for Google to come up with a fair use defense. Why don't you offer your professional services to Google? I'm sure they'll be happy to hear that the case should be thrown out.
"First they came for the slanderers and i said nothing."
You would look smarter if you said, "I can't think of any other reason for someone else to use the same API."
You don't have an answer for when something isn't fair use, as I knew you wouldn't ;-). It then becomes trivial for Google to argue.
Java code can't just be recompiled under Android. There are a number of incompatible changes.
You have no idea what you're talking about. You take existing code and put it through a different compiler. Happens every other day of the week and arguing incompatible changes has no relevance. These hairs have been split many, many times before
Unfortunately Oracle have a bunch of lawyers who think they know how things work and Google have a bunch of technical people, with lawyers, who actually understand how this works. The arguments then fall away.
No, that's not true lol. Try using a Java Point class, for example.
Just because Google's API doesn't implement it, or indeed implement anything in the same way, has no relevance. There are countless C compilers with a long list of exceptions they don't implement. You're trying to split technical hairs from a legal perspective I'm afraid and this is where Oracle is coming unstuck very badly. These arguments have been made before about APIs that 'look' like others many times in the past. This isn't a trademark issue in the case of J++ where Microsoft licensed to be Java compatible. That's where Oracle falls foul here because they think they can frame it in those terms.
Anyway, the case is currently back in court, waiting for Google to come up with a fair use defense.
I don't know where you get that idea. Google already have a nailed on fair use argument, and as I've explained you can't miss, and Oracle are now desperately trying to get around it by claiming damage by the defendant, Google, on the value of their work (Java). To call that flimsy doesn't really do it justice and frankly, their claims are outright laughable on that front as that's their position on why this isn't fair. However, as I've explained, arguing contrary to interoperability can't even be done. This isn't a Visual J++ trademark case. Oracle wants it to be black or white and that just isn't possible.
Why don't you offer your professional services to Google? I'm sure they'll be happy to hear that the case should be thrown out.
That is incredibly nice of you but they really don't need my help. In fact, Oracle and the technical knowledge of their lawyers are doing most of the work for them. It's been amusing to see them celebrate over the concept of copyrighted APIs getting reversed, slip in the fair use doctrine to try and get around the very, very obvious problems that causes for software in general and then see them fail to argue a contrary position or argue how much of something isn't fair use. Just where is that line?
Litigation is all Oracle has as a business, and they are dying.
Why is everyone surprised about this? Microsoft was successfully sued for their jvm ages ago.
Not sure why that's related. There's just a security setting to allow our disallow installing apks. You need to load the amazon prime video app that route, since they have shitty app store and don't want to be on Google's. Or install their app store as an apk, and then download prime video from there. My old HTC had amazon store preinstalled but none of my other phones did
That whooshing sound you hear is an AC post in a mix of bold and caps extolling the virtues of host files as the solution to every problem.
Socialism: a lie told by totalitarians and believed by fools.
The very reason someone else uses the same API is, by definition, interoperability.
Except that Google's reimplementation was designed to be un-interoperable. They wanted the Java programmers to use their system instead of any officially-licenced Java system. They went to all this trouble deliberately, not to make something that worked with other Javas but to break them.
I don't think "interoperability" means allow people to write the same programs for. Microsoft went down that route with J++, it was interoperable with Java programs too. If they didn't want interoperability with Java, they would have made their own very-similar-but-not-the-same language and VM. This is what Google should have done, rather than poach the entire API and call it "not-Java " in the hope they could have all the Java they wanted without any of the disadvantages such as licencing.
I don't know where you get that idea. Google already have a nailed on fair use argument, and as I've explained you can't miss,
Then Google has nothing to worry about in court.
"First they came for the slanderers and i said nothing."
Any API reimplementation is built for the purpose of interoperability.
No. To take the present example, Google's Java API is clearly not interoperable with the original Java code.
Yes it is. You can compile and run source code that uses the common subset of Google's and Sun's APIs for both Google's and Sun's VM. That's not accidental, it's intentional, because the thing was built for the purpose of interoperability.
The Google has nothing to worry about, they have a fair-use defense.
"First they came for the slanderers and i said nothing."
Well done, Google, if that's the case.
Only boring people are ever bored.
It seems more, like google android was the breakthrough for mobile java.
Kiss most programming languages goodbye, especially Java. Because they would violate the API of C.
"The more prohibitions there are, The poorer the people will be" -- Lao Tse