I recently created a database engine (exosql [1]), only query and no storage. It uses postgres-like foreign data wrappers to get all data.
It's not valid for big datasets, as it stores all in memory (or maybe it is?), but as a learning experience has been amazing to think and develop a real database: planner, executor, choose algorithms, implement features as lateral joins and so on.
I will definetly listen very carefully to these talks.