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.

Spring Boot
· 15 min read

Implementing Request/Response Logging with Spring Boot's Rest Client

Learn how to implement clean and efficient request/response logging for Spring Boot's Rest Client, including both inline and interceptor-based approaches.

Spring Boot
· 7 min read

Using Environment Variables in Spring Boot

Learn how to effectively manage configuration and secure sensitive data using environment variables in Spring Boot applications. This comprehensive guide covers best practices, security considerations, and practical examples.

Building a Spring Security Login Form with JTE
· 20 min read

Building a Spring Security Login Form with JTE

Learn how to create a secure login form using Spring Security and JTE (Java Template Engine) with support for both traditional authentication and OAuth2 providers.

spring
· 9 min read

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.

Java
· 9 min read

Building Generative AI Applications in Java: From Simple Scripts to Spring Boot

Explore how Java developers can leverage generative AI, from basic curl commands to robust Spring Boot applications. Learn to integrate OpenAI's GPT models, use Java's HTTP client, and harness the power of Spring AI for structured output and simplified AI integration.

Spring Boot
· 9 min read

Calling Multiple LLMs with Spring AI: A Practical Guide

Learn how to integrate and call multiple Large Language Models (LLMs) like OpenAI's GPT-4 and Anthropic's Claude in a single Spring Boot application using Spring AI. This tutorial covers project setup, configuration, and implementation of separate controllers for each LLM.

Spring Boot
· 11 min read

Building Intelligent Chatbots with Spring AI: Implementing Chat Memory

Learn how to create a context-aware chatbot using Spring AI and OpenAI. This tutorial covers implementing chat memory, handling token usage, and managing context window limitations for more engaging AI conversations.

Spring Boot
· 19 min read

Building a Streaming Chat Bot with Spring Boot and Spring AI

Learn how to create a responsive and engaging chat bot using Spring Boot and Spring AI, featuring both traditional and streaming response capabilities for an enhanced user experience.

Spring Boot
· 9 min read

Building Dynamic Forms with Spring Boot and JTE: A Practical Guide

Learn how to create interactive web forms using Spring Boot and Java Template Engine (JTE) in this comprehensive tutorial.

Spring Boot
· 16 min read

Building a Dynamic Task Manager with Spring Boot, JTE, and HTMX

Learn how to build a dynamic Task manager using Spring Boot, Java Template Engine (JTE), HTMX and Tailwind CSS.