Generating Random Bytes On the Command Line with OpenSSL (1 mins read).
How to generate random bytes as binary, base64 or hex, using openssl on the command-line.
Generating Random Bytes On the Command Line with OpenSSL (1 mins read).
How to generate random bytes as binary, base64 or hex, using openssl on the command-line.
Using @Mock as a Method Parameter with Mockito (2 mins read).

Using @Mock on method parameters to reduce manual mock setups with Mockito.
Converting a Byte Array to a String in Ruby (1 mins read).

How to convert an array of bytes to a String with Ruby.
Disabling the logging of Spring Security's Default Security Password (2 mins read).

How to disable Spring Boot logging the generated security password.
Changing my Static Site Search Setup (1 mins read).
Making changes to fix my search setup, and reduce download overhead for visitors.
Generating the Client Assertion JWT for private_key_jwt Authentication with Ruby (1 mins read).

A helper script to generate the client assertion required to authenticate to an Authorization Server that supports private_key_jwt, on the command-line with Ruby.
Verifying Signed JWTs (JWS) with Ruby (2 mins read).

Using the ruby-jwt library to verify a signed JSON Web Token (JWS) on the command-line.
Creating Signed JWTs (JWS) with Ruby (1 mins read).

Using the json-jwt and ruby-jwt libraries to sign a JSON Web Token on the command-line.
Issues with Ordering When Using Vault CLI's -no-print Argument (1 mins read).

A possible solution for no-print not taking effect with the vault CLI when using AWS EC2 auth.
Keeping Track of Certificate Expiry with a JWKS to iCalendar Converter (4 mins read).
Creating an iCalendar feed for certificate expiry details, given a URI for a JSON Web Key Set.
New CSS, Who Dis? (2 mins read).
Announcing my new site design, based on Hack.css.
Review: mycookiedough Delivery (2 mins read).

Reviewing our first mycookiedough delivery, and the corresponding sugar rush that came with it.
GitLab CI Shell Executor failing builds with ERROR: Job failed: exit status 1 (1 mins read).

How to work around ERROR: Job failed: exit status 1 errors with GitLab CI's shell executor.
GitLab CI Shell Executor Failing Builds With No Such Directory (1 mins read).

How to work around No Such Directory errors with GitLab CI's shell executor.
Deploying a Branch to Netlify on the Command-Line (1 mins read).

How to use Netlify's Node CLI to deploy a given branch to Netlify.
Generating JWK Thumbprints with Ruby (1 mins read).

How to generate JWK thumbprints with Ruby.
Generating JWK Thumbprints with Node.JS (1 mins read).

How to generate JWK thumbprints with Node.JS.
How are Open Banking Key Ids (kid) Generated? (1 mins read).
Sharing insight into how Open Banking has generated their kids for use with JWTs.
How to Run Java on the Command-Line to Attach a Debugger (1 mins read).

How to run java on the command-line, and make it possible to attach a debugger.
Extract a Public Cert from a Java Keystore/Truststore (1 mins read).

How to export the public certificate from a Java keystore.
Evicting Spring Cache on a Schedule (1 mins read).

How to evict Spring Cache's @Cacheable data on a schedule.
No default controller available With bluetoothctl (1 mins read).

One possible solution for the No default controller available error message with bluetoothctl.
Migrating to Netlify's Deployments from GitLab CI (3 mins read).

Moving to avoid flaky deployments, and trying to reduce deployment times.
How to avoid HttpMessageNotReadableException when using ContentCachingRequestWrapper with Java Servlet Filters (1 mins read).

How to avoid receiving Required request body is missing errors when using a ContentCachingRequestWrapper.
Reading a Servlet/Spring Request Body Multiple Times (2 mins read).

How to read the request body more than once using Java Servlet Filters.
Disabling @Valid Annotation in a Spring Integration Test (1 mins read).

How to disable @Valid validation in Spring Integration Tests.
Converting Output from Rest Assured to Curl Requests (3 mins read).

How to convert the log output from Rest Assured to a curl request.
Navigating through the Vim Changelist with Intellij (2 mins read).

How to use g; and g, using IntelliJ's IdeaVim plugin to cycle through changes in a file.
Running Spotless Automagically with Gradle (2 mins read).

How to set Gradle configuration globally to always run spotlessApply in your projects.
Rendering Micropub Client Data on Posts (2 mins read).

Sharing more information about Micropub clients that have created a post, if possible.
Changing the Structure of Homebrew Website Club Nottingham (3 mins read).

Looking to change the format of Homebrew Website Club Nottingham so it works better as a remote event.
Gotcha: AWS SDK Proxy Setup with Test Kitchen (2 mins read).

How to avoid odd proxy issues when using the AWS SDK, when using Test Kitchen.
Determining What Motherboard You're Using, On Linux (1 mins read).
How to determine what motherboard the machine you're using is reporting, on the command-line with Linux.
Creating a 'Firehose' Feed (2 mins read).
Splitting out my content feeds, so it's (hopefully) more applicable and less noisy for consumers.
Extracting x5cs from a JSON Web Key Set (JWKS) to PEM files with Ruby (1 mins read).

How to extract the full chain of certificates from a JWKS' x5c parameter to files.
Autogenerating the Date Header in Postman (1 mins read).

How to generate and send a Date header using Postman.
New Desk/Office Setup (6 mins read).

Sharing the new layout for our office, and my new desk setup with my new Dell UltraSharp.
Converting a Byte Array to String with Buffer in Node.JS (1 mins read).

How to convert an array of bytes to a String using Node.JS's Buffer class.
GitLab Runner Docker TCP Error (2 mins read).

Fixing the cannot connect to the Docker daemon error with GitLab Runner and Docker.
Inheriting the Proxy from the Jenkins Host in Docker (1 mins read).

How to pass proxy variables from your Jenkins host to your Docker containers.
Inheriting the Environment Variables from the Jenkins Host in Docker (2 mins read).

How to pass environment variables from your Jenkins host to your Docker containers.
Being a Bad POSIX Citizen (2 mins read).

Owning up to using GNU coreutils, even on BSDs, because I'm lazy.
Tomcat May Log Cookies Out-of-the-Box (3 mins read).

Warning you about cookies being logged out-of-the-box, and how to resolve it.
Providing Custom Serialization for Map Keys in Jackson (1 mins read).

How to configure Jackson to use a custom method to serialise keys for a Map.
Toggling Your Bluetooth Connection using bluetoothctl on the Command-Line (1 mins read).

How to script bluetoothctl to toggle your connection to a Bluetooth device.
Platform-Aware @-mentioning People on my Blog (2 mins read).
More easily mentioning others on my posts, and improving my interactions with Twitter syndication.
Extract a Private Key from a Java Keystore (1 mins read).

How to export an asymmetric PrivateKeyEntry entry from a Java keystore.
Splitting an X509 PEM-Encoded Certificate Bundle into Multiple Files (1 mins read).
Splitting a certificate bundle into separate files using split or awk.
PHPMiNDS March: Slim 4: PHP's Microframework (2 mins read).

Recapping Rob Allen's talk about Slim 4 at PHPMiNDS.
What's the jvt.me at the end of your tweets? (1 mins read).
Answering why there are links to jvt.me at the end of all my tweets.