Chat with Your Knowledge Base: A Hands-On Java & LangChain4j Guide

Disclaimer: This article details an experimental project built for learning and demonstration purposes. The implementation described is not intended as a production-grade solution. Some parts of the code were generated using JetBrains’ AI Agent, Junie. Large Language Models (LLMs) like GPT-4, Llama, and Gemini have revolutionized how we interact with information. However, their knowledge is … Read more

Building FormPilot: My Journey Creating an AI-Powered Form Filler with RAG, LangChain4j, and Ollama

Disclaimer: This article details an experimental project built for learning and demonstration purposes. The implementation described is not intended as production-grade solution. Some parts of the code were generated using JetBrains’ AI Agent, Junie. Have you ever found yourself filling out the same information on web forms over and over again? Name, email, address, phone … Read more

A Journey to DevNexus: Challenges, Friendships, and Java

I love participating in conferences—you get to meet so many industry and thought leaders in person, hang out with them, and build lasting bonds. That’s why I had always wanted to attend DevNexus, which isn’t far from where I live. Despite receiving an invitation, my trip kept getting delayed due to visa complications. But finally, … Read more

JetBrains Junie: My Firsthand Experience

LLMs are taking over the world—almost literally. Every day, we hear about new models popping up, pushing the boundaries of what AI can do. While some worry about it, others welcome it with open arms. The truth is that AI will inevitably take over certain tasks, much like cars replaced by horse-drawn carriages. But that … Read more

DIY JVM Part 1: Decoding the Magic – Parsing Java

It’s been about 15 years since I last touched C programming. Back in university, I remember writing a small C program for an assignment—just a simple parser that could scan a C source file and check if its structures were correctly formed. It was nothing fancy, just a mundane academic exercise, and to be honest, … Read more

SummarizingTokenWindowChatMemory: Enhancing LLM’s Conversations with Efficient Summarization

LLM chat models have become an integral part of many applications today. We are all experimenting and exploring the best ways to utilize them effectively. For Java developers, LangChain4j has been an incredible tool in this journey. By design, most available APIs, such as ChatGPT and Gemini, operate in a fire-and-forget mode. They don’t retain … Read more

A Journey of the Heart: Visiting Madinah and Makkah

For years, I had longed to visit the two holiest cities in Islam: Madinah, the city made sacred by the presence of our beloved Messenger Hazrat Muhammad ﷺ, and Makkah, the house rebuilt by Messenger Hazrat Ibrahim (عَلَيْهِ ٱلسَّلَامُ), also known as Abraham.   Madinah holds a unique place in the hearts of Muslims, not merely … Read more

Java Tips # 01 –  Writing Shebang Scripts in Pure Java

Did you know you can write a CLI script in Java just as easily as you would in a bash script, and run it directly from the shell? This is commonly called a shebang script, though we are mostly familiar with writing them in bash. Bash scripts are great, but they can be obscure to … Read more

Family, Castles, and Code: Exploring Europe’s Old Cities

  Last month, my family and I finally embarked on a long-awaited trip to the UK, specifically to London. We spent four days there, staying with my uncle and visiting my sister, whom I hadn’t seen in five years. Meeting my niece for the first time was a special moment, especially since she wasn’t shy … Read more

Creating a Command Line Tool with JBang and PicoCLI to Generate Release Notes

Lately, I have been playing with JBang and PicoCLI, and I am pretty amazed at what we can do with these tools. I needed to create a script that would go to a specified repository on GitHub, check the commit range, and verify if any tickets were associated with them. Additionally, I wanted to check … Read more