Lots of interesting writeups on Java 9 this week.
Here we go…
1. Spring and Java
>> Oracle Looking to Move Java EE to Open Source Foundation [infoq.com]
The Java EE team is considering going to an open-source, third-party foundation.
I think that’s going to be a great step forward – I hope it really works out this way 🙂
>> How Java 9 Incubator Modules Will Change the Future of Java [takipi.com]
Incubator modules will be an interesting feature of the JPMS – they will allow a safe introduction of unfinished or experimental APIs.
>> Introducing Actuator Endpoints in Spring Boot 2.0 [spring.io]
Spring Boot 2.0 brings many important (and cool) changes to Actuators, along with the support for Spring MVC, Spring WebFlux, and Jersey.
>> Vavr, Collections, and Java Stream API Collectors [4comprehension.com]
It turns out that the Stream API Collectors can be used easily with Vavr (formerly Javaslang) Collections and even with tools like Option or Try.
>> Fast Forward >> Vavr 1.0 [blog.vavr.io]
The rebranded Javaslang is approaching the first full release under the new name – which will include numerous changes like splitting the main artifact into smaller ones, and Java interoperability improvements.
>> Rise and fall of JVM languages [frankel.ch]
I always find it interesting to look at the high-level state of our ecosystem.
My one note here is that I would have liked to also see Clojure in there as well.
Also worth reading:
>> Guide to Spring Boot REST API Error Handling [toptal.com]
>> Hibernate Tips: How to map an association to a Map [thoughts-on-java.org]
>> The best way to implement an audit log using Hibernate Envers [vladmihalcea.com]
>> Cancel CompletableFuture [blog.tremblay.pro]
>> How to Effectively use Groovy GPath in REST Assured – Part 3: GPath XML [james-willett.com]
Webinars and presentations:
>> Migrating Speedment to Java 9 [infoq.com]
Time to upgrade:
>> Hibernate ORM 5.1.10.Final released [in.relation.to]
>> Hibernate Validator 6.0.2.Final released [in.relation.to]
>> First candidate release of Hibernate Search 5.8.0! [in.relation.to]
>> IntelliJ IDEA 2017.2.3 RC is Out [blog.jetbrains.com]
>> Spring Cloud Dalston SR3 Is Now Available [spring.io]
>> IntelliJ IDEA 2017.2.2: Kotlin 1.1.4, Better Performance and More [blog.jetbrains.com]
2. Technical
>> Leveraging the Power of a Database ‘Unbundled’ [confluent.io]
“Unbundling” a database makes it possible to share it between multiple services without causing an unnecessary coupling.
>> Code Smells: Deeply Nested Code [jetbrains.com]
A cool case-study of refactoring code containing multiple nested for and if statements.
Also worth reading:
>> Stubbing Key-Value Stores [techblog.bozho.net]
>> Not everything that is vital is also your core business [codecentric.de]
>> APIs as infrastructure: future-proofing Stripe with versioning [stripe.com]
>> Git: A guide to create self-reviewed merge requests [advancedweb.hu]
>> Sharing state between steps in Cucumber-JVM using Guice [thinkcode.se]
3. Musings
>> Perspective on Architectural Fitness of Microservices [infoq.com]
Microservices are not a recipe for a universally applicable architecture.
Like anything else – they need to be applied when there are specific problems to be solved.
>> How You’re Probably Misunderstanding TDD [daedtech.com]
There are many misconceptions about the TDD out there – here are just some of the most interesting ones.
Also worth reading:
>> Guard Rails, Not Prison Bars [thecodewhisperer.com]
>> Are Code Rules Meant to Be Broken? [daedtech.com]
4. Comics
And my favorite Dilberts of the week:
>> The urge to disagree [dilbert.com]
>> Attention span [dilbert.com]
>> Ethics [dilbert.com]
5. Pick of the Week
This week I’ve finally announced the new stuff that’s coming down the pike in my REST With Spring course – all related to Spring 5 (along with the upcoming price change):