Error Handling in Python: Result Class

In a previous post, I presented a C# Result class that represents the outcome of an operation. This class is intended to be used for error handling as an alternative to throwing and handling exceptions. I was introduced to this concept by a post from the Enterprise Craftsmanship blog. I recommend reading the entire post, which is part of a series examining how principles from Functional Programming can be applied to C# (the entire blog is recommended reading IMO).... Read More

How to Continuously Deploy a Heroku App with Azure DevOps

If you create Heroku apps, you know that the only built-in options for deployment are 1) the Heroku CLI or 2) integration with a github repo. If you don’t want your application’s code to be publicly accessible, this results in a tedious routine of manually pushing your changes to heroku. With Azure DevOps, you can create flexible build pipelines to automate various tasks: creating envrionments, creating builds, testing, creating binaries, publishing artifacts, etc.... Read More

Packer Template: Amazon EC2 Ubuntu AMI with Latest NGINX

Build automation is a foundational concept within the culture of Continuous Delivey and DevOps. Implementing a successful build automation strategy can dramatically improve product quality and produce time savings in several areas. Packer is a powerful build automation tool that is relatively simple to integrate with your team’s workflow. The official website describes packer as follows: Packer is an open source tool for creating identical machine images for multiple platforms from a single source configuration.... Read More

The Periodic Table of DevOps Tools

When I began learning about DevOps software and processes, it seemed like there were numerous tools that accomplished the same task, or nearly the same task without a clear consensus opinion on the best toolchain and workflow. I quickly discovered that there isn’t a single, correct answer, mostly due to the nature of open-source software. The Periodic Table of DevOps Tools is a crowdsourced website that nicely illustrates the current landscape:... Read More