2 October 2019
We've all heard it: "What?! You're using X framework/language/tool? You must suck at programming!"
We work in jobs rife with debate and discussion, where it's essential to give and take advice; some good, some bad. In this talk I'll delve into what's harmful about shaming, what's constructive and how we need to think about what we want for our future as an industry.
Repeatable cloud infrastructure with Terraform
I once managed a farm of ~150 dedicated servers in various locations around the world, before Ansible and Chef were well known. It was completely manual. Small variations in the version of the operating system created issues when running shell scripts across the fleet in any autonomous way. Had I had the opportunity to use a better tool it would have made this job much easier.
You can encounter the same issue with cloud services today. You can create infrastructure manually using the management consoles provided or run the occasional CLI command but if your manager asked you to boot up a second environment it can quite quickly become a nightmare, and no doubt the configuration will be different to the original environment.
You could solve this by using something like CloudFormation or Azure Resource Manager, however the JSON & YAML formats provided can be confusing and almost unreadable for any sizable infrastructure. Additionally, you have to learn a new syntax for each cloud.
Enter Terraform, a simple tool for creating reproducible, repeatable multi-cloud infrastructure.
Jonathan is a software engineer, currently working as Head of Engineering at Pickr. He works primarily in C# but has an extensive PHP background, as well as 5 years production experience with AWS