RegelRecht

RegelRecht is an exploration by the Nederlandse Digitale Dienst into machine-executable legislation, and one of the three projects in the service’s starting selection. The question is whether a law can be written as code that runs, so that different organizations apply the same law the same way and a citizen can follow how a decision about them was reached.

Each regulation becomes a rulework: a YAML file with the legal text and its machine-executable interpretation side by side, article by article, one file per version. A versioned JSON Schema guards the structure. The intended outcomes are written down as Gherkin scenarios that lawyers and developers both read. Where possible they come straight from the explanatory memorandum, so a table in the parliamentary papers becomes a test that has to keep passing.

The reference engine is written in Rust and compiles to WebAssembly, which gives the same result on a server and in the browser. It is a reference and not a requirement. RegelRecht fixes the rule format and the expected outcomes; any implementation that reproduces them on the same rules and data will do.

Two choices weigh more than the technology. Open norms stay visible: where a law leaves room for interpretation, the rulework marks the open term and records who fills it in, instead of letting a programmer’s choice quietly become law. Judgements that belong to a person, such as a hardship clause, stay with a person. And there is no single central interpretation. The competent authority publishes its reading, others can publish theirs next to it, and whoever receives a decision can run the rule again and check the outcome. Eelco Hotting and I work out that argument in Rules as Executed.

Around the engine sit an LLM-assisted converter for existing law, an editor for legal experts that is still taking shape, a graph of how laws depend on each other, and a demo with a citizen portal and a simulation of legislative change. The roadmap splits the work into five phases, from defining what machine-readable legislation has to do up to anchoring it in institutions.

More at regelrecht.rijks.app. The engine and the encoded corpus live on GitHub.

Related publications:

Related talks:

Claude-threads

Claude-threads brings Claude Code capabilities directly into team chat platforms like Mattermost and Slack. The bot enables collaborative AI pair programming by streaming Claude’s responses live to chat threads, allowing teams to work together on coding tasks in real-time. Each conversation thread maintains its own isolated Claude session with features like interactive approvals through emoji reactions, git integration with worktrees, and support for image analysis. As the tagline suggests, it’s “screen-sharing for AI pair programming, but everyone can type.”

The source code is available on GitHub.

peerpressure

Peerpressure is a social digital detox app that uses peer accountability to help users stay focused and avoid digital distractions. When you join a focus session with friends, they can see when you try to break focus - turning social pressure into your productivity superpower. The app blocks distracting apps in real-time, requires peer approval for emergency unlocks, and tracks focus streaks and session history. By making productivity a collaborative effort, peerpressure helps users break free from digital distractions together.

Learn more at peerpressure.social.

Algorithm Management Toolkit (AMT)

A comprehensive platform for the governance and oversight of algorithmic systems within organizations. Developed for the Dutch government, AMT provides a structured approach to documenting, testing, and managing both AI and non-AI algorithms used in public services and decision-making processes.

The toolkit features a bookkeeping system for algorithmic applications, technical validation tools, ethical assessment frameworks, and transparency reporting capabilities. It helps organizations maintain proper documentation, ensure regulatory compliance, and implement responsible AI practices. AMT represents an important step toward algorithmic accountability in governance and public service delivery.

The source code is available on GitHub.

Living Labs

The Living Labs for IR Evaluation (LL4IR) is a new evaluation paradigm. I implemented an API for participants ( researchers) and sites (search engines) that take part in this Living Lab (which is also run as a CLEF lab). The API allows participants (researchers) to evaluate their ranking systems on real users of real sites (search engines). On the flip site, it allows sites (search engines) to benefit from the knowledge of the research community.

The LL4IR API can be used by researchers to perform several actions such as obtaining queries, documents and feedback and to update runs. The API is RESTful, that is, everything is implemented as HTTP request, and we use the request types GET, PUT and DELETE.

The source code is available on GitHub.

It has mainly been developed by Anne Schuth and Krisztian Balog.

Related publications:

Related talks:

Lerot: an Online Learning to Rank Framework

Lerot is a framework, designed to run experiments on online learning to rank methods for information retrieval. It has mainly been developed by Katja Hofmann and Anne Schuth. The source code of Lerot is available from bitbucket.

Related publications:

Related talks: