Listened to Netlify with Mathias Biilmann Christensen Post details Netlify is a cloud-based platform that provides web developers with an all-in-one workflow to build, deploy, and manage modern web projects. Matt Biilmann is the CEO of Netlify and he joins us today.   This epis … | Continue reading


@jvt.me | 1 year ago

Bookmarked Be Careful Using tmux and Environment Variables Post details Watch out for these common pitfalls when using tmux and environment variables and learn how to avoid them. Recommended read: Be Careful Using tmux and Environment Variables https://aj.codes/posts/be-car … | Continue reading


@jvt.me | 1 year ago

Listened to Kaizen! Embracing change with Adam & Jerod (Ship It! #90) Post details This is our 9th Kaizen with Adam & Jerod. We start today’s conversation with the most important thing: embracing change. For Gerhard, this means putting Ship It on hold after this ep … | Continue reading


@jvt.me | 1 year ago

Listened to Amanda Brock of OpenUK on Open Source Law, Policy and Practice by SustainOSS  Post details Amanda goes in-depth about creating a broader engagement across the UK government on security, technical issues, and security policy issues. | Continue reading


@jvt.me | 1 year ago

Listened to Ashley Williams on Open Source Software Sustainability by SustainOSS  Post details Ashley shares about her time at Node.js, Rust, and her new company Axo, and has suggestions for how open-source projects can get money to become successful in the long term | Continue reading


@jvt.me | 1 year ago

Listened to Dudley Carr and Wes Carr on StackAid by SustainOSS  Post details Dudley and Wes share all things StackAid, their backgrounds, some of their long-term goals, and exciting things on the horizon for StackAid. | Continue reading


@jvt.me | 1 year ago

Getting a `--version` flag for Cobra CLIs in Go

As part of working on my new Go CLI dmd, I wanted to implement a --version flag to be able to check what version is currently installed. I'd started looking at how to do this after I spotted that GoReleaser populates main.version ldflags which mean that you can easily consume the … | Continue reading


@jvt.me | 1 year ago

Listened to The ADHD Adults Podcast Post details The ADHD Adults Podcast (in)expertly covers issues around ADHD in adults, sharing evidence-based information and personal experiences. Join us for Alex the round-headed psychoeducation monkey's evidence-based information, Jam … | Continue reading


@jvt.me | 1 year ago

Week Notes 23#08

Kicked off the week with an every so slightly themed retro with Phaeleh - Moving On and Yoe Mase - Getaway Car Had a couple of games of Team Deathmatch in Apex Legends this week, one where I was playing a good bit of a hide-and-seek in a 1v1 just to keep the win (as up until then … | Continue reading


@jvt.me | 1 year ago

Been listening to Phaeleh's Signature Sound: 100% Originals Mix a fair bit, and it's the usual awesome chilled mix of great music you can expect Been listening to Phaeleh's Signature Sound: 100% Originals Mix a fair bit, and it's the usual awesome chilled mix of great music you c … | Continue reading


@jvt.me | 1 year ago

Cross-compiling a CGO project using Goreleaser

While working on creating a new Go CLI dmd, I wanted to set up Gorelaser to make builds much simpler, as I wanted to be able to use this with both my Linux machine and my work Mac. I thought I had it working until I realised that I was using a library that required CGO to be buil … | Continue reading


@jvt.me | 1 year ago

Introducing `dmd`, a command-line tool for Dependency Management Data (DMD)

I've been doing a lot of work recently around the dependency data of various projects, which stems from a post and idea of mine from a while ago about monetising the supply chain. Separate to that lofty goal - especially as there are some tools like socket.dev and StackAid workin … | Continue reading


@jvt.me | 1 year ago

Week Notes 23#07

Got my replacement monitor - finally after many days of being told it'd arrive the next day - so 🤞 this one doesn't have the same issue longer term My watch got stuck for a couple of hours "preparing" for an OS update - which started before bed - which meant I lost some s … | Continue reading


@jvt.me | 1 year ago

Reposted Matt Brunt #[Impure] (@brunty@brunty.social) Post details Transgender rights are human rights. Transgender rights are human rights. Transgender rights are human rights. Transgender rights are human rights. | Continue reading


@jvt.me | 1 year ago

Week Notes 23#06

Had Carol over for dinner on Monday which was nice to chill and catch up 🥰 Managed to get Morph to start washing my face - once when he was washing normally and I tricked him into continuing onto my face, and once he just started licking my face 🥰 Caught Morph ear … | Continue reading


@jvt.me | 1 year ago

Getting a GitHub App installation token on the command-line

When using GitHub App authentication, there's a slightly more complex setup for authenticating. Depending on what you're doing you can simply use the GitHub SDKs, but sometimes you just want an installation access token, for instance to clone a repository as the app. To do this, … | Continue reading


@jvt.me | 1 year ago

Passing a private key as an environment variable

When working with private keys, one of the awkward things to deal with is how to pass them around to applications. If you're following a twelve-factor app approach where secrets are passed in via the environment variables, but as keys are multi-line there are a few options for ho … | Continue reading


@jvt.me | 1 year ago

2022's Site In Review

Overall traffic This year Last year Number of visits 363136 146772 Number of articles 143 111 Number of blogumentation articles 109 73 Traffic across the year Most popular pages Page Pageviews Unique pageviews /posts/2022/09/21/year-later-salary-history/ 285 … | Continue reading


@jvt.me | 1 year ago

2021's Site In Review

Overall traffic This year Last year Number of visits 146772 117545 Number of articles 111 114 Number of blogumentation articles 73 74 Traffic across the year Most popular pages Page Pageviews Unique pageviews /posts/2019/04/03/openssl-fingerprint-x509-pem/ 8 … | Continue reading


@jvt.me | 1 year ago

2020's Site In Review

Overall traffic This year Last year Number of visits 117545 47270 Number of articles 114 154 Number of blogumentation articles 74 73 Traffic across the year Most popular pages Page Pageviews Unique pageviews /posts/2020/09/01/against-online-tooling/ 22350 2 … | Continue reading


@jvt.me | 1 year ago

2019's Site In Review

Overall traffic This year Last year Number of visits 47270 10380 Number of articles 154 60 Number of blogumentation articles 73 41 Traffic across the year Most popular pages Page Pageviews Unique pageviews /posts/2019/04/07/prettier-cucumber-jvm-html-reports/ … | Continue reading


@jvt.me | 1 year ago

2018's Site In Review

Overall traffic This year Last year Number of visits 10380 2130 Number of articles 60 22 Number of blogumentation articles 41 16 Traffic across the year Most popular pages Page Pageviews Unique pageviews /posts/2017/01/25/gitlab-ci-capistrano/ 1341 1240 / … | Continue reading


@jvt.me | 1 year ago

2017's Site In Review

Overall traffic This year Last year Number of visits 2130 249 Number of articles 22 1 Number of blogumentation articles 16 0 Traffic across the year Most popular pages Page Pageviews Unique pageviews /posts/2017/01/25/gitlab-ci-capistrano/ 782 696 / 477 … | Continue reading


@jvt.me | 1 year ago

2016's Site In Review

Overall traffic This year Number of visits 249 Number of articles 1 Number of blogumentation articles 0 Traffic across the year Most popular pages Page Pageviews Unique pageviews / 161 125 /hacktoberfest/opensource/freesoftware/2016/09/30/hacktoberfest.html … | Continue reading


@jvt.me | 1 year ago

Week Notes 23#05

Accidentally left my watch on overnight and got some interesting sleep data from FitBit. That night I'd also not got my phone properly on the charger so in the morning needed to stay in bed a little more to wait for them to charge Cookie did not appreciate the window cleaners ear … | Continue reading


@jvt.me | 1 year ago

Listing the status of your branch protection in GitHub

I've recently been doing an audit of my branches across the repos I have on GitHub, and needed a way to list all the protection in place across various repos. To make it easier, I've created a Go tool, which can be installed like: go install gitlab.com/tanna.dev/github-branch-pro … | Continue reading


@jvt.me | 1 year ago

Getting comfortable with the lack of privacy with my Week Notes

This post has been officially on my TODO list since October 2021 when Suze asked in the Tech Nottingham Slack about writing very publicly about my life, and how I find the comfort with it. It's something I wanted to reply to with - as is tradition - a blog post, but had not gotte … | Continue reading


@jvt.me | 1 year ago

Determining missing translation keys from gettext `.po` files

If you're working with applications that require translations, you may be using gettext's .po format to store your translations. One issue I've found with this is that sometimes it can be hard to quickly audit whether there are any missing translations, especially in larger appli … | Continue reading


@jvt.me | 1 year ago

Setting up default Renovate configuration while allowing overriding of that configuration

I've written about how great Renovate is great for managing your dependencies across the toolchains you support, and giving you control over how the updates are made across your repositories. Although it can be handy for teams owning repositories to have full control over their r … | Continue reading


@jvt.me | 1 year ago

Week Notes 23#04

A busy week ahead of my parents coming to stay: One night Cookie was barking to be let back into the kitchen, so begrudgingly we did in case she needed to go to the loo, and it turns out she was narc'ing on Morph who was standing on the counter Played a lot of AdVenture Capitalis … | Continue reading


@jvt.me | 1 year ago

Does this Slack Webhook still work?

Let's say you've just found something that looks like a Slack incoming webhook URL and want to check if it's active. The URL may look something like: https://hooks.slack.com/services/T0.../BF.../fXg... I've found that sending a request like so is a good way to test validity, as w … | Continue reading


@jvt.me | 1 year ago

Who does this NPM token belong to?

Let's say you've just found something that looks like it's an NPM token, and you want to work out whether it's still valid. One option is to try and download a dependency using it, but that can be a little more awkward to do, when there are easier means to do so. With npm Let's s … | Continue reading


@jvt.me | 1 year ago

Week Notes 23#03

Starting to get back to normal at work - with a one week sprint - after performance reviews, on-site and getting into the start of the year: Started on a set of projects I'm leading which are one of our big goals this year This week began the rollout of Renovate across the org fo … | Continue reading


@jvt.me | 1 year ago

Performing bulk changes across Git(Hub) Repos with Turbolift and Microplane

Over the years, there have been many times I've needed to roll out changes across dozens of repositories. Sometimes it's been to do a bulk find-and-replace to avoid deprecation warnings, to introduce shared configuration for Renovate, or to tweak what commands are used to build t … | Continue reading


@jvt.me | 1 year ago

Week Notes 23#02

My quarterly on-site in London for the middle of the week Had hoped to finish early the day before so I could pack, but feedback and self-reflection took a bit more time Bit of an early start getting a 0649 train to London Some good sessions over the days Ate some great food, and … | Continue reading


@jvt.me | 1 year ago

Automagically determining which AWS Lambda runtimes are deprecated or end-of-life

One of the great things about AWS Lambda is that code you wrote several years ago can run, receiving security updates to the underlying runtime, at some point AWS removes support for the runtime. This is done in two stages, and once hitting the "end of life" phase, you can no lon … | Continue reading


@jvt.me | 1 year ago

Who do these AWS credentials belong to?

Let's say you've found an AWS_ACCESS_KEY_ID and an AWS_SECRET_ACCESS_KEY, whether that's on your local machine's ~/.aws/credentials, in your project's environment variables, etc - the important next question is "are these still active, and if so what access do they have?". Fortun … | Continue reading


@jvt.me | 1 year ago

What I learned rebuilding our CI/CD pipelines for Chef Cookbooks

As I've written about before on this blog, I used Chef quite a lot when I was at Capital One. As part of some ongoing work across the enterprise, there was a move to replatform from one set of Jenkins servers (with team-owned maintenance, patching, etc) to an Enterprise managed s … | Continue reading


@jvt.me | 1 year ago

Week Notes 23#01

A pretty intense start to the year with a four day week filled with Cookie being a bit poorly, the weight of the performance review cycle and addressing issues out of the CircleCI breach. Woke up on Monday to find that my analytics had stopped working ~2300 the night before. Very … | Continue reading


@jvt.me | 1 year ago

Listing secrets stored in CircleCI

If you've not seen, CircleCI yesterday announced that they had recently had a breach. As part of this, teams are recommended to rotate all of their secrets, but to do that, you need to easily find out what secrets are in place. I've put together a Go CLI project on on GitLab.com … | Continue reading


@jvt.me | 1 year ago

2022's Music In Review

In 2022, I listened to 51596.5 minutes (859.94 hours) of music on Spotify. Top 100 songs Song Title Minutes Elapsed Hours Elapsed Yoe Mase - Getaway Car 213.78 3.56 MOGUAI - Lyfe Lyne 191.98 3.2 Phaeleh - Moving On 137.65 2.29 Armin van Buuren - One More Time - Worakls Remix … | Continue reading


@jvt.me | 1 year ago

Enabling/Disabling GitHub Issues via the GitHub API

I recently needed to toggle whether GitHub Issues is enabled for a number of repositories, and wanted to automate it. Searching through the GitHub docs I couldn't find anything super explicit, aside from a UI-driven configuration. Thankfully one of my colleagues pointed me to the … | Continue reading


@jvt.me | 1 year ago

Week Notes 22#52

Christmas Day with the Dodsons, New Year's Eve, and lots of eating leftovers Boxing day was "the day" for the Dodsons' Christmas celebrations, which we were hosting: Was a pretty stressful morning cooking, with it being the first time we'd pushed the new cooker to its limits, and … | Continue reading


@jvt.me | 1 year ago

Week Notes 22#51

This week has been sponsored by Getaway Car on repeat Accidentally put Cookie into her XXS harness - which she's grown out of - for a very snug fit, which she didn't seem super impressed by. We've since given it away to a morning park dog walking friend who'll benefit from it Coo … | Continue reading


@jvt.me | 1 year ago

Using Renovate to manage updates to `go install` commands

As mentioned in Using Renovate to manage updates to golangci-lint versions, Renovate is great for managing your dependency updates. By using the custom regex manager, we can craft the following Renovate configuration: { "$schema": "https://docs.renovatebot.com/renovate-schema.jso … | Continue reading


@jvt.me | 1 year ago

Week Notes 22#50

This week was sponsored by One More Time - Worakls Remix being on repeat. I could've get enough of it and it itched my brain just right Finished Stray Had a bit of a stressed time opening up Rogue Legacy 2 to find that my saves had disappeared, but turns out it's a known issue, w … | Continue reading


@jvt.me | 1 year ago

Providing a Public Salary History Page

Publishing my salary and compensation history for public use. | Continue reading


@jvt.me | 1 year ago

Easily rewriting Git URLs from HTTPS to SSH and vice versa

How to use Git's config to rewrite HTTPS URLs to SSH and vice versa, for repo pushes and pulls. | Continue reading


@jvt.me | 1 year ago