IntelliJ IDEA
IntelliJ IDEA – the Leading Java and Kotlin IDE, by JetBrains
Java Annotated Monthly – October 2016
September is a busy conference month, in particular a number of the Java-related JetBrains team were at JavaZone and JavaOne. To save you some time, cash, and pain, October’s annotated monthly is going to be a little heavy on links to videos and slides – we go to conferences so that you don’t have to.
Community
Before JavaOne, the community was a little concerned about Oracle’s dedication to Java. However, the JavaOne keynote showcased Java past and future, NetBeans has been accepted into the Apache incubator, and there were plenty of Java EE sessions at JavaOne, including an update from Oracle stating that the future of Java EE is In The Cloud. This refocussing implies a change in deadlines, Java EE 8 is targeted for the end of 2017, and work on Java EE 9 will run in parallel and aim for an aggressive deadline of 2018.
The other “news” item that seems to crop up regularly is Oracle vs Google, and this month is no different – Oracle’s latest appeal has been denied. Game Over…? Watch this space. Or don’t, because frankly I’m bored of this topic.
In more interesting news, JavaOne was a a great opportunity to celebrate the Java Community, for example through the Duke’s Choice Awards, the various Nighthacking sessions, and the Community Keynote.
Java 9
Last month I stated that Java 9 is months off, and now apparently it’s going to be delayed another 4 months. But the community has been supportive of the move – after all, developers of all people know that estimates are hard and quality takes time. In the meantime, we can still get up to speed on what’s coming, (and the latest EAP of IntelliJ IDEA has basic support for modules), so here’s a selection of Java 9 presentations from JavaOne and JavaZone:
- JDK 9 Language, Tooling, and Library Features,
- Project Jigsaw: Under The Hood
- Project Jigsaw Hack Session
- Java 9 Modularity in Action
- Interactive Development and Fast Feedback with Java 9 REPL
- Java 9: The (G1) GC Awakens!
- Enhanced Deprecation in Java 9
- Collections Refueled (includes Java 8 too)
Java 8 and more
Java 8 is very much the default these days, if you’re not yet using Java 8 idioms learn how to refactor to a functional style, and discover hidden treasures. And as this newsletter likes to throw in the odd link to current trendy technologies, if you’re using Docker, or thinking about using containers, you might be interested in Docker for Java Developers and seeing the support in your favourite IDE.
Groovy/Grails
Groovy doesn’t get enough love in the Java Annotated Monthly, so I’ll rectify this by pointing you to the Groovy Calamari GORM special. There were some particularly interesting talks at JavaOne on the topic of Groovy, sadly the talks aren’t available (yet?) but there are some recordings from elsewhere, such as this version of Groovy and Java 8: Making Java Better (JavaOne slides), which has a supplemental blog post, and this earlier incarnation of Spock: Test Well and Prosper (JavaOne slides) – if you’re not sure about using Groovy in production, Spock is still one of my favourite testing frameworks, inspired by this presentation.
Kotlin
I’ll be told off if I include extensive resources for Groovy but neglect to balance this with Kotlin news. Firstly, Kotlin 1.0.4 came out this month. If you don’t already know what Kotlin gives you apparently it’s the Next Big Thing for Java Developers, although Android developers have been keen on it for a while. It’s often compared to both Java and Scala, and it’s another great choice for testing. It’s easy to start learning Kotlin, and there’s no need to worry about compile time vs Java. If you’re already using it please let us know.
If you’re in the London area, be sure to check out Kotlin Night – Real World Kotlin (this page also contains a discount for GOTO London). You can stay up to date on Kotlin news by following @KotlinWeekly and the Kotlin blog.
Development in General
Learn more about fashions in programming paradigms, what and how to feed back in a code review, ways to make code reviews more effective, why generics are the way they are, check out this guide to performance tuning, and then be demoralised by the fact that there is no silver bullet.
Yet More Videos
You can see the full JavaOne 2016 playlist, but as usual this is a small number of the conference talks (here’s a summary of the ones to watch). You may be more interested in the full JavaZone playlist, which has all the talks from the conference. Also this month the Duke’s Choice Award Winning Virtual Java User Group ambitiously hosted a 24 hour virtual conference, where you can see some of those JavaOne/JavaZone presenters giving talks from the comfort of their own homes.
And finally…
I’ve already mentioned the 2016.3 EAP is ready to be used. My personal favourite new feature is parameter names, but I’m really looking forward to trying out the extra support for Java 8.