Working with a Git remote's default branch, using origin/HEAD (2 mins read).

How to interact with the default branch for a remote repo, as well as update it if needed.
Working with a Git remote's default branch, using origin/HEAD (2 mins read).

How to interact with the default branch for a remote repo, as well as update it if needed.
Better Chef Reporting for Automated Pipelines (1 mins read).

How to get better machine-parseable reports for your Chef Pipelines.
Managing Your Chef Gem Dependencies More Easily in your Gemfile (2 mins read).

How to source your Chef Gem dependencies from your Chef cookbook's metadata.rb instead of duplicating them between files.
Programatically Determining the Version of a Chef Cookbook (1 mins read).

How to determine a Chef cookbook's version programatically, using Ruby.
How to Use Cookstyle to Autocorrect Style Issues (1 mins read).

How to use the cookstyle tool with Chef cookbooks to autocorrect style issues.
Ensuring Consistent Code Style with Job DSL Repos (3 mins read).

How to make sure that your Job DSL configuration repos are managed with consistent code style.
Speeding Up Gradle Executions with Parallelisation (2 mins read).

How to make your Gradle builds faster, by taking advantage of parallelisation.
Testing Time with Java (4 mins read).

How to make your Java tests better when dealing with java.util.time.
Introducing tokens-pls, a Web Application to Test OAuth2 Code Flows (2 mins read).
Announcing my new project, tokens-pls, which allows for easier manual testing with the OAuth2 code flow for Public Clients.
Using Proof of Key Code Exchange (PKCE) Using rack-oauth2 as an OAuth2 Client (1 mins read).

How to use the PKCE extension when using the Ruby library rack-oauth2 as an OAuth2 client.
Determining the (Git) Branch of the Jenkins Pipeline Job (1 mins read).

How to find out what branch the currently executing script has been checked out from.
Encrypting and Decrypting Text with OpenSSL (2 mins read).
How to use openssl to encrypt text with a shared passphrase.