In my last post (How to Build Your Own Local RAG System) I showed how to build a fully local Retrieval-Augmented Generation (RAG) setup using pre-processed data. That approach works well, but it also has a downside: Your data becomes stale unless you regularly rebuild your embeddings. Here, I want to show a completely different approach, for enhancing your LLM with your very own Confluence data.
AI is all around, but when it comes to actually using it, many organizations move slow. Discussions about data protection, governance, integrations, and vendor evaluations often block concrete use cases. But here’s the surprising part:
Microservices are a well established pattern in backend development. Everybody is using it. Running more than a dozen of microservices just to handle a single domain is not uncommon. But when it comes to frontend development, things are often different. I experienced two situations a lot:
In my daily work, I strongly believe in the benefits of End-2-End tests. End-2-End tests give us the confidence that our system is working as in tended. Other than unit tests, they are black box tests running from outside against our deployed services. They are our final barrier before we deploy anything to production: if the End-2-End tests are green, we can hit the button.
If you have ever worked with an event bus like Kafka, Kinesis or ActiveMQ, I’m sure you saw some code like below. A method annotated as some kind of event-listener. Although every annotation is slightly different, the pattern is all the same. But how are those methods picked-up by Spring?
Over the last ten years, I worked with a lot of different database. I worked with traditional SQL databases such as DB2 and Oracle in a professional context. NoSQL databases such as DynamoDB have been my best friends during the last five years. On side projects I also touched stuff like MongoDB. However, I never worked with a graph-database up till now. Time to change that with Neo4J!
Last year, I mentored our working student Steffen Scheller along his way to his Bachelor thesis. Steffen was part of Bringmeister for about a year when he decided to write his final academic paper with us. Together, we came up with an interesting topic:
Recently I stumbled across an interesting GitHub repository. It shows a way to mock Spring Data repositories for testing. The clue is, that the “mocks” are actual in-memory implementations based on Dynamic Proxies. No Docker, no H2, no Mockito.
I started blogging in May 2011 - more than 10 years ago! Back then, I had no experience with blogging, but I was interested in writing and creating content. So I gave it a try, bought a yearly subscription for some webspace (at https://www.netcup.de) and began to build my blog.