I’m currently working as a researcher at Nokia Bell Labs in Antwerp. Our team is focusing on two topics: continuing the development of World Wide Streams, a platform for real-time stream processing, and bootstrapping new research on privacy-enhancing technologies.

Privacy-Enhancing Technologies (PETs)

We are currently investigating how to apply privacy-enhancing technologies (PETs) to stream processing systems. Privacy-enhancing technologies are techniques that allow privacy to be preserved when dealing with data, e.g. by minimizing the amount of data that needs to be shared between multiple parties, preferably without losing functionality.

In particular, we are looking into Zero-Knowledge Proofs (ZKPs), a technique that allows one party to prove to another that a computation was performed correctly, without revealing the input data. This technique may be applied in cases where multiple parties want to exchange insights extracted from data, without revealing the raw data itself, e.g. because it is commercially sensitive or contains personal information.

My interests lie especially in the design of programming languages, frameworks, or techniques that make it easier to develop real applications using privacy-enhancing technologies. Currently, developing with PETs is difficult, because the techniques are (mathematically) complex, tricky to use without accidentally opening up exploits, and limited in their functionality (e.g. only allowing computations on integers, or being very slow on longer computations). We aim to make it easy to use privacy-enhancing technologies, allowing them to be used to their full potential while ensuring that they are used correctly.

World Wide Streams

The emergence of the “Internet of Things” has lead to a proliferation of sensors and actuators that are constantly exchanging streams of data. These streams range from small sensor samples, such as reading a speedometer in a car, to high-bandwidth video streams, e.g. a dash-cam. Then, applications combine streams and continuously process their data to detect notable events and act upon them, e.g. detecting when a car might run into another and brake automatically.

Our team at Nokia Bell Labs is developing World Wide Streams (WWS): a platform on which such applications for real-time stream processing can be developed. WWS can ingest and process data and video streams in many different formats. An application built on WWS consists of a dataflow, which is composed of several operators. These operators can be one of a set of built-in operators (ranging from map and filter to object detection) or custom-made by the developer. The operators are then “wired up” in a language called XStream, a library for TypeScript.

My focus is on how to make programming such massively distributed, massively parallel applications easier – by developing suitable programming languages and techniques.