🧽 Clean Static Site URLs with CloudFront and S3February 10, 2024·1 minConfigure CloudFront so you can avoid ugly .html endings in URLs.
✂️ The Playbook for Cutting Cloud CostsAugust 3, 2023·3 minsSlash your cloud bill without impacting your operations.
📜 Six Rules for Designing a REST APIMarch 17, 2023·3 minsA checklist for building a successful REST API.
Adding SSL/TLS to a Web Application using AWS Application Load BalancerFebruary 2, 2022·4 minsI demonstrate how to add SSL/TLS to a web application running on AWS EC2 by configuring an application load balancer in front of it.
🌱 Testing Log Statements in Spring BootJanuary 8, 2022·2 minsI explain how to test log statements in Spring Boot using the OutputCaptureExtension.
Publish a Docker Image to Private Docker Hub Repo Using GitHub ActionsAugust 31, 2021·2 minsI describe a common Git error and how to resolve it.
Delete Local Branches in GitApril 10, 2020·Updated: February 26, 2024·2 minsCommand-line snippets for deleting multiple branches at once.
Git Error - fatal: Not a valid object name: 'master'April 8, 2020·1 minI describe a common Git error and how to resolve it.
Java Streams: Use anyMatch() over count() > 0 for checking at least one occurrenceMarch 2, 2020·3 minsI discuss why using the anyMatch() method in the Java Stream API is both safer and more performant than using filter().count > 0.
Spring overwrites map keys with bean name from valueJanuary 5, 2020·2 minsI cover a strange behavior where Spring overwrites map keys with value bean names.