Building a RAG system for EU funding discovery

14 June 2026 - 16 minutes read

EU funding data is public, useful, and still surprisingly hard to search.

The information is spread across different sources: the official EU Funding & Tenders Portal, programme pages, PDFs, national contact points, and other datasets such as KEEP.eu. Each source is useful, but none of them maps directly to the way a normal person asks a question.

A user will not usually ask:

Show me Horizon Europe Cluster 6 calls with destination FARM2FORK and eligible action type RIA.

They will ask something more like:

We are a Cyprus-based SME building an AI tool that helps farmers detect crop disease from satellite and drone images. Is there any EU funding for this?

This is the kind of problem where a RAG system can be useful.

Not because the model knows EU funding. We actually do not want that. We want the model to search the right source material, reason over it, and produce an answer grounded in the data we indexed.

Read more...

Self-referential structs in Rust

31 May 2025 - 8 minutes read

In Rust, there are a few paradigms that are more difficult to implement than in most other languages. Today, we'll look at one of those: the self-referential structs.

A self-referential struct contains a field that borrows from another field of the same struct.

First of all, let's start with a simple example of why we might want to use this kind of pattern.

Read more...