No-code for cloud infrastructure
Developers should spend time working on application code, not on infrastructure code. Let no-code and low-code platforms do the hard work just as they do for building applications.
August 5 2021 · 5 min read
A few weeks ago, I helped a friend with a CloudFormation template he works on as part of his pet project. It took me a while to go over the template, building a mental model of what the infrastructure looks like. We ended up having to add a few resources and tweak others to fix the issue. Going over this giant YAML file, looking for the right place to make changes was tedious and tiring.
The cloud promise was to lower maintenance work and make it easier than managing a data center. But as the services evolved, cloud infrastructure management became more and more complex and hard to maintain. Cloud infrastructures should be codified, versioned and thus reproducible, but it costs time in learning, writing, and debugging large IaC templates. Take for example an AWS CloudFormation template for a simple service with:
- API Gateway
- DynamoDB tables
- SQS queues
- Lambda functions
- IAM policies
- Supporting resources such as API routes, stages, deployments and more
It can grow to hundreds or thousands of lines.
Following these new complexities, platforms for developers, like Altostra, were born. These platforms do for cloud infrastructure what no-code and low-code platforms did for application and web development (think WiX, but for cloud infrastructure). They save developers valuable time writing infrastructure code, handling the nitty-gritty details like creating roles and permissions, and much more. Under the hood, they produce IaC templates with best practices and design patterns built-in.
Going back to my friend’s project, I was surprised by how hard it was to work with raw IaC—I’m so used to using Altostra. Luckily, our fantastic team does the difficult low-level work so that our users don’t have to.
That’s the reason we founded Altostra in the first place. To save developers hours of manual labor on textual IaC files just to get an application running in the cloud.
What to consider before moving to a no-code or low-code platform
I started my career in IT, building data centers from the physical layer up to the application layer. I like to know and have control over everything. Over the years, I've learned to let go and rely on my fellow developers to build solutions that make some decisions for me—usually better decisions.
From my experience, once you understand and accept the trade-offs, you’ll be okay giving away some control because you also give away decisions, research and other time consuming work that you might prefer to avoid.
If you need a lot of customization in your infrastructure and must control every configuration setting, or if you have a strong DevOps team doing the infrastructure work, then a no-code solution may not be for you. But, if you usually click “next” on most configuration wizards, use the standard settings with an occasional advanced tweak, then a no-code platform can be very helpful.
The visual aspect of no-code and low-code platforms makes your cloud infrastructure designs easier to understand. Coming back to a project, onboarding new developers or just reviewing is much easier when looking at a drawing. The visual elements—abstractions—that no-code and low-code platforms provide handle certain complexities behind the scenes for you. For example, dragging a connection between two resources creates IAM roles, inject environment variables, and much more.
Introducing changes to existing projects becomes easy. You find the right place in the diagram where you need to make the changes and just do it with a few clicks. Naturally, it comes with some limitations. No-code and low-code platforms exist on top of your cloud infrastructure, which means they may limit the level of customization.
If your move to the cloud has resulted in developers doing a lot of DevOps work, spending days fixing permissions errors, and reading AWS documentation, then you should consider using a no-code or low-code platform for your infrastructure. It will require you to adjust, but once you get going, you won’t turn back.
Want to give it a try? We provide a free-forever plan for developers. Create your free account today at https://app.altostra.com.