I am the Head of Developer Relations at DuckDB Labs.
I lead the work on the documentation and the blog for the DuckDB project,
and give talks.
I run the DuckCon conference series and
perform
interesting
benchmark
experiments.
Outside of my day job, I am a contributor and board member of the
Graph Data Council (GDC, formerly known as LDBC), a nonprofit that promotes the use of graph data management technology
and defines TPC-style
graph
database
benchmarks.
Previously, I spent a decade in academia.
I obtained my PhD in software engineering at the Critical Systems Research Group of TU Budapest, followed by a 3-year stint as a post-doctoral researcher at the Database Architectures group of CWI Amsterdam.
My research focused on graph queries, graph analytics, and benchmarks.
Along with updates on what I’ve been up to, I also share some notes on this site.
Links#
GitHub –
Twitter –
LinkedIn –
Stack Overflow –
Google Scholar –
DBLP
News#
For older items, see the news archive.
Talks#
Benchmark Organizations (FOSDEM 2026)#
slide deck
Graph Databases (FOSDEM 2025)#
slide deck
DuckDB (GOTO Amsterdam 2024)#
slide deck
LDBC (FOSDEM 2023)#
slide deck
Notes#
Since the acquisition of Kùzu, a number of forks have popped up:
LadybugDB/ladybug: Ladybug is an embedded graph database built for query speed and scalability. predictable-labs/ryugraph: Ryu, a fork of Kuzu, is an Embedded Property Graph Database built for speed with vector search and full-text search built in. Kineviz/bighorn: Integrates with Kineviz’s GraphXR visualization platform. Supports both embedded and stand-alone server modes. Vela-Engineering/kuzu: KuzuDB fork maintained by Vela Partners. Embedded graph database for AI agent memory with concurrent multi-writer support....
This tutorial is an adaptation of “Public DuckLake on Object Storage” to the object storage of Leafcloud, an Amsterdam-based cloud provider.
Hosting DuckLake on Leafcloud Setting Up the Object Store Navigate to the Leafcloud dashboard at https://create.leaf.cloud/.
Go to Object Store | Containers and create a new container. We’ll use the name ducklake-storage.
Tick the checkbox for Public Access and copy the link. This will be e.g. the following:
https://leafcloud.store/swift/v1/AUTH_f84982a3c5d04bd0846197d8e8ce3ddd/ducklake-storage Setting Up the OpenStackClient Fetch the credentials from Leafcloud....
I recently re-ran the experiments of “Big Data on the Move: DuckDB on the Framework Laptop 13” on Windows. For this, I installed Windows 11 on the laptop, which turned out to be trickier than I initially envisioned. So here are my notes for the installation.
Booting up Create a Windows installer USB stick e.g. with Balena Etcher During boot, press F2 and pick Administer Secure Boot Go to the Boot Manager and add the ....
“Benchmarking gone wrong”, one of the best and funniest benchmark talks I’ve ever come across – it’s well worth 6 minutes to watch it....
This year I have taken a few long train rides across Europe, such as Berlin to Amsterdam. I found that these need a bit more preparation than the typical short flights within Europe, so here’s a(n incomplete) checklist for these trips:
Gear:
Dress comfortably. Take noise cancelling headphones. Take multiple charging cables. Some companies just rolled out USB-A ports, so I would definitely take both a USB-A and a USB-C cable for phones....
Following the recent retirement of KùzuDB, I published an updated version of my Graph Databases slide deck. I originally presented this back in February at FOSDEM 2025. Now I updated it with new systems such as KùzuDB’s fork, LadybugDB....
In the last decade, I had my fair share of bad sleep. Often, I pushed through it helpless and the usual tips – aim for a regular bedtime, stop caffeine intake mid-afternoon, reduce screen time in the evening – did not help much. However, over the years I built up a repertoire of techniques.
This is obviously not medical advice. All I can say that if you’re struggling with bad sleep, I encourage you to experiment....
I recently discovered the typos command line tool and created the following workflow around it in Git repositories:
typos -w # writes the changes to file git add -p # allows you to review the changes interactively Some git clients use line-based diffs, which make the differences difficult to see. In these cases, you may want to switch to the diff-highlight tool, which is shipped with Git. On macOS with Apple Silicon and a Brew-installed git, you can use these commands to make git use it:...
I recently attended SIGMOD and chatted with people in the data management and graph processing communities.
These conversations and other interactions led me to come up with a few research ideas.
I lack the time to actively pursue them, but I list them below for future reference.
If you are working on something similar or would like to collaborate, please drop me a line!
Single-node LDBC Datagen: I have long thought about developing a single-node variant of the LDBC Datagen....
I moved to the Netherlands during the summer of 2020 — about five years ago. Over time, I’ve learned about a bunch of useful apps and cards that make everyday life easier. Here’s a brief collection of them.
Apps You’ll very likely need the DigiD app for dealing with taxes, accessing municipal messages, vaccination records, etc. The built-in iOS weather app and widget are quite unreliable. Most people use the Buienradar app, which also has its own widget....