Jamie Tanna | Software Engineer

  • /now
  • Blog
  • Popular Posts
  • Archives
  • Search
  • Salary History
  • Open Source Projects I Maintain
  • Support Me
  • Hire Me (CV/Resume)

 Article

Creating a private mirror of the Renovate docs (5 mins read).

Featured image for sharing metadata for article

How to set up a copy of Renovate's documentation, pinned to an older version, for your organisation.

Tue, 19 Nov 2024 15:37 by Jamie Tanna's profile image Jamie Tanna . #blogumentation #renovate.

 Article

Lessons learned adding OpenTelemetry to a (Cobra) command-line Go tool (10 mins read).

Featured image for sharing metadata for article

Some reflections on what I've found good and not so good about instrumenting a command-line tool with OpenTelemetry.

Sun, 17 Nov 2024 18:03 by Jamie Tanna's profile image Jamie Tanna . #blogumentation #go #command-line #opentelemetry #dependency-management-data.

 Article

Summarising the skipReasons for Renovate data exports (2 mins read).

Featured image for sharing metadata for article

How to work out what skipReasons you have for your Renovate package data.

Fri, 08 Nov 2024 18:22 by Jamie Tanna's profile image Jamie Tanna . #blogumentation #renovate #dependency-management-data.

 Article

How to diff two datetimes (1 mins read).

How to get the number of seconds, minutes, and a human-readable time comparison between two datetimes.

Thu, 31 Oct 2024 18:27 by Jamie Tanna's profile image Jamie Tanna . #blogumentation.

 Article

Why has Firefox 133 lost all my tabs? (2 mins read).

Featured image for sharing metadata for article

Recounting an issue I'm seeing with Firefox 133 where it creates a new profile, and how to resolve it.

Wed, 16 Oct 2024 08:10 by Jamie Tanna's profile image Jamie Tanna . #blogumentation #firefox #adhd.

 Article

Creating a /slashes page (1 mins read).

Creating a collection of all the /slash pages I have across my site.

Tue, 15 Oct 2024 14:08 by Jamie Tanna's profile image Jamie Tanna . #www.jvt.me.

 Article

OggCamp 2024 (14 mins read).

Featured image for sharing metadata for article

A recap of this weekend's OggCamp 2024 conference.

Sun, 13 Oct 2024 21:35 by Jamie Tanna's profile image Jamie Tanna . #events #oggcamp #public-speaking #oggcamp-2024 #free-software #open-source #collaborative-culture.

 Article

How I manage my dotfiles (8 mins read).

A deep dive into how managing my dotfiles has (not) evolved over the last 10 years.

Fri, 11 Oct 2024 20:26 by Jamie Tanna's profile image Jamie Tanna . #shell #command-line #automation #dotfiles.

 Article

Don't do Agile, be agile (13 mins read).

Featured image for sharing metadata for article

Why you should ditch the framework and just vibe.

Wed, 02 Oct 2024 19:56 by Jamie Tanna's profile image Jamie Tanna . #agile #scrum.

 Article

Converting a Reveal.js slide deck to PDF (1 mins read).

Featured image for sharing metadata for article

How to convert a Reveal.js slide deck to a PDF, using Decktape.

Tue, 01 Oct 2024 22:10 by Jamie Tanna's profile image Jamie Tanna . #blogumentation #revealjs.

 Article

Getting symlinks to work with a git clone on Mac (2 mins read).

Featured image for sharing metadata for article

How to restore symlinks in a previously cloned repository, where core.symlinks=false.

Tue, 01 Oct 2024 09:01 by Jamie Tanna's profile image Jamie Tanna . #blogumentation #git #mac.

 Article

Using a separate Go module for your tools.go (2 mins read).

Featured image for sharing metadata for article

How to use the tools.go pattern to source-track your Go tool dependencies, but without polluting your top-level go.mod.

Mon, 30 Sep 2024 14:24 by Jamie Tanna's profile image Jamie Tanna . #blogumentation #go.

 Article

I'm on API Evangelist Conversation (1 mins read).

Featured image for sharing metadata for article

Announcing a podcast appearance with Kin Lane about API Versioning.

Thu, 19 Sep 2024 17:31 by Jamie Tanna's profile image Jamie Tanna . #podcast #api.

 Article

Utilising Renovate's local platform to test more easily (4 mins read).

Featured image for sharing metadata for article

How to use Renovate's local platform for validating configuration changes more easily.

Mon, 16 Sep 2024 20:18 by Jamie Tanna's profile image Jamie Tanna . #blogumentation #renovate.

 Article

Don't pretty print your API's JSON response body (3 mins read).

Why pretty-printing JSON responses in your APIs is a waste of resources, and you should stop it.

Mon, 16 Sep 2024 09:30 by Jamie Tanna's profile image Jamie Tanna . #api #json #rest.

 Article

Nested teams in GitHub don't give you the control you think they do (2 mins read).

Featured image for sharing metadata for article

Some pain points when using nested teams on GitHub.

Thu, 12 Sep 2024 21:32 by Jamie Tanna's profile image Jamie Tanna . #blogumentation #github.

 Article

Forcing pacman to perform post-upgrade tasks if it's failed part way through (2 mins read).

How I ended up recovering from my Arch Linux upgrade crashing part way through the post-upgrade hooks.

Mon, 09 Sep 2024 09:30 by Jamie Tanna's profile image Jamie Tanna . #blogumentation #arch-linux.

 Article

How to use Dependency Management Data to discover which dependencies are participating in Hacktoberfest (3 mins read).

Featured image for sharing metadata for article

Detailing how you could use dependency-management-data to gain insight into which dependencies you use are participating in Hacktoberfest.

Tue, 03 Sep 2024 21:24 by Jamie Tanna's profile image Jamie Tanna . #open-source #hacktoberfest #dependency-management-data.

 Article

You're not mature enough to release your first version as v1 (12 mins read).

Why you should never release your first iteration of a project as your v1.0.0, but it should instead by v0.1.0.

Mon, 26 Aug 2024 22:19 by Jamie Tanna's profile image Jamie Tanna . #versioning.

 Article

GopherCon UK 2024 (22 mins read).

Featured image for sharing metadata for article

A writeup of the GopherCon UK 2024 conference.

Fri, 16 Aug 2024 22:22 by Jamie Tanna's profile image Jamie Tanna . #go #events #conference #gopher-con-uk.

 Article

Gotcha: SXHKD doesn't like comments (in bindings) (1 mins read).

Why your SXHKD bindings may be silently ignored

Thu, 15 Aug 2024 11:23 by Jamie Tanna's profile image Jamie Tanna . #blogumentation #sxhkd.

 Article

How to get the next window created set to floating in BSPWM (1 mins read).

Featured image for sharing metadata for article

How to tell BSPWM that the next window created should be floating.

Thu, 15 Aug 2024 11:16 by Jamie Tanna's profile image Jamie Tanna . #blogumentation #bspwm.

 Article

Creating a /typography page (2 mins read).

Creating a page for viewing different types of content and how they display on my site.

Wed, 14 Aug 2024 19:49 by Jamie Tanna's profile image Jamie Tanna . #www.jvt.me.

 Article

I'm on Go Time! (3 mins read).

Featured image for sharing metadata for article

Announcing my first podcast appearance on Go Time, talking about OpenAPI, oapi-codegen, versioning, and some fun Unpopular Opinions.

Thu, 08 Aug 2024 16:02 by Jamie Tanna's profile image Jamie Tanna . #podcast #openapi #oapi-codegen #go.

 Article

New CSS, Who Dis? (2024 edition) (3 mins read).

Featured image for sharing metadata for article

Announcing my new site design.

Mon, 05 Aug 2024 18:12 by Jamie Tanna's profile image Jamie Tanna . #www.jvt.me.

 Article

Why isn't Hugo regenerating my SCSS files? (1 mins read).

Featured image for sharing metadata for article

How to ensure you're using the right Hugo version to build SCSS files.

Mon, 05 Aug 2024 08:34 by Jamie Tanna's profile image Jamie Tanna . #blogumentation #hugo.

 Article

Why can't I use a comma with gcloud? (1 mins read).

How to resolve commas being ignored when interacting with gcloud, and how to escape them.

Thu, 01 Aug 2024 12:48 by Jamie Tanna's profile image Jamie Tanna . #blogumentation #google-cloud.

 Article

Using Spotless to auto-format Gradle Verification Metadata (3 mins read).

Featured image for sharing metadata for article

How to use Spotless to allow manual changes to the Gradle Verification Metadata to be auto-formatted as if Gradle generated it.

Wed, 31 Jul 2024 14:28 by Jamie Tanna's profile image Jamie Tanna . #blogumentation #gradle #spotless.

 Article

Common issues faced with execing an executable on Linux (2 mins read).

Some common issues you may face, with esoteric error messages, and how to fix them.

Tue, 30 Jul 2024 12:48 by Jamie Tanna's profile image Jamie Tanna . #blogumentation #shell #command-line #linux.

 Article

You can now parse repo-level Renovate configuration with renovate-graph (2 mins read).

Featured image for sharing metadata for article

Announcing a new release of renovate-graph which now parses repo-level Renovate configuration.

Sun, 28 Jul 2024 14:56 by Jamie Tanna's profile image Jamie Tanna . #renovate #dependency-management-data.

 Article

Dependency Management Data's Open Policy Agent support is now a whole lot more efficient (2 mins read).

Featured image for sharing metadata for article

Talking about the latest release of Dependency Management Data and some refactoring that's led to better performance.

Sat, 27 Jul 2024 19:55 by Jamie Tanna's profile image Jamie Tanna . #dependency-management-data #open-policy-agent.

 Article

Migrating Renovate bots, while keeping existing PRs updated (2 mins read).

Featured image for sharing metadata for article

How to migrate between two Renovate bot accounts, in the case you want to do a 'big bang rollout'.

Thu, 18 Jul 2024 14:05 by Jamie Tanna's profile image Jamie Tanna . #blogumentation #renovate.

 Article

Manually triggering a Buildkite pipeline for a fork (1 mins read).

How to trigger a Buildkite pipeline to run on a fork, if you have access to trigger a build.

Tue, 16 Jul 2024 18:46 by Jamie Tanna's profile image Jamie Tanna . #blogumentation #buildkite.

 Article

Dependency Management Data's now on Mastodon! (1 mins read).

Featured image for sharing metadata for article

Announcing the dependency-management-data Mastodon account for automated release announcements (and more?).

Sun, 14 Jul 2024 20:55 by Jamie Tanna's profile image Jamie Tanna . #dependency-management-data #mastodon.

 Article

Dynamically querying EndOfLife.date data for internal packages with Open Policy Agent and Dependency Management Data (3 mins read).

Featured image for sharing metadata for article

How you can retrieve End-of-Life data via EndOfLife.date using Dependency Management Data's Policies functionality.

Sun, 14 Jul 2024 20:33 by Jamie Tanna's profile image Jamie Tanna . #dependency-management-data #blogumentation #open-policy-agent.

 Article

89 things I know about Git commits (7 mins read).

Featured image for sharing metadata for article

Some of the things I've learned over a decade of Git usage, and working on writing good commit messages.

Fri, 12 Jul 2024 20:01 by Jamie Tanna's profile image Jamie Tanna . #git.

 Article

Dependency Management Data is now a lot easier to work with when using Software Bill of Materials (3 mins read).

Featured image for sharing metadata for article

Announcing an improved model for interacting with SBOMs, removing the need to understand the Repo Key up-front.

Tue, 09 Jul 2024 20:20 by Jamie Tanna's profile image Jamie Tanna . #dependency-management-data #sbom.

 Article

One THOUSAND blog posts (3 mins read).

Celebrating a massive milestone in my blog, and a short reflection.

Mon, 01 Jul 2024 12:00 by Jamie Tanna's profile image Jamie Tanna . #blogging #www.jvt.me.

 Article

Reader survey: Who reads my blog? (2 mins read).

Wondering how my readers read my blog, and why.

Mon, 01 Jul 2024 11:08 by Jamie Tanna's profile image Jamie Tanna . #blogging #www.jvt.me.

 Article

Dependency Management Data can now use sql-studio for database browsing (1 mins read).

Featured image for sharing metadata for article

Announcing the availability of the sql-studio database browser for dependency-management-data's web application.

Fri, 28 Jun 2024 22:29 by Jamie Tanna's profile image Jamie Tanna . #dependency-management-data #sql.

 Article

Creating a test harness for validating Renovate regex manager rules (4 mins read).

Featured image for sharing metadata for article

How to set up a test harness to make it eaiser to modify scary looking regexes in your Renovate configuration.

Fri, 28 Jun 2024 21:37 by Jamie Tanna's profile image Jamie Tanna . #blogumentation #renovate.

 Article

Modifying the response body of an httputil.ReverseProxy response (2 mins read).

Featured image for sharing metadata for article

How to modify the response from a httputil.ReverseProxy before it goes back to the caller.

Tue, 25 Jun 2024 21:26 by Jamie Tanna's profile image Jamie Tanna . #blogumentation #go.

 Article

Performing cross-database queries with SQLite (2 mins read).

Featured image for sharing metadata for article

How to query multiple database files with SQLite.

Wed, 19 Jun 2024 13:54 by Jamie Tanna's profile image Jamie Tanna . #blogumentation #sqlite.

 Article

Dependency Management Data's web application can now be deployed as a single static binary (2 mins read).

Featured image for sharing metadata for article

Announcing dependency-management-data's embedded SQL browser interface.

Sun, 16 Jun 2024 14:40 by Jamie Tanna's profile image Jamie Tanna . #dependency-management-data #sql.

 Article

Using Go's database/sql to query an arbitrary columns of unknown type(s) (3 mins read).

Featured image for sharing metadata for article

How you can query an unknown number of columns, of unknown types, with Go's SQL package.

Thu, 13 Jun 2024 20:41 by Jamie Tanna's profile image Jamie Tanna . #blogumentation #go.

 Article

My workflow for writing SQL(ite) queries (2024 edition) (4 mins read).

Featured image for sharing metadata for article

Writing about my recent workflow for writing, executing, and sharing SQL queries with others.

Fri, 07 Jun 2024 10:53 by Jamie Tanna's profile image Jamie Tanna . #blogumentation #sql #sqlite #neovim #datasette #lsp.

 Article

Calculating the GitHub API's sha representation of a local file (2 mins read).

Featured image for sharing metadata for article

How to locally calculate the same sha of a given file, so you can compare it against the GitHub API's representation.

Thu, 30 May 2024 17:28 by Jamie Tanna's profile image Jamie Tanna . #blogumentation #github #go.

 Article

Making it easier to schedule cross-timezones, with the tz CLI (3 mins read).

Featured image for sharing metadata for article

Writing a command-line tool with Charm's Go libraries to compare the suitability of meetings across timezones.

Wed, 15 May 2024 21:34 by Jamie Tanna's profile image Jamie Tanna . #blogumentation #command-line #go #charm #elastic #remote-work.

 Article

Installing Google Cloud CLI components on Arch Linux (2 mins read).

Featured image for sharing metadata for article

How to install gcloud components using pacman, instead of using the officially supported method.

Sat, 11 May 2024 17:13 by Jamie Tanna's profile image Jamie Tanna . #blogumentation #arch-linux #google-cloud #serverless.

 Article

I'm on Cup o' Go! (2 mins read).

Featured image for sharing metadata for article

Announcing my appearance on Cup o' Go, talking about oapi-codegen, OpenAPI, working on Open Source and blogging.

Fri, 10 May 2024 17:27 by Jamie Tanna's profile image Jamie Tanna . #openapi #oapi-codegen #podcast #adhd #blogging #public-speaking #go.

You're currently viewing page 2 of 17, of 831 posts.

Go to the previous page

Go to the next page

Other links that may be of interest:

  • /slashes
  • Follow This Blog (i.e. via RSS feed)
  • Talks
  • Blogroll
  • Why is my site www.jvt.me?
  • Archives
  • Post Visualisation
  • Manual of Me
  • Typography
  • My name and pronounciation
  • RSVPs
  • Links
  • Post by Kind

This site is part of an IndieWeb Webring πŸ•ΈπŸ’

  • Previous site
  • Next site

Want to get in touch? Drop me an email at  hi@jamietanna.co.uk. I try to get back to everything, if I don't reply in a couple of weeks, feel free to give me a nudge!

You can also check out a list of all the places /elsewhere you can find me.

© 2025 Jamie Tanna. Post content and code snippets licensing is detailed on respective pages, otherwise default to Creative Commons Attribution Non Commercial Share Alike 4.0 International and Apache License 2.0.
Site design released under the MIT License.
Proudly hosted on AWS using S3 + CloudFront, deployed by GitLab CI, and generated by 4a2feb8ddf on Sat, 18 Apr 2020 14:40:29 +0100..