I'm fascinated with the idea of CloudFormation and infrastructure as code. Every change you make to your architecture should be managed as a state change that can be rolled back, version-controlled, and repeated. There are a variety of tools to facilitate the use of CloudFormation, but I wanted to experiment with my own tool to learn a few things:
I built a tool called awsbudget
, that gives users a command-line tool to create a budget in AWS. Behind the scenes, the tool creates a CloudFormation stack to manage this budget.