Latest Posts

  • Start Thinking About Connection Timeouts

    When an application makes an HTTP request to another service, the application surrenders control of its performance to that external service. If it takes 10 seconds to respond, the application waits for 10 seconds. To stay healthy the application needs to set appropriate timeouts to limit the impact of flaky external services.

    Read more
  • A Portable Shell Script Template

    Often write small utility scripts to perform repetitive tasks. More often than not, throw-away scripts become tools I come back to over and over. I’ve decided to spend a bit more time on polish so that when I use the script again, it is documented and easy to use.

    Read more
  • How to Fail Better

    Software development is like an art. Every project starts with a concept, an idea that organically unfolds into something beautiful. That is the creative process that makes my work worthwhile. However, for every masterpiece there are a thousand failures. How should software developers deal with failure?

    Read more
  • How I Set Up GitHub Pages

    I was suffering from analysis paralysis trying to choose a platform for this blog. Out of the hundreds of options, GitHub Pages and Jekyll provided the right balance power and simplicity. I’ll explain why, and how to get started.

    Read more