Programming By Stealth

PBS Tidbit 8 – Interview with jq Maintainer Mattias Wadman

Programming By Stealth

Show Notes

In this Tidbit version of Programming By Stealth, Bart Busschots interviews Mattias Wadman, one of the maintainers of the jq project. This was great fun as we just finished learning jq in Programming By Stealth.

Read an unedited, auto-generated transcript with chapter marks: PBS_2024_08_06

You can find out more about Mattias & the various projects he is working on at the links below:

Follow Mattias on Mastodon: @[email protected]

Mattias’ GitHub Profile which hosts some notable jq-related projects:

fq for querying binary files with the jq language: github.com/wader/fq

A list of presentations about fq — github.com/…

The fork of the Go version of jq that powers fq — github.com/…

The language definition file for adding jq support to IDEs like VS Code: github.com/wader/jq-lsp

jq implemented in jq: github.com/wader/jqjq

Some notable jq commits & files mentioned during the interview:

The very first commit in Haskel

The switch to C

jq’s main function which is written in jq — https://github.com/…

A version of jq implemented in Go: github.com/itchyny/gojq

A version of jq implemented in Rust by Michael Färber: github.com/01mf02/jaq

Michael’s formal specification of the jq language — github.com/…

The “Denotational Semantics and a Fast Interpreter for jq” academic paper by Michael

More from Programming By Stealth

Oct 11, 2026

We dust off our memory from where we left off learning about Jekyll back in PBS 181 in June of last year. After some housekeeping, Bart takes us through the challenge solution from PBS 181, and then teaches us how to add metadata to our static sites. After the new material, he sets up where we're going next in learning how to organize our content with Jekyll taxonomies. He even explains what the weird term "information architecture" means in this context.

Sep 26, 2026

In this final episode of Tidbit 19, Bart walks us through the very few libraries he used for the final design of his Linkifier CLI App. His choices on tooling to build nice terminal commands and provide color in the terminal (like red for error messages) were based on simplicity, the fewest dependencies, and active support. It was a very fun episode to record as he wrapped the entire story up in a bow.

Aug 30, 2026

We're back with Part B of Tidbit 19, where Bart walks us through the architecture of his Linkifier module. He starts with the three data modeling classes that he's been using for decades, but explains how hard it is today to extract article headlines. He walks through how he developed an extraction logic but had to do it per domain. That sounds crazy but he uses surprisingly few sites for his articles for Security Bits and Let's Talk Apple.

Aug 11, 2026

In Part A of Tidbit 19, Bart explains the problem he needed to solve, which was bringing a script he's written up into the modern age as a JavaScript command-line interface app that can help navigate the AI landscape. As always, his explanation is geared towards teaching us the fundamentals with his problem as the example.

Jun 28, 2026

One of the things that helps your posts get traction is if you have a nice, pretty card that displays when you post the URL on social media. Plain blue links just don't get clicked. With WordPress and other dynamic Content Management Systems (CMSs), you can get plugins to create the pretty cards. But with Jekyll (and Hugo and other Static Site Generators), you need to build the capability into your theme. It's not hard, you just need to know what metadata to build, and of course, Bart is here to teach it to us.

See all episodes →