I do really like this step function pattern especially with the new JSONata flavour it’s much more approachable than the original DSL that was so painful to write and debug.
When it first came out the developer experience was awful but it’s come a long, long way. JSONata is definitely a big part of that, along with the workflow designer being available in VS Code and tolerant of placeholders (${Foo}).
The article’s callout of direct service integrations in API Gateway is also spot on. When they can be made to fit, they’re such a nice way to go.
The article is basically making the point that deploying bits of runtime code, even something as simple as a single purpose cloud function, is unnecessary and makes work. The examples of using StepFunctions (declarative code) and “direct integrations” are given, the latter being the least effort to maintain, but in reality it also hides declarative code inside (e.g. VTL to change the shape of payloads).
The benefit is mainly removing the need to deal with runtimes.
reply