Welcome! This webpage contains information about my expertise and professional activities. I am specialized in solving difficult logical problems and implementing the solutions in software systems. Apart from this I also enjoy building visual experiences using computers. I like brainstorming together with a team, sharing my experience and insights, and help finding the path towards a good product. My academic background is in physics, nanobiology, mathematics, and theoretical computer science. You can find contact details at the bottom of the page.
I have affinity with challenges across the software stack, both high-level and low-level. I like designing things, thinking about the interactions, and making sure everything is implemented in a modular and efficient way.
When developing user interfaces I strive for perfection. I make sure things look good on every screen, taking into account different sizes and resolutions. I highly value simplicity, so I try to make things self explanatory using visual metaphors users are familiar with. When necessary I use Inkscape to design custom vector icons that blend in well with the rest of the design.
Many of my projects have included interactive graphics, from a clickable world map to an interactive 2D and 3D molecule editor. Developing graphics with complex user interactions is one of my main strengths. In some cases I design a custom event handling system to ensure predictable behavior, and to ease the implemenation of new domain-specific features.
Application performance should never stand in the way of the user, so when needed I look for advanced ways to improve rendering efficiency. I have worked with the OpenGL API, developed GLSL shaders, and implemented general-purpose GPU computation. A good understanding of these technologies is very useful when working with 3D graphics.
I have experience developing deep learning networks, and using existing machine learning solutions in Python. Jupyter Notebooks are an essential part of my Python workflow. The machine learning world is very fast-paced, and novel applications are published each day. Many existing solutions are just waiting for new application contexts.
One of my academic specializations is formal verification using interactive theorem provers. I primarily use the Coq Proof Assistant, using which I have developed various formal theories. Developing formal proofs is very challenging, and requires careful thinking about even the smallest logical inferences. Below are some formalization projects I did in my spare time.
|Kleene Algebras and shortest paths||
|Functional permutation factorization||
|Arithmetic decidability via automata||
|The Cantor-Bendixon theorem||
|Brouwer’s Continuity Principle||
|2022||Machine Learning for Image Processing|
|Goal||Build machine learning based tools for automatic image classification to help automate the photography pipeline.|
|2017-2021||High-quality Chemical Diagrams|
|Technologies||Dart HTML5 Canvas|
|Goal||Design a new and highly configurable web-based chemical diagram editor from scratch using the Dart language.|
|2017||Molecule Sketching for Education|
|Goal||Integrate MolView’s 2D molecule sketcher in a learning platform used by over 500 schools in the Netherlands.|
|2016||Custom Mailing Scheduler|
|Technologies||Golang PostgreSQL Docker|
|Goal||Develop a stable and efficient program to send thousands of daily emails parameterized by an SQL database.|
|Goal||Enable free online molecule editing and viewing using open cheminformatics databases and modern web technologies.|
In 2015 I started the Nanobiology Bachelor program at TU Delft. I was excited to learn about the molecular machinery and laws of physics that make life possible. While this fascination remains with me, I decided to move away from the empirical sciences to study mathematics and logic.
I moved to Nijmegen where they offer a strongly theoretical computer science track, including courses on Category Theory, Type Theory, Computability Theory, and Automated Reasoning. My interest in mathematics increased, and I followed courses about Axiomatic Set Theory, Model Theory, and Graph Theory.
|Title||Circular lists in Iris ∗ deduction rules of ▷|
|Supervisor||dr. Robbert Krebbers|
|Title||Nerve fiber tracing in bright-field images of human skin using deep learning|
|Supervisor||dr. Erik Meijering|
|Group||Biomedical Imaging Group Rotterdam|
|Full Text||TU Delft Repository|
|Topic||Interactive Environments at the Industrial Design faculty|
|Description||During one full semeter we were introduced to Interaction Design for physical environments, and challenged to go through an iterative designing and prototyping procedure in small teams.|
I am always interested in new challenges and opportunities. For questions and business inquiries please send an email to
|Address||Heemraadstraat 6, 6525 TH, Nijmegen|