Beyond YAML: How an SDK Elevates Infrastructure as Code to a True Software Engineering Discipline
For years, Infrastructure as Code (IaC) has promised us the ability to manage cloud complexity with the same efficiency as application code. Tools based on declarative languages and YAML configuration files have revolutionized the way we work, allowing us to define our desired state. But let's be honest: how many times have we found ourselves copying and pasting hundreds of lines of YAML, only to change a couple of values? How often have we fought with the syntax of a loop in a configuration language or skipped writing a test because "it's just config"? This approach, while powerful, has forced us to operate with a limited set of tools. Complex logic, reusability, and testability remain painful. It gave us the "Code" part of IaC, but it deprived us of the "Engineering" part. What if we could overcome these limits? What if we could define our infrastructure using the same power, flexibility, and patterns we use to build our business applications? This is the paradigm shift that an SDK in a true programming language brings to the table.