I just announced the new Spring Boot 2 material, coming in REST With Spring:
At the very beginning of last year, I decided to track my reading habits and share the best stuff here, on Baeldung. Haven’t missed a review since.
Here we go…
1. Spring and Java
>> Programming with modularity and Project Jigsaw. A Tutorial Using the Latest Early Access Build [infoq.com]
A solid and quite exhaustive writeup about the new modularity work coming to Java 9.
>> Spring Batch Tutorial: Introduction [petrikainulainen.net]
A quick, solid intro to what Spring Batch is and what it’s super useful for.
>> How does JPA and Hibernate define the AUTO flush mode [vladmihalcea.com]
Very cool and to the point guide to how flushing – and in particular auto-flushing – behaves differently between Hibernate and JPA.
>> Using Exceptions to Write Robust Software for Stable Production [codecentric.de]
A high level writeup about using exception to control execution flow and actually having an disciplined approach to how logging is done and how these exceptions flow through the system.
>> Use JUnit’s expected exceptions sparingly [jooq.org]
An look at using annotations for flow control. And an entertaining peek into Lukas’ “love” for Java annotations.
>> Redefining java.lang.System With Byte Buddy [tersesystems.com]
A super cool look into JVM level security.
>> Introduction to CompletableFutures [kennethjorgensen.com]
A straightforward introduction to using the new(ish) CompletableFuture in Java 8.
>> Don’t tell me what to make, tell me how to make it [radicaljava.com]
You think Java object instantiation is simple? Think again.
Also worth reading:
>> Spring Cloud with Turbine [java-allandsundry.com]
>> Spring Boot DevTools First Look [patrickgrimard.com]
>> Java 9 Jigsaw – A Missing Piece [codecentric.de]
>> Integrate JMS queue into a Spring Application [talangsoft.org]
>> Binaural Beats with Java [devdungeon.com]
Webinars and presentations:
>> Groovy: The Awesome Parts [infoq.com]
>> Richer Data History with Event Sourcing [infoq.com]
>> Gpars: Concurrency in Java & Groovy [infoq.com]
>> Seriously, Use Groovy Now [infoq.com]
>> Introduction to Reactive Programming [infoq.com]
>> Get the Most out of Testing with Spring 4.2 [spring.io]
>> Webinar: What’s new in Spring Data [spring.io]
Time to upgrade:
>> 8u72 Update Release Notes [oracle.com]
>> Spring Boot 1.3.2 released [spring.io]
>> IntelliJ IDEA 15.0.3 Update is Available [jetbrains.com]
>> Hibernate Validator 5.3.0.Alpha1 is out [in.relation.to]
>> Feature Toggles [martinfowler.com] and >> Categories of toggles [martinfowler.com]
The feature toggle is such a powerful technique done right. It can save you oh-so much merging time, testing work and just general sanity that it’s not even funny.
This article will be one to follow (because it’s getting published in installments) and come back to.
>> How a Smell in the Tests Points to a Risk in the Design [thecodewhisperer.com]
As always, a solid deep dive into the nuances of testing and maintainable code, and as always – a good read.
Also worth reading:
>> AWS Webinars for January, 2016 [aws.amazon.com]
>> Test Automation Helpful Tips [testingtesting321.com]
>> Enough with the IoT Naysaying Already [daedtech.com]
It’s sometimes easier to be negative about new technology that you don’t fully understand. But after being wrong a few times, it’s a good idea to re-evaluate that approach.
On a personal note – I didn’t get Twitter in the early years and it really took a while until I came around, so now I tend to twink twice before making any decision on something new (Spapchat?).
>> What To Avoid When Doing Code Reviews [daedtech.com]
Very insightful thoughts on doing code review in a way that is genuinely helpful and helps the developer receiving that feedback grow. Which is very hard to do, but also very worthwhile to strive for.
>> Microservices Use Cases [techblog.bozho.net]
The “microservice craze of 2015” (as it will be referred to by historians) is dissipating as sobering, experience-anchored tales are being published.
Here are some valid usecases for microservices. On a personal note, I do think that there are a good few more valid usecases where it’s worth paying the complexity cost.
But generally speaking, I wholeheartedly agree with the sentiment of – don’t jump into microservices because you think it would be cool, as that rarely works out.
Also worth reading:
And my favorite Dilberts of the week:
>> You did a good job on the high notes [dilbert.com]
>> My phone took care of it [dilbert.com]
5. Pick of the Week
>> What’s in a Story? [dannorth.net]