Featured image of post The Hello World of Generative AI: Exploring Retrieval Augmented Generation

The Hello World of Generative AI: Exploring Retrieval Augmented Generation

This blog post discusses setting up a Retrieval Augmented Generation (RAG) system, highlighting its application in Generative AI projects. It explains RAG's role in addressing Large Language Models (LLMs) limitations, approaches to implementing RAG, and the critical Extract, Transform, Load (ETL) pipeline for data management. Additionally, it guides on data partitioning, transformation, and persistence to enhance retrieval and generation efficiency.

Featured image of post Practical Approaches to Database Testing with Testcontainers

Practical Approaches to Database Testing with Testcontainers

This blog post explores the benefits of using Testcontainers for database logic testing, highlighting the limitations of in-memory databases and offering insights into optimization techniques for real database testing. It provides a practical guide to integrating Testcontainers with xUnit, Dapper, and FluentAssertions, aiming for more accurate and reliable testing outcomes.

Featured image of post From Virtual Hideaway to International Talk

From Virtual Hideaway to International Talk

In this blog post, I share my journey from a tech enthusiast to a public speaker at Cloud Technology Townhall Tallinn 2024, highlighting the challenges and growth experienced along the way. Discover the importance of communication, collaboration, and the invaluable support of colleagues in transforming apprehension into accomplishment.