AI was once an interesting, mostly fictional, concept, but over the last year, it has infiltrated all of our lives (whether we realize it or not!). From generating LinkedIn photos, articles (for the record this is not GPT generated!), or code, AI is changing our world. Today I want to focus on the latter, AI-generated code.
Amazon CodeWhisperer, GitHub Co-Pilot and OpenAI Codex (to name just three) are all in the market and on the rise. Amazon promises that CodeWhisperer generates code suggestions ranging from snippets to full functions in real-time, all in your integrated development environment (IDE), based on your comments and existing code. It also supports CLI completions and natural-language-to-bash translation in the command line. GitHub Copilot is an AI coding assistant that helps you write code faster and with less effort, allowing you to focus more energy on problem-solving and collaboration. Copilot offers coding suggestions as you type: sometimes the completion of the current line, sometimes a whole new block of code. Codex is the model that powers GitHub Copilot, which was built and launched in partnership with GitHub. Proficient in more than a dozen programming languages, Codex can now interpret simple commands in natural language and execute them on the user’s behalf—making it possible to build a natural language interface to existing applications.
With all this promise that AI will 10x your code, this is great news for developers, but can your platform team cope?
Most organizations today have established infrastructure provisioning and application deployment processes in place. With AI, these systems and people are under pressure. For example, today if a developer ships code, there are often both automated and manual checks in place that the DevOps/platform team handles. These checkpoints from DevOps and security can slow down developers, whether through the time it takes for manual review or the time it takes to revise a failed automated check. And this isn’t a knock on DevOps or security; they are keeping infrastructure secure and reliable - both completely necessary. But if we already see bottlenecks without AI, we will surely see more as AI-generated code is adopted. Especially considering the ratio of devs to DevOps is always more devs to less DevOps.
“The ideal Developer to DevOps engineer ratio is 5:1, and in large software organizations like Google, the ratio is 6:1. Large start-ups can have a Developer to DevOps ratio as high as 15:1, however it is not recommended to have insufficient cloud and infrastructure support.” Brokee Blog
If we use the 5:1 ratio and developers have 10xed code, does that mean the ratio is more like 50:1? How will platform teams cope? We need to help platform leaders create self-service developer platforms to get applications deployed that can handle this scale with the infrastructure standards applied.
Both developers and platform teams can use infrastructure from code (IfC) to cope with these AI-generated scale changes. IfC uses an application’s code to create the infrastructure as code (IaC) needed to deploy the application. With IfC, platform teams can set the standards required for infrastructure and be assured it will be automatically applied when the IaC is created. Developers simply need to code their application (with or without AI-generated code) and then use that as the source of truth to auto-generate IaC. This process removes the bottlenecks between platform/DevOps and developers, enforces standards and consistency, and does so in a secure and compliant way.
Infrastructure from Code provides infrastructure teams the chance to support more code generation with optimized and secure cloud resources aka fight automation with automation. Infrastructure from Code generates IaC for developers in three steps:
Infrastructure from Code benefits platform teams as it helps them cope with the increase in code and helps developers continue to move faster in this new world of AI generation.
Can Infrastructure from Code work to generate IaC for your application or across your organization? Try the developer edition of appCD to see how in a few simple steps, you generate IaC.