In the olden days of web development, the process was a bit like this: make a code change, hit save, switch over to your FTP client, upload everything to the server, switch to your browser and hit refresh. It was a slow and annoying manual process that was soon eliminated with various methods and tools, but one that has reappeared in recent years for Lambda developers. With last week’s “Cloudlocal for all” release, serverless development platform provider Stackery is hoping to bring an end to a similarly tedious process.
“One of the biggest challenges that people hit with serverless is you can’t run all of these things on your laptop, which is a big change. Before, you would set up a local development environment — you’d install a database on your laptop that matches what you have in production, install whatever software you need, and run everything locally,” explained Sam Goldstein, vice president of product and engineering at Stackery, in an interview with The New Stack. “The benefit of doing that, from a developer standpoint, is that it’s a fast feedback cycle. I can change a line of code, run that in a few seconds and know what is a good change or not. With serverless, that becomes much more challenging because you can’t take all of these managed cloud services and just run them on your laptop.”
With “cloudlocal” development, developers using Lambda enjoy reduced debugging friction and the ability to ship new functionality faster by invoking a Stackery command that essentially imports all of your cloud configurations and then running the function locally in a Docker container that mimics the Lambda functionality, but with a connection to all of those other, necessary cloud services.
Here, a definition of “serverless” according to Goldstein may come in handy.
“There’s a tendency to focus on function as a service as being synonymous with serverless. It’s a key component of it, but really, the serverless approach is about using managed services,” said Goldstein. “A serverless team would say ‘let’s take all of these managed services that are now available, that scale to zero in terms of cost and load and can scale to very high load and stitch them together, with our business logic to deliver these cloud native scalable enterprise applications.’ It’s really about stitching those pieces together and in the process being able to focus on that business logic and not on those underlying infrastructure components. That’s serverless in a nutshell.”
Thus, Stackery’s cloudlocal development feature connects the function-as-a-service aspect of serverless with all those other managed services that are needed to operate the full application. The “for all” part of the announcement comes in the fact that the feature is available to all, whether or not they have a Stackery account, and in a variety of languages. In fact, the feature only requires two things — the installation of the Stackery command line interface (CLI) and the ARN of your AWS Lambda function and account permissions to access it.
In the announcement, Stackery identifies three ways that the feature differs from the AWS SAM CLI and other local serverless development tools — it is framework independent, it can invoke any of the 86 AWS CloudFormation enabled resources, and it can run non-native Lambda function languages. In these ways, said Goldstein, Stackery worked to make a tool that would work for everyone.
“While there is enormous power and flexibility in those building blocks that AWS and other cloud providers are providing, there’s a ton of challenges around the workflow. Being able to wield that technology and pull it into a rational workflow that can get a team of developers working effectively, that’s the biggest challenge today in serverless. That’s what’s holding a lot of companies back in terms of being able to tackle more complex applications,” said Goldstein. “Now anybody can do this. So even if it’s not a new Lambda that you’re deploying through Stackery, you’ve got something that you set up and you need to figure out a better way to develop it or debug it, now anybody can do that. Internally, we’ve called the launch cloudlocal for everyone and it’s really about providing that base development workflow functionality to everyone.”
For Visual Studio Code users, Stackery also noted that this functionality has been integrated with the Stackery VS Code extension.
Stackery is a sponsor of The New Stack.
Feature image via Pixabay.