Week Notes 20#34 (4 mins read).
What happened in the week of 2020-08-17?
Week Notes 20#34 (4 mins read).
What happened in the week of 2020-08-17?
Generate Plain Old Java Objects (POJOs) from XML Schema Definitions with Maven (1 mins read).

How to generate POJOs really quickly and easily, with no manual work, using the Mojohaus jaxb2-maven-plugin.
My First Experience With Setting a Squad Healthcheck (8 mins read).

Documenting a squad healthcheck I ran last year, and the good learnings that came out of it.
Week Notes 20#33 (5 mins read).
What happened in the week of 2020-08-10?
JWKS-iCal Release v1.2.0: Determine the jwks_uri from Configuration (1 mins read).
Updating jwks-ical to add support for discovering jwks_uri endpoints automagically.
Globally Disable TLS Checks with Java for HttpsURLConnection (1 mins read).

How to disable TLS checks when using HttpsURLConnections in Java.
JWKS-iCal Release v1.1.0: Adding Calendar Reminder (1 mins read).
Updating jwks-ical to add support for calendar reminders before the certificate's expiry.
Connecting to the Docker Host from a Child Container (2 mins read).

How to access ports from the host machine when running in a child container.
Week Notes 20#32 (4 mins read).
What happened in the week of 2020-08-03?
How to Manually Trigger JSR380 Bean Validation on a Class (2 mins read).

How to perform validation on a class using JSR380, when not using a framework like Spring Boot.
Week Notes 20#31 (3 mins read).
What happened in the week of 2020-07-27?
Configure Gradle to Allow Listing All Subproject Dependencies (1 mins read).

How to set Gradle configuration globally to add a task to list all your dependencies.
Configure Gradle to Configure Tasks Globally with an initscript (1 mins read).

How to use Gradle's initialization scripts to globally configure tasks across all of your projects.
Week Notes 20#30 (3 mins read).
What happened in the week of 2020-07-20?
Week Notes 20#29 (3 mins read).
What happened in the week of 2020-07-13?
Capital One Promotion Celebrations (2 mins read).

Reflecting on the fun of today's promotion announcements session.
Week Notes 20#28 (3 mins read).
What happened in the week of 2020-07-06?
New Job Title, Who Dis? (1 mins read).

Moving into the world of being a Tech Lead.
Week Notes 20#27 (4 mins read).
What happened in the week of 2020-06-22?
Spring Boot: 'junit-vintage' failed to discover tests When Using Only JUnit5 Tests (2 mins read).

How to avoid the error 'junit-vintage' failed to discover tests when using Spring Boot.
Week Notes 20#26 (3 mins read).
What happened in the week of 2020-06-22?
Creating My Own Personal Micropub Client (3 mins read).

Announcing my own personal Micropub client to publish content that is very specific to my workflows.
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.
Week Notes 20#25 (4 mins read).
What happened in the week of 2020-06-15?
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.
Week Notes 20#24 (2 mins read).
What happened in the week of 2020-06-08?
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.
Week Notes 20#23 (3 mins read).
What happened in the week of 2020-06-01?
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.
Week Notes 20#22 (4 mins read).
What happened in the week of 2020-05-24?
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.