David is a graduate physics student at ETH Zürich conducting research in complex networks, functional-relational programming and databases. Professional he is part of a small software consultancy, Clockworks, specialized in distributed stream processing and data-intensive applications. Rust is his first choice for both and has reliably proven itself as the perfect systems programming language to tackle problems in stream processing, database research, and concurrency.
Malte is interested in data-centric functional and relational programming. His aim is to create simple and effective programs — to unveil technology’s inherent beauty. Currently, he writes his Master’s thesis on online analysis of distributed dataflows with differential computation at ETH Zurich and TU Munich. In his software consulting firm Clockworks, he uses the same tech stack to explore novel stream processing paradigms. And, of course, all implementation is done in Rust!
Modern, stateful web applications are increasingly dependent on high-frequency updates from multiple database systems. Each application maintains its own dynamic view of shared and private data. What if querying and synchronizing this state consistently was as simple as writing a Datalog query?
Using a reactive query engine powered by differential computation built in Rust, we explore this question. We present a novel architecture that selectively and incrementally replicates state between server and application and thus allows you to develop as if you were sitting right inside of the database.