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: Java

Spring Boot 3 to 4 Migration: Fixing Every Break

Spring Boot/

Spring Boot 3 to 4 Migration: Fixing Every Break

A hands-on Spring Boot 3 to 4 migration: upgrade a real app, then fix Jackson 3, modular starters, the missing H2 console, test imports, and JSpecify.

Read article 27 min read
Spec-Driven Development for Solo Developers: My Plan
· 15 min read

Spec-Driven Development for Solo Developers: My Plan

Spec-driven development without the team process. The lightweight plan I use as a solo developer, from one PRODUCT.md to a retro, on a Spring Boot Stripe store.

Spring AI TypeSafe: Build a Model Router From Scratch
· 23 min read

Spring AI TypeSafe: Build a Model Router From Scratch

Learn Spring AI TypeSafe by building a model router from an empty app. One Choice question to Jev picks the cheapest OpenAI model tier for every prompt.

Jev Spring Boot Starter: One Dependency, Done
· 21 min read

Jev Spring Boot Starter: One Dependency, Done

Use the Jev Spring Boot Starter to call TypeSafe's Jev API with one dependency and an injected JevClient, then see how Spring Boot 4 auto-configuration works.

Java Structured Concurrency in JDK 27: A Practical Example
· 23 min read

Java Structured Concurrency in JDK 27: A Practical Example

Learn Java structured concurrency in JDK 27 with a runnable example comparing sequential calls, virtual threads, and StructuredTaskScope failure handling.

Getting Started with Jev in Java and Spring Boot
· 28 min read

Getting Started with Jev in Java and Spring Boot

Call TypeSafe Jev from Java and Spring Boot with RestClient. Build a complete support-ticket example with typed questions, Java records, and a mocked API test.

I Built My Own Content OS With Claude Code
· 10 min read

I Built My Own Content OS With Claude Code

How I built Content OS with Claude Code and Spring Boot to manage videos, blog posts, and newsletters, and what changes when you build software for one user.

ColdFusion Inside Spring Boot (One Property)
· 16 min read

ColdFusion Inside Spring Boot (One Property)

Render real ColdFusion .cfm templates inside a Spring Boot app using the BoxLang Spring Boot starter and one undocumented boxlang.suffix property.

The 5 Steps of AI Adoption: Which One Are You On?
· 12 min read

The 5 Steps of AI Adoption: Which One Are You On?

Learn the 5 steps of AI adoption mapped out by Boris Cherny, creator of Claude Code, and how to move from copy-pasting code to supervised autonomy.

Can You Trust AI-Generated Code?
· 13 min read

Can You Trust AI-Generated Code?

Can you trust AI-generated code? It depends on what you already know. A look at why AI code feels great in unfamiliar stacks and how to verify it.