About
Technical beauty emerges from reduction.
Philosophy
Unix taught me that small, composable tools outperform monoliths. The demoscene proved that constraints breed elegance — 4 kilobytes can hold an entire world if every byte earns its place.
I apply both to professional software: root-cause over symptom treatment, precise terminology, no corporate fluff. A Fetch API call is not AJAX. A modal dialogue is not "a modal".
The Path
Started on an Amiga 500 in 1989. FreeBSD, Unix and Linux since 1996, with stops at BeOS and QNX along the way. macOS as Unix working platform.
Between 1996 and 2008: every Linux distribution worth mentioning — LFS, Gentoo, Red Hat, SuSE, Slackware, Ubuntu, Mandriva, Debian. Build, break, rebuild. Learn the limits of each system.
Text analysis tool in Pascal — letter frequencies and logical correlations. First website
AS/400 and Linux administration
Tcl/Tk development, Linux administration
Full-stack development, Linux administration
Linux LPIC lecturer
CEO, 2006–2018. Java development, full-stack development, Drupal, SPIP, FreeBSD, IT services
Full-stack development, Android and iOS development, FreeBSD and Linux administration. Typo3, Drupal, Craft CMS
Python development, Craft CMS. Built an automated legal claims platform — OCR, document recognition, LaTeX output
Racked, repaired, and co-managed thousands of Linux servers
Senior Developer at a German DIY wholesale giant. React, TypeScript, Spryker
Each station shaped the conviction that the best code is the code you did not write.
Demoscene
Growing up in Babelsberg — Germany's historic film city — I knew people in the scene — watched demos render, listened to tracker music, composed some of our own. Pinball machines in the background, CB radio as the communication channel. Greetings go out to Frosch and Piranha.
The demoscene is where art meets constraint. 4K intros, 64K demos, tracker music — maximum expression from minimum resources. It is not nostalgia. It is a design discipline.
That mindset runs through everything I build: if the solution is larger than it needs to be, the solution is wrong.