Practical writing on Java, Spring, AI, and the craft of software engineering.
If you're building with Java and Spring (or trying to figure out where AI fits into your development workflow) you're in the right place. I write practical, beginner-friendly deep dives on Spring Boot, Spring AI, and software engineering fundamentals, collected here in chronological order.
Filtering by tag: spring
Spring Boot/
Spring Boot 4: Everything You Need to Know (4.0 and 4.1)
Everything new in Spring Boot 4 and 4.1, from null safety and HTTP interfaces to modularization and gRPC, plus the upgrade path from Spring Boot 3.

My CYC 2025 Demo: Why Building MCP Servers in Java Just Got Ridiculously Simple
Learn how Spring AI 1.1.0-M2 makes building MCP servers in Java incredibly simple with just annotations. No callbacks, no complex setup. Includes complete code from my Commit Your Code 2025 conference demo, showing how to expose your Java application's data to Claude and other AI assistants.

JDK 24's Major Improvement: Virtual Threads Without Pinning
Discover JDK 24's breakthrough enhancement that eliminates virtual thread pinning with synchronized blocks and methods. This comprehensive guide explores how this change revolutionizes Java concurrency, dramatically improving scalability for Spring Boot applications with legacy synchronized code. You'll learn about the technical details of thread pinning, see practical performance comparisons, and...
Creating Your First MCP Server in Java with Spring Boot
Build your first Model Context Protocol (MCP) server in Java using Spring Boot and Spring AI, exposing tools that let Claude and other AI models call your code.
Getting Started with Spring AI and RAG: A Practical Guide
Learn how to build intelligent applications using Retrieval Augmented Generation (RAG) with Spring AI. This practical guide covers everything from understanding tokens and context windows to implementing a full RAG solution.
GraphQL Spring Boot - Up and Running with Spring for GraphQL
In this tutorial you are going to learn how to get up and running with Spring for GraphQL.
Spring Data JPA Pagination: Pageable and PageRequest Tutorial
Learn how to add pagination to a Spring Boot REST API with Spring Data JPA using Pageable, PageRequest, and the PagingAndSortingRepository, with code examples.
Spring Boot @Value Annotation
Learn how to use the Spring Boot @Value annotation to inject configuration properties, set default values, and understand property source order in Java.
GitHub Copilot for Java Develpers
Earlier this year GitHub launched Copilot, an AI pair-programmer. With GitHub Copilot, get suggestions for whole lines or entire functions right inside your editor.

Spring One 2021 Presentation
I'm so honored to be speaking at this year's SpringOne Conference. This article will give you a look ahead to the presentation by explaining what you can expect and the resources from my talk.
