1. Java and Spring

>> Writing Clean Tests – Divide and Conquer

A good unit test should fail for only one reason” – this simple fact is oh so important to adhere to and has a major impact on the quality of your design. When I’m writing a test and I’m unable to identify a single and clear responsibility for that test – broadening the test is never a good answer. Instead – this is a clear code smell to tell me that I need to work on my design.

>> A beginner’s guide to Hibernate Types

A quick intro to Hibernate – before anything else, it’s good to have a solid grasp on the basics.

>> Listing a ZIP file contents with Stream API in Java 8

How to work with zip files in Java and the new Java 8 APIs – quick and to the point.

>> java.lang.OutOfMemoryError

Good page to understand the infamous Java OutOfMemoryError, and a cool presentation style as well.

>> Spring Boot 1.1 GA Released

Spring Boot is moving fast – maybe it’s time to mothball my usual heartbeat / health hand rolled APIs and start using /metrics instead.

Finally – a few upcoming and recorded webinars over on spring.io:

2. Technical

>> RFC2616 is Dead

Probably the biggest news this week – if you’re doing any kind of work involving HTTP: the old HTTP spec is now OBSOLETE and replaced with 6 separate specs. 5 years in the making (or is it 7?) – I am excited about this. On to HTTP/2.0.

>> HTTP/1.1 just got a major update.

And a quick recap of the changes that were introduced with the new HTTP spec.

The more grasp you have over what happens on the network, the better off you’ll be understanding the overall behavior of your system, and the better chance you’ll have to find the low handing performance optimization fruit. And don’t think the isn’t any – there usually is.

>> 5 Ways to Use Log Data to Analyze System Performance

An interesting read on how log data is used to identify performance issues – the kind of insights that you can only get from large amounts of data across many applications.

>> Make Tests Fail

Reg-Green-Refactor – it’s a message that has been discussed over and over (and over) again; this is a quick and solid intro to the question – But Why Red?

3. Musings

>> The Zen of Rejection: Let Companies Go In That Other Direction

A personal read about dealing with rejection after a job interview, the myriad of chaotic factors that go into the outcome and how to deal with it with more nuance and sanity.

Baeldung Pro – NPI EA (cat = Baeldung)
announcement - icon

Baeldung Pro comes with both absolutely No-Ads as well as finally with Dark Mode, for a clean learning experience:

>> Explore a clean Baeldung

Once the early-adopter seats are all used, the price will go up and stay at $33/year.

eBook – HTTP Client – NPI EA (cat=HTTP Client-Side)
announcement - icon

The Apache HTTP Client is a very robust library, suitable for both simple and advanced use cases when testing HTTP endpoints. Check out our guide covering basic request and response handling, as well as security, cookies, timeouts, and more:

>> Download the eBook

eBook – Java Concurrency – NPI EA (cat=Java Concurrency)
announcement - icon

Handling concurrency in an application can be a tricky process with many potential pitfalls. A solid grasp of the fundamentals will go a long way to help minimize these issues.

Get started with understanding multi-threaded applications with our Java Concurrency guide:

>> Download the eBook

eBook – Java Streams – NPI EA (cat=Java Streams)
announcement - icon

Since its introduction in Java 8, the Stream API has become a staple of Java development. The basic operations like iterating, filtering, mapping sequences of elements are deceptively simple to use.

But these can also be overused and fall into some common pitfalls.

To get a better understanding on how Streams work and how to combine them with other language features, check out our guide to Java Streams:

>> Join Pro and download the eBook

Course – LS – NPI EA (cat=REST)

announcement - icon

Get started with Spring Boot and with core Spring, through the Learn Spring course:

>> CHECK OUT THE COURSE

Partner – Moderne – NPI EA (tag=Refactoring)
announcement - icon

Modern Java teams move fast — but codebases don’t always keep up. Frameworks change, dependencies drift, and tech debt builds until it starts to drag on delivery. OpenRewrite was built to fix that: an open-source refactoring engine that automates repetitive code changes while keeping developer intent intact.

The monthly training series, led by the creators and maintainers of OpenRewrite at Moderne, walks through real-world migrations and modernization patterns. Whether you’re new to recipes or ready to write your own, you’ll learn practical ways to refactor safely and at scale.

If you’ve ever wished refactoring felt as natural — and as fast — as writing code, this is a good place to start.