Klaus Brunner’s personal website
  • About

(Gently) updating Espenak’s ΔT polynomials

An update to Fred Espenak’s ΔT polynomials, fitted to recent Earth-rotation observations and simulations.

19 September 2026

GraalVM optimization levels matter (and the JVM is amazing)

Optimising my GraalVM native image for size made it surprisingly slow. A comparison of all five optimisation levels, with the JVM setting the pace.

19 September 2025

Producing WebP images with R

R plots can be considerably smaller without losing any detail. A look at lossless WebP, conversion in Quarto, and direct output with ragg.

13 July 2025
 

Finding your Java code in GraalVM native images

What does Java’s Math.fma() become in a GraalVM native image? Finding the code with LLDB, then taking a look at auto-vectorisation.

7 June 2025
 

What I should probably tell students about generative AI

Use AI to help you learn, but don’t outsource the learning itself. Some thoughts on code, knowledge, and becoming a thin wrapper around an LLM.

22 May 2025

ZIP: when good enough is good enough

ZIP is everywhere, despite a vague specification and plenty of implementation quirks. For close to forty years, it’s been good enough.

26 February 2025
No matching items