Writing

Blog

Short, focused explainers on the things that come up most often in the comments.

5 min read

The Spring Security Filter Chain, Explained

What actually happens between a request hitting Tomcat and your controller method running, and how to configure it without guessing.

  • Spring Boot
  • Security
  • Java
  • REST

3 min read

Caching in Spring Boot Without Serving Stale Data

How @Cacheable actually works, why it silently does nothing half the time, and the invalidation rules that keep a cache honest.

  • Spring Boot
  • Performance
  • Java

3 min read

How Spring Boot Auto-Configuration Actually Works

The mechanism behind the magic: conditions, ordering, and how to see exactly why a bean did or did not appear.

  • Spring Boot
  • Java
  • Configuration
  • Dependency injection

3 min read

Spring Boot Test Slices, and When to Use Which

@SpringBootTest is not the only option. What @WebMvcTest and @DataJpaTest load, and why your test suite is slow without them.

  • Spring Boot
  • Testing
  • Java

3 min read

Checked vs Unchecked Exceptions in Practice

What the compiler actually enforces, why modern Java leans unchecked, and how to stop losing stack traces.

  • Java
  • Spring Boot
  • Core Java
  • Error handling

3 min read

Using Optional Without Making Things Worse

The three rules for Optional, why it does not belong on fields or parameters, and the methods that replace your if statements.

  • Java
  • Core Java

3 min read

Java Streams, and When Not to Use Them

How a stream pipeline actually executes, the collectors worth memorising, and the cases where a for loop is still the right answer.

  • Java
  • Core Java