How Oracle is killing Java
Jun. 8th, 2013 03:05 pmBack in 2009, I found out that Oracle was buying Sun Microsystems, and let out a shriek of horror. Sun was a company in trouble, but their IP portfolio was impressive - it included Java, OpenOffice, and MySQL, all essential technologies for open source computing at that time. Since then, my worst fears for those technologies have been realized. First, MySQL forked after the core development group revolted - the future of that DBMS is now MariaDB and SkySQL. Then, the core OpenOffice developers revolted, and formed LibreOffice, leaving Oracle with little choice but to hand OpenOffice over to the Apache Group.
As for Java, Oracle was already threatening its future by trying to claim ownership of the Java APIs, which are basically the standards for what makes a Java implementation a "real" implementation. Now, they are taking the unprecedented step of charging its customers for bugfixes to some of the core Java libraries.
I think I understand what Oracle is doing. They figure that if they can charge for Java bugfixes, they can monetize the billions of lines of Java business code out there, and also have a shot at a piece of the Android market. (Java is required to write native apps for Android, at least for now.)
Unfortunately, this is bad news for the future of Java, which may soon itself relegated to the status of a legacy langage, COBOL-style, if IBM and other vendors can't pressure Oracle to change its tune. More unfortunately, there's not much else out there that matches Java's portability. If Oracle wanted to mess with millions of people's careers, they couldn't have picked a better technology to mess with.
The way I see it, IBM, Google, and others have three choices. The first is to give Oracle the finger and fork Java, the way MariaDB and SkySQL forked MySQL and LibreOffice forked OpenOffice. IBM and Oracle certainly have the talent to do it, and it would make Oracle's claims of copyright over the APIs all the more pressing. The second is to deprecate Java in favor of another widely adopted language, such as Python. (In fact, I think a good case could be made for Python to replace Java. Python is easy to learn, absolutely enterprise-grade, rather powerful in the right hands, and runs on Windows, Linux, various kinds of UNIX, and Mac. If you want Python on iSeries or Python on zOS, you're kinda taking your chances right now; but if IBM adopts Python, then it won't take long for them to get these ports up to speed. Ports of Python to Android already exist, and it would make sense for Google to make Python and Go into alternative languages for native Android development, just as they are now used for Google App Engine development. Several good IDEs for Python exist, including IDLE, Aptana, and classic Eclipse with PyDev.)
The third choice is to grin and bear it, paying Oracle a huge sum of money for bugfixes to distribute to their customers. Somehow, I don't see them, or Oracle, agreeing to this.
In the meanwhile, that ancient curse, "may you live in interesting times," seems to have re-asserted itself onto the computing world. Bummer.
As for Java, Oracle was already threatening its future by trying to claim ownership of the Java APIs, which are basically the standards for what makes a Java implementation a "real" implementation. Now, they are taking the unprecedented step of charging its customers for bugfixes to some of the core Java libraries.
I think I understand what Oracle is doing. They figure that if they can charge for Java bugfixes, they can monetize the billions of lines of Java business code out there, and also have a shot at a piece of the Android market. (Java is required to write native apps for Android, at least for now.)
Unfortunately, this is bad news for the future of Java, which may soon itself relegated to the status of a legacy langage, COBOL-style, if IBM and other vendors can't pressure Oracle to change its tune. More unfortunately, there's not much else out there that matches Java's portability. If Oracle wanted to mess with millions of people's careers, they couldn't have picked a better technology to mess with.
The way I see it, IBM, Google, and others have three choices. The first is to give Oracle the finger and fork Java, the way MariaDB and SkySQL forked MySQL and LibreOffice forked OpenOffice. IBM and Oracle certainly have the talent to do it, and it would make Oracle's claims of copyright over the APIs all the more pressing. The second is to deprecate Java in favor of another widely adopted language, such as Python. (In fact, I think a good case could be made for Python to replace Java. Python is easy to learn, absolutely enterprise-grade, rather powerful in the right hands, and runs on Windows, Linux, various kinds of UNIX, and Mac. If you want Python on iSeries or Python on zOS, you're kinda taking your chances right now; but if IBM adopts Python, then it won't take long for them to get these ports up to speed. Ports of Python to Android already exist, and it would make sense for Google to make Python and Go into alternative languages for native Android development, just as they are now used for Google App Engine development. Several good IDEs for Python exist, including IDLE, Aptana, and classic Eclipse with PyDev.)
The third choice is to grin and bear it, paying Oracle a huge sum of money for bugfixes to distribute to their customers. Somehow, I don't see them, or Oracle, agreeing to this.
In the meanwhile, that ancient curse, "may you live in interesting times," seems to have re-asserted itself onto the computing world. Bummer.