2019

Syntax trees, APIs, templates, and languages

My old pal Tim St. Clair recently lamented about the state of configuration languages on Twitter: The world desperately needs a configuration language that isn’t YAML or JSON. Something that is “expressive enough” yet “simple enough”. That balance is super hard. Since thinking about the semantics of configuration systems and languages is a longstanding hobby of mine, I chimed in: Part of the problem is endemic confusion over what constitutes a “language” — at best, YAML and JSON are human-readable serialization formats for abstract syntax trees.

Sometimes you can’t even improve what you do measure

As part of my Sisyphean quest to find a bicycle computer that doesn’t make me want to start tracking my rides with an abacus or programmable loom, I recently bought a new Garmin device to replace a deceased old one. The new device is not yet enraging me; it has everything I liked about my old one, plus more, and it also works. Part of the “more” is three new mountain bike metrics.