Also where is this idea that it takes days to ship Python in CDK coming from?
Edit: great, getting downvoted for daring to ask the author to explain a claim. I’m noticing other people asking questions getting downvoted, too. Brigading isn’t a good look.
Stelvio's main selling point here is that you can use our higher-level components for different services and have them automatically configured.
So, you don't have to configure IAM roles, or Env vars manually, as this is handled for you through a concept called linking. https://stelvio.dev/concepts/linking/
In our experience, that alone adds a lot of productivity gains for teams.
Why not use CDK L3 constructs (patterns) or the corresponding for Pulumi, since that's what you generate?
Higher level CDK constructs do the same thing. But honestly, IAC is one of the easiest thing for LLMs to do and there is plenty of documentation to troubleshoot. There is no reason to introduce this into a company instead of using the official CDK.
I respect your point of view.
But coincidentally Stelvio was born out of frustration with CDK which I'm using at my day job for 4 years at this point:
- slow deployment: CDK is layer on top of cloud formation, it first translates to CF which is then moved to AWS and resolved/deployed there. Process is quite slow and if something goes wrong it's hard to debug, rollbacks take ages, sometimes they block due to inter-stack dependencies - CDK is still quite low level and focused on infra. You just can't create say api gateway with 3 routes each using 3 different lambdas with permission to use dynamo table in 4 lines - you an with stelvio - whatever code change you need to test you need to deploy it first which is probably slowest with CDK(compared e.g. to pulumi) then even if you run it you can't really debug it or just see prints, you need to just go thru cloudwath or other services - stelvio allows you to run lambdas in "dev mode" so you don't need to redeploy and run your lambdas locally for instant feedback and even debugging support
Having said that CDK is good tool and I'm happy that it exists as I like it much better than CF itself or Terraform. Stelvio just tries to be even better and focused on developers.
Regarding LLMs sure, problem with LLMs is not they can't generate the code but if you're willing to read and understand all of it. Stelvio is less code with higher abstractions so it's easier to comprehend.
And what assurances are there that you will be around for five years? Or that you will support new services features when they come out?
And I always “disable rollbacks” this has been a feature in CloudFormation, CDK and SAM for years.
Running lambdas locally with SAM has been a feature for at least 5 or six years as with the CDK. But these days you really should be packaging lambdas as Docker containers - those are really easy to test locally without any special infrastructure
True, and there's nothing wrong with them.
We still believe to have a more flexible solution that also adds some features, including combining multiple cloud providers which at the moment we use to enable cloudflare DNS in front of AWS infra. Feel free to give it a try!
In that case just use Terraform with an entire community to support it across all types of infra.
Just to make it explicit, I (author) did not downvoted you.
Both me and sebst (co-author) tried to answer everybody and did so politely.
We respect other opinions and Stelvio (as any other thing) might and is not for everybody.
Regarding your question. Well, it depends on the size of the project. Small enough you can do anything fast. I'm working on bigger mostly serverless system on AWS and it did take lot of time to to setup everything with CDK, certainly days.
I believe it would be faster with stelvio as it offers higher level abstractions than CDK - Stelvio was born out of my frustraction with CDK, I was doing lot of things again and again, waiting long for deployments etc.
If someone is happy with CDK, then they should use CDK, it's good too, even for me much better than CF or Terraform.
But if you feel things could be even less cumbersome, with less code and faster, maybe you could give Stelvio a try.
We're not claiming we'll do everything for everybody, we have our opinions and Stelvio is opinionated - shamefully focusing on (app) developers rather than on infrastracture focused people. https://stelvio.dev/blog/why-i-am-building-stelvio/
Thank you for your comment and wish you a good day.
Michal
Thanks for the response. So Stelvo’s sell is through its opinionated approach regarding architecture and defaults. I realize elevator pitches are tough especially when there are lots of competing solutions, but maybe some sort of short and sweet “us vs them” comparison on the home page would make that sell easier. Like many of my peers I’m sure, I’ll admit I have little time and patience to click through to get to the obligatory question of “why us”.
Anyways, not sure who went on the downvote spree or why (it wasn’t one account), and I admit it didn’t seem likely your team would be doing it since you folks were actively discussing, but I couldn’t think of why someone else would do it either. Anyways, sorry and thanks for your time.
> but maybe some sort of short and sweet “us vs them” comparison on the home page would make that sell easier.
You're totally right and we will fix that and improve website and readme to answer most common questions raised here including setlvio vs. cdk/pulumi/terraform
thanks