
Show Notes
Two weeks ago, Bart Busschots and I recorded a Programming By Stealth episode covering more queries using the jq language on our JSON files. We spent so much time working through the challenges from the previous installment that we only made it halfway through his tutorial shownotes. So this week we're back with the second half of that episode, Programming By Stealth 158B.
Before we got started learning, I alerted the audience to a significant enhancement to the material we create for this show.
I use a service called Auphonic to do a lot of things with the audio file when we're done recording, including leveling the audio, adding metadata to it, converting it to an MP3, and FTPing it to the server for the listeners to download. Auphonic has recently added AI-generated transcripts which we've had for a while with Programming By Stealth.
The NosillaCast has chapter marks you can use to jump to content in the audio file, but Chit Chat Across the Pond has never had that. Auphonic now adds auto-generated chapters based on the content in the audio file. These chapter marks are in the transcript, which allows you to jump to the text of where we cover a specific topic.
Not only that, these auto-generated chapters are in the audio file so in your podcatcher you can now jump to different sections instead of having to scroll through to find something Bart explained.
The chapter marks are not perfect, and we have no intention of editing them, but it should give you an easier way to find what you want to re-listen to or re-read. While Bart has spectacular tutorial shownotes, the transcript gives you the full flavor of the conversation we have while Bart is teaching me.
Now back to this week's show! In this week's episode, Bart explains two powerful commands for searching JSON files with jq, the `contains` and `inside` functions. In this context, he goes through testing for containment with strings, arrays, dictionaries and he tells us about default containment. Then he explains how the `inside` function does essentially the opposite of testing for containment. Finally, he shows us how to use regular expressions with the `test` function to get as granular as we like with our jq filters.
You can find Bart's fabulous tutorial shownotes at pbs.bartificer.net.
Read an unedited, auto-generated transcript: CCATP_2023_12_30
Join our Slack at podfeet.com/slack and look for the #pbs channel, and check out our pbs-student GitHub Organization. It's by invitation only but all you have to do is ask Allison!
More from Programming By Stealth
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.
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.
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.
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.
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.