When our team couldn’t agree on the Monty Hall problem, we turned to Go programming to settle the debate. This article shows how we built a simulation to prove that switching doors really does double your chances of winning.
On Jul 19, 2025gogolangprobabilitysimulationmonty-hallmathematicstutorial
Application Performance Monitoring (APM) uses telemetry data to enhance system observability. It helps teams troubleshoot issues, manage resources, and improve user experience in production environments. Instrumenting Go applications with APM tools enables proactive monitoring and optimization.
On Jan 16, 2023software-developmentobservabilitytelemetrygoperformance
This post explains how to use Go’s template block and define expressions for creating reusable page layouts. It demonstrates avoiding repetition in HTML templates for a blog application. Learn to separate layout from content for better maintainability.
On Mar 12, 2022software-developmentgohtmltemplatesgolang
This post explores using Go’s embed package for improved SQL query management in applications. It compares embedding SQL in strings versus using separate SQL files with go:embed. Learn how this enhances editor support and maintains single-binary deployment.
On a previous post I wrote about Go’s time locations and how to put those in an alpine Docker container. This was achieved by copying the timezone data zip file from the docker builder image into the distributable image. Then using an environment variable to point Go to the location of that file.
This post explains how to use Go’s build tags for conditional compilation in applications. It covers syntax, Boolean logic for tags, and practical examples for plugins and OS-specific code. Learn to optimize Go builds for different environments and features.
This post explains how to configure timezone support in Go applications running on Alpine Docker images. It covers copying the zoneinfo.zip file and setting the ZONEINFO environment variable. Learn to ensure accurate time handling in containerized Go apps.
On Mar 29, 2020software-developmentGoDockergodeployment
This comprehensive guide covers testing Go Buffalo applications across different layers. It explains testing routes, middlewares, helpers, actions, and models with practical examples. Learn best practices for ensuring code quality and stability in Buffalo apps.
On Dec 18, 2019software-developmentbuffalogotesting
This post provides a quick guide to setting up Continuous Integration for Go projects on CircleCI. It includes a sample circle.yml configuration for dependencies, testing, and environment setup. Get started with automated builds and tests for your Go applications.
On Oct 9, 2015software-developmentgoCIdeploymentdevops