Our serverless superhero this week is Julia Furst Morgado, global technologist at Veeam and AWS Community Builder. Julia is a blogger, creates tech videos in 4(!) languages, and is a phenomenal public speaker. She’s also one of the most persistent devs I’ve ever met. She frequently posts about taking care of yourself in tech and motivates others to keep driving. Thank you, Julia, for inspiring and encouraging others to be the best they can be!
I am passionate about API design, which makes Lee Gilmore’s current series super exciting for me. Last week he published part two of his series on OpenAPI and Amazon API Gateway which focuses on a code-first approach to development. He walks through the steps of building out an API and generating an OAS afterward through CDK, then gives the pros and cons of code-first vs spec-first. My two cents, the code-first approach is not API-first. I even did an entire podcast episode on the subject.
Lambda extensions are underrated. There isn’t a lot of content on them (compared to other areas around Lambda) for whatever reason, but they are super powerful. If you’ve been looking to try them out, Corentin Doue wrote one of the most thorough and complete walkthroughs about building both types of Lambda extensions. He explains the two types, gives working examples of both, and guides you through how they work. Well done!
For a bit of a lower-level tutorial on Lambda extensions, Benjamen Pyle walks us through his implementation in Go, where he creates an extension to create a caching layer using Momento. He also goes into detail as to why you would use an extension and dissects where they fit into the Lambda lifecycle.
Yan Cui has been on a roll lately with great serverless content - especially around testing. Last week was no exception. He published an article on how to test timeout and wait Step Function states without having to wait. This can save you minutes to hours to days worth of time, which is crucial if you want to include the tests in your CI pipeline.
Since this is the year of observability, we should all be excited about a new feature from CloudWatch that deduplicates results in CloudWatch Log Insights. This will help get narrow in on any problem by showing you unique results, preventing you from wading through potentially hundreds to thousands of entries.
AWS SAM released a new resource abstraction for AppSync APIs. Now with a simple
AWS::Serverless::GraphQLApi resource in your template, you can get started with AppSync! Check out the full documentation for the resource to see how simple it is.
Another release from AWS SAM is the new remote invoke command. This is cool because you can get a response back as if you were running API Gateway OR the full response with all the metadata. This will be useful alongside SAM Accelerate to get rapid feedback when doing development.
Step Functions launched versions and aliases for workflows. This provides a safer way to deploy updates to your workflows without accidentally breaking production!
Marcin Sodkiewicz posted a short article last week about a problem that recently bit him when deploying an application with SAM. If you make a change to an environment variable but don’t make a code change, it might not update in your account when you deploy. Luckily, he tells us about the easy fix to the problem so we don’t run into the same issue he did.
I sent a tweet out as a joke last week that ended up turning into a super informative thread on how people start new serverless projects. My tweet isn’t the tip of the week, but the many answers and threads off it are gold.
I've written hundreds of Lambda functions over the past few years, but I still have to copy/paste an example from a SAM template whenever I start a new project 😬— Allen Helton (@AllenHeltonDev) June 20, 2023
It’s summer for those of us in the northern hemisphere. After a nice vacation and some self-reflection I’ve decided to take a couple of months off of blog writing. The newsletter and podcast are still going to be published on their normal cadence, but I’m taking a breather from writing for a bit.
Also, re:Invent registration is open! Have you signed up yet?