I imagine a lot of the stats are based on tooling defaults. For Java we have a corporate standard to use tabs but most developers aren't even aware of their indents. Eclipse defaults to spaces so thats what ends up in a lot of code.
Kiosk licensing has always been required for shipping machines pre-installed with java. Sun required this 10+ years ago as well.
I'm not a lawyer but I believe this what you can do that you can't do with windows is ship the kiosk without java but give the customer a CD-ROM to install it themselves.
How is this any difference than installing Windows 10 on your Kiosk? You are paying for updates and support. You are free to use Linux and OpenJDK if you don't want to pay. Most shops I know of are using OpenJDK for all production deployments at this point unless you have a larger contract with Oracle.
Why is there very little talk about the First Amendment in this whole discussion? They are asking to write custom software.
The supreme court has ruled in separate cases that:
1. that software is speech
2. that a person (corporations are people according to them) cannot be compelled to speak
It would seem to me that the FBI could perhaps subpoena technical documentation from Apple but it should be required to hire their own developers to write this software.
I may be reading this wrong, but the only annoyance I would find with their toolchain is that it seems like their true source is the FontLab files which is not open source. The readme says that you should be able to edit the UFO files and generate the FontLab files from that, but it doesn't seem to be the process they are using. It would be nice for the UFO files to be the true source rather than a derived one.
So many people commenting here don't seem to have read the article. His comment is that Java can't connect to an SSL encrypted URL out of the box. He is saying that because it can't do this it can't be used for a basic command line app. He isn't complaining that it is hard to write a command line app in Java.
This URL is not self signed and loads fine as a valid cert in a browser. In the Java application it throws an exception about a bad handshake. I believe this is because Java 7 and 8 ship with less trusted certificate authorities than browsers do.