
You Don't Need Lombok Anymore
Lombok was a lifesaver. For years, it spared us from writing repetitive getters, setters, constructors, toString, equals, and hashCode. But modern Java has caught up. Between records, sealed classe...

Lombok was a lifesaver. For years, it spared us from writing repetitive getters, setters, constructors, toString, equals, and hashCode. But modern Java has caught up. Between records, sealed classe...

Java 26 arrives with pattern matching hitting its stride, concurrency moving toward finalization, and pragmatic APIs for startup optimization and cryptography. After the heavy language work in Java...

In this post, I’ll share how I developed a small RAG (Retrieval-Augmented Generation) app that can accept a document upload and let the user ask questions about the content. But this is not a Spri...

In this post, we’ll explore a significant change in Angular v21 that affects how we test our components. Angular v21 introduces Vitest as the default testing library, replacing the long-standing Ja...

Most AI chat apps feel forgetful: once you move on, the AI loses context. In this tutorial, we’ll fix that by building a chat application that remembers conversations using Spring AI and Angular. T...

Java 25 lands with a strong mix of language quality-of-life, better startup, powerful profiling, and practical APIs. This post is a hands-on tour: short sections, runnable code, and concrete scena...

Spring Boot 4 is coming in November 2025 (Milestones versions already available), built on top of the brand new Spring Framework 7.0.0. If you develop modern Java applications, this release brings ...

In this tutorial, you’ll learn how to supercharge your Git workflow by using GitHub Copilot to generate commit messages that follow the Conventional Commits standard—directly inside both VS Code an...

In this tutorial, we’ll build a simple AI-powered chat application using Spring AI on the backend and Angular on the frontend. This is a great starting point for anyone looking to integrate AI capa...

In this tutorial, we will develop a simple Chat Client application using Spring AI integrated with Google Gemini, a powerful language model from Google. As Java developers familiar with the Spring ...

Angular continues to evolve, introducing significant improvements for developers. Since Angular v17, the Angular CLI has adopted an ESBuild-based builder, replacing the original Webpack solution. A...

In this tutorial, we will develop a simple Chat Client application using Spring AI without coupling with the actual LLM Model. Since many Java developers are already familiar with the Spring framew...