Finally worked it out - it wasn't a film, it was the Family Guy episode Take My Wife Finally worked it out - it wasn't a film, it was the Family Guy episode Take My Wife Quoted a post on www.jvt.me by Jamie Tanna  Post details Can anyone else remember a movie(?) from a few years … | Continue reading


@jvt.me | 1 year ago

Reposted 🫐 Mae "40Ls per minute" BadAtDev (@Mae@is.badat.dev) Post details April fools prank idea: unionize | Continue reading


@jvt.me | 1 year ago

Reposted Laurie Voss (@seldo@alpaca.gold) Post details Y'all told me Andreesen was smart, Thiel was smart, Rabois was smart, Musk was smart, they have all outed themselves as lucky and dumb. You need to stop assuming being rich and being smart are the same. | Continue reading


@jvt.me | 1 year ago

Generating `Equal` methods for Go structs with `goderive`

Sometimes you need to check the equality of two structs in Go, and depending on how complicated they are, you probably want to avoid hand-writing the Equal method if possible, and you want to avoid reflect.DeepEqual for performance reasons, at least in your production code. If I … | Continue reading


@jvt.me | 1 year ago

Week Notes 23#12

The week of finding out if I would be part of the redundancies at Deliveroo - TL;DR I was not - but we're losing a lot of good folks which really sucks As the few days off for my birthday and the weekend came to an end, I was feeling like I was more likely to be made redundant, … | Continue reading


@jvt.me | 1 year ago

Ensuring files are synced between repos with GitHub Actions

There are cases where you want to keep files in-sync between repos by manually vendoring them, and periodically updating them. I've been doing this with OpenAPI specifications in some repos, but wanted a handy way to make it visible that they're up-to-date. Until I get around to … | Continue reading


@jvt.me | 1 year ago

I don't think I want my next promotion (yet)

With the news that Deliveroo are making 9% of the company redundant, of which all Senior Software Engineers are "at risk" of redundancies, I've been considering where I am and where I want to be going in my career regardless of whether I'm made redundant. I'll be finding out in t … | Continue reading


@jvt.me | 1 year ago

Week Notes 23#11

A two-day work week, with three days off for my birthday. Had a bit too much of a lie in on Monday as I'd turned my alarm off and slept in until almost 9 🥱 Had some very cute mornings with Cookie being cuddly, and some evenings of Cookie being cuddly. She's turning into s … | Continue reading


@jvt.me | 1 year ago

Working out which Docker namespaces and images you most depend on

With the news yesterday that Docker Inc is sunsetting the "Free Team" organisations, the engineering community at large is considering the ramifications. Although some answers have been given, there's still a bit of uncertainty around what may happen to existing images that are i … | Continue reading


@jvt.me | 1 year ago

Querying JSON with SQLite

I really like the fact that a lot of the database engines are allowing for native JSON querying, not least with SQLite, as I'm using it for various projects at the moment. However, I can never seem to remember the incantation for how to actually perform the JSON query. Let's say … | Continue reading


@jvt.me | 1 year ago

Week Notes 23#10

Was fighting for top place in AdVenture Capitalist on Monday, but didn't quite get the top spot Finally gotten around to reading ADHD 2.0, which was recommended to me when I first announced my diagnosis Managed to finish it in the day Yay for 2x speed While listening to it, I th … | Continue reading


@jvt.me | 1 year ago

Dynamically retrieving the version of a Node.JS/Typescript dependency, at runtime

Something I've needed for a side project is the ability to retrieve what version of a dependency has currently been resolved. It was quite hard to search around this online so I'm writing how to do it for future folks searching for this. The below examples are based on this examp … | Continue reading


@jvt.me | 1 year ago

Automating boilerplate/scaffolding code with custom code generation in Go, with `jen`

As written about in Automating boilerplate/scaffolding code with custom code generation in Go, being able to take advantage of generating Go code can be super handy. However, you may get to the point where you're working with the codegen that you find working with text-based temp … | Continue reading


@jvt.me | 1 year ago

Debugging HTTP Client requests with Go

Sometimes when you're integrating with APIs or web services, you need to debug the HTTP requests/responses that are occuring. In some toolchains it's part of configuration, but in Go it's unfortunately not part of the standard library to globally turn on logging for the http.Clie … | Continue reading


@jvt.me | 1 year ago

Who do these Twilio credentials belong to?

Let's say you've found some Twilio credentials, and want to work out whether they're still active. Twilio has two types of credentials - "auth tokens" and API Keys. The "auth tokens" are bound to an account or a user, whereas API keys are more of a machine-user credential and hav … | Continue reading


@jvt.me | 1 year ago

Week Notes 23#09

Had Carol round to celebrate her being able to officially go zoomies Didn't end up submitting a talk to GopherCon UK, as I ended up re-reading the talk lengths and realising that a 60 minute session wasn't quite for me Spent some time getting my CV updated, ahead of X-posting my … | Continue reading


@jvt.me | 1 year ago

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