The Evolution of Infrastructure from Code • Adam Keller, Elad Ben-Israel & Eric Johnson

Explore how infrastructure as code has evolved into "infrastructure from code" and how modern tools are unifying cloud infrastructure with application development.

Key takeaways
  • Infrastructure as code evolved from managing physical data centers to cloud resources, with the term becoming somewhat diluted as the industry moved to cloud-native approaches

  • The decoupling between infrastructure and application code is becoming less distinct as cloud services integrate more deeply into application architecture

  • Modern tools like Wing and CDK aim to unify infrastructure and application concerns while maintaining a clear boundary between platform and application layers

  • Platform teams need both opinionated defaults and the ability to customize/extend infrastructure tooling to meet enterprise requirements

  • Abstractions should hide complexity while still allowing access to underlying platform capabilities when needed

  • Local testing and development experience remains challenging when working with cloud infrastructure - simulation and abstraction layers help address this

  • The evolution from pure infrastructure-as-code to “infrastructure from code” reflects the trend of treating infrastructure as an integral part of application development

  • Organizations need different approaches based on their structure, maturity and requirements - no single solution fits all use cases

  • Developer experience is improved by providing clear opinions and defaults while maintaining flexibility to customize

  • Generative AI and improved tooling may help bridge the knowledge gap for developers new to cloud infrastructure concepts