My website — revised
This site had been running on the same setup for several years now. I kept the content up to date (i.e., adding publications and projects), but never touched the underlying structure. As a consequence, the landing page had grown into a wall of text, the tags were less informative, and finding a specific paper meant endless scrolling. Over the past few days I worked through that backlog with Claude as a coding assistant, which made it feasible to do in an afternoon or two what had been sitting on my list for a long time. Here is what changed, in the order that matters most to you as a reader.
-
The landing page and the blog are separate now. The landing page is now a proper entry point with a short bio, cards that lead to the tools and the tests, and a handful of selected publications with a sentence each on why they matter. The blog is its own stream, reachable from the navigation, and no longer competes with the introduction. If you arrive here for the first time, you should be able to tell within a few seconds what I work on and where to go next.
-
Full-text search across the whole site. Press
/or Ctrl/Cmd+K anywhere on the site and a search box opens; arrow keys move through the results, Enter follows one, Esc closes it. The search covers posts, pages, and every single publication, each with a jump link to its year, and it does not insist that you spell things precisely: accents and umlauts are folded away, soLudtkefinds Lüdtke andMottusfinds Mõttus without hunting for the right key, and partial words count, soinvarianalready brings up the measurement invariance work. Several terms narrow the result rather than widen it. The index is only fetched the first time you actually search, so nobody pays for a feature they do not use. -
Consistent tagging. I redid the tagging from scratch, asking an LLM to read each page and propose the tags from its actual content, which I then reviewed. The result is about thirty terms that carry meaning, and tag pages that show how many items are behind each one and keep posts separate from the standing pages. This is the same approach I used for the citation update — and having tried it on both, I am fairly convinced that LLM-assisted tagging has a clear edge over manual coding.
-
Web analytics without cookies. I wanted to know which pages people read — mostly to decide what is worth maintaining — so the site uses Simple Analytics, a Dutch service built for exactly that purpose. It sets no cookies, stores no IP addresses, and does not fingerprint. A page view is recorded with the page address, the referring page, the country derived from your time zone, and a shortened browser description — that is the entire record. Nothing links two visits together, so there is nobody to recognize, nothing to consent to, and no banner to click away. The data stay on servers in the Netherlands. The privacy policy states in plain language what is recorded and what is not.
Beyond that, the overall website navigation was rebuilt so that every page is two clicks from the front page. The publications page was reworked: It now has a filter bar — open access, data and code, preregistrations, registered reports — and a search box. Abstracts are now included as additional information, and the citation figures next to each entry come from OpenAlex: one click opens the citations per year, the field-weighted impact and the field percentile. There are several small changes that help to further improve the overall look and feel: a dark mode, with a toggle in the header offering light, dark, and system-default; consistent spacing and type throughout; and a redrawn favicon. If something looks broken, reads badly, or you have a suggestion for what should come next — drop me a line.