RSSAmplifier

Blog

Thomas Williams blog

Thomas Williams blog from Hobart, Tasmania.

thomasswilliams.github.ioRSS feed ↗10 posts

Latest posts

More improving inputs in Shiny & R Markdown

In my last post on improving inputs in R Markdown/Shiny , I covered four improvements to quality of life in interactive reports and dashboards. In this blog post I have three more, all approaches I’ve used to add professionalism to self-service R Markdown files. In yet another plug for R Markdown: most of these techniques can be used in a single *.Rmd file, or can be included in many by putting…

#tsql2sday July 2026: Query red flags

Brent Ozar asks what makers us groan on reading in an SQL query, for this month’s T-SQL Tuesday. Nowadays I look after 3rd-party databases more than internally-developed ones, so I accept there’s a whole lot of ex-best practices, vendor preferences, and possibly shortcuts in queries I might come across - whether it’s a poorly-performing query, a blocker, or an error. (Although, when I developed…

Improving inputs in Shiny & R Markdown

Shiny - and R Markdown output to HTML - have a range of input controls available for data-driven interactive reports & dashboards: text, dropdowns, date, checkboxes, range sliders, and more. I’ve got a few posts on R Markdown and a whole repo with tips and tricks at https://github.com/thomasswilliams/r-markdown-snippets . Here’s why I keep plugging R Markdown and Shiny: it’s a free, open-source…

Strava activity heatmap in R Markdown

Recently I came across Sam Wilson’s Python heatmap map of Strava runs, and wanted to see if I could get a similar result using R Markdown. Check out the original for a great write-up of the ins and outs and mapping frequency of visits, pace and gradient at Sam’s GitHub repo https://github.com/moresamwilson/running-heatmap . Instead of using the Strava API (like I did in April for the 2026 chart…

Parallel SSH

In my work I support Linux servers, which means focusing on the command line; that starts with the SSH command. (I’ve previously blogged about personalising the Linux command line , and different SSH keys - this post continues this theme.) Parallel SSH (install with sudo apt install pssh ) is faster to run commands against multiple remote hosts from the command line, while using SSH under the…

Mermaid diagrams for Jekyll

Mermaid https://mermaid.ai/ is “Markdown inspired” diagrams as code. With the diagram defined as text, special/proprietary software isn’t needed to create or edit diagrams. The text defining the diagrams can be edited by anyone - so can be kept up-to-date. Diagrams can also be version controlled, like any other code. This matters because better diagrams improve documentation, and communication.…

Ten years of blogging

Ten years ago, I started this blog. It’s my third or fourth blog - in 2010, I retired my personal blog https://thomasswilliams.blogspot.com as well as my second technical blog on abandoned site “TheRuntime”, now only on archive.org (side note: 2010 was a busy year, I started studying a Masters degree). In 2016 I started this blog with the aim to write at least one post a month. Ten years on, I’ve…

#30DayChartChallenge: Trend change detection in R, from Strava runs

This is my entry for the 2026 #30DayChartChallenge https://bsky.app/profile/30daychartchall.bsky.social ; day 26 is all about trends. I wanted to understand: when do trends change? So, based on a hunch and using Strava data, I fired up RStudio and set to work (Claude and ChatGPT helped with the code, especially the Strava API stuff). The resulting R Markdown file and instructions are on GitHub,…

Improving R linting (2026 update)

Linting helps catch potential issues in code before they cause problems, and helps keep coding style consistent, whether for yourself or as part of a team or project. Linting uncovers surprising issues: recently, I added lints which caught that I was passing the same parameter by name twice in a call - meaning one of the parameter values was silently ignored. Previously, using lintr for R, I…

Different SSH keys for different purposes

I have different SSH keys for different purposes - one for GitHub, one for GitLab, Azure SSH, other servers etc. Keys for different accounts too - work or personal. Some Git hosting sites allow SSH keys for signing commits; a signing SSH key can be different than the authorisation SSH key. Reminder: an SSH key is basically you. If someone has access to an SSH private key, they can impersonate you,…