4 ms·
I feel good and bad about this. I invested several years at coming up to speed with Java 8+ (using templates, rx, streams, the new time APIs). It was not hard,
by maga_2020 7y ago
I feel good and bad about this.
I invested several years at coming up to speed with Java 8+ (using templates, rx, streams, the new time APIs).
It was not hard, but difficult to unlearn some C++ idioms around templates, consts, reference model and object lifecycle management.
Clearly this driven by Oracle's continuous poisoning of Java ecosystem (eg https://headcrashing.wordpress.com/2019/05/03/negotiations-failed-how-oracle-killed-java-ee/ https://headcrashing.wordpress.com/2019/05/03/negotiations-f... )
And I think Kotlin is a solid step forward from the Java without the baggage of pre JDK 1.7 idioms.
But for a small (often single dev) shops trying to compete in Android marketspace, it is quite hard to maintain this rate of change (plus incorporating all the new (and better ways) of doing android with androidx )
- EdwardDiego 7y agoNot sure what you mean by templates, but you can still use Rx, streams and java.time.* in Kotlin. It's pretty much just a nicer Java.
- vbezhenar 7y agoKotlin has its own (much better IMO) alternative to streams: Sequence. I see absolutely no reason to use streams in Kotlin.
- sievebrain 7y agoThe Java 8 streams library can auto parallelize things. That's the main reason it was created in fact!
- elcomet 7y agoOne simple reason: you already know streams and don't have time to learn sequence.
- ptx 7y agoStreams is mostly just Java's version of what many languages already had, so the concept was something new to learn for Java developers, but once they know it they shouldn't have much trouble with Kotlin's sequences – or with Python's list comprehensions, Lisp's mapcar, and so on.
- EdwardDiego 7y agoSure, but the point is, you can.
- tracer4201 7y agoI’ve seen that article you linked to before. Is the solution to working around Oracle not OpenJDK? I’m not completely informed on the topic. Would appreciate some more context.
- pjmlp 7y agoUsually FUD against Oracle, that always ignores that Oracle is also the major company behind OpenJDK. Until there are other companies actually implementing JEPs into OpenJDK in the same volume as Oracle, OpenJDK == Oracle.
- scns 7y agoDidn't Red Hat take over recently?
- pjmlp 7y agoRed Hat has taken over the maintainance of the already released Java 8 and Java 11, LTS versions, not development of new features. This is a now somewhat outdated report of contributions per company to OpenJDK. https://blogs.oracle.com/java-platform-group/building-jdk-11-together https://blogs.oracle.com/java-platform-group/building-jdk-11...
- threeseed 7y agoIf Oracle was really intent on poisoning Java then they would've stopped investing in it and fired all of the core engineers. But they didn't. And have in fact continued to invest in the ecosystem e.g. GraalVM, OpenJDK.
- sonnyblarney 7y ago'Poisoning' is not 'getting rid of'. 'Poisoning' is taking full control and monetizing everything, making everything closed source. GraalVM is in their eyes, going to be a money-making investment. The only extent to which it might be partly OSS is a function of how much they really had to give away. Oracle's objective with Java is to take a huge bite out of the Enterprise and do with Java what they did with their DB. Imagine if we all needed to talk to an Oracle sales person to make our app :)
- dragandj 7y agoYou mean like you have to be a registered Apple developer to sell your iOS app in their app store which captures 99.99% of the market? Java is, fortnately, out of Oracle’s reach unless your company is actively looking at “enterprisey” solutions, but in that case it probably makes more money from that sort of deals than it is paying to Oracle, so it’s all good...
- apta 7y ago> making everything closed source. Except the JDK is now fully open source. Even previously closed source JDK projects are now open source.