I am an Associate Professor of software evolution at the University of Twente, working in software analysis, modelling and restructuring since 2004; before that I was a machine code hacker and a railway engineer. My past affiliations include Dutch, Belgian, German and Russian companies and research institutions, as well as volunteer participation at Wikimedia activities. My research interests gravitate towards elicitation of structure in software and improving it by taking advantage of whatever structure is present. At my previous job as a Chief Science Officer, my day to day activities involved developing compilers, writing metaprograms and analysing migration projects. My current focus is on doing industrially relevant research from the academia, teaching several courses, supervising students and developing prototype software.
Research Highlights
Teaching Highlights
- Céline Deknop from UCL defended her PhD thesis about Advanced Code Diffing; I had the pleasure to serve as a copromotor next to Kim Mens and Johan Fabry.
- On 4 December 2023, I have given a traditional yearly guest lecture at the UvA about software legacy and renovation, invited by Thomas van Binsbergen.
- Two of students I am currently supervising (one BSc and one MSc), are using Xsmith presented at GPCE just a few weeks ago.
Practice Highlights
- Apollo++ is a tool for automated assessment of learning outcomes in programming projects, developed by Arthur Rump under my supervision.
-
Crossover enhances BabyCobol with a
CALL
statement that one can use to call C from BabyCobol or BabyCobol from C.
-
A unique paper about refactoring Whitespace code was presented at SATToSE 2023 and published at CEUR.
Social Highlights
- Last event of the year for me was the 4TU.NIRICT Community Day — learnt a lot!
- Submitted a Shonan proposal with Kazutaka Matsuda, Romina Eramo and Michael Johnson. Fingers crossed!
- Preparations for STAF 2024 are ongoing…