Our serverless superhero this week is Sebastian Bille, founder and engineer at Elva and AWS Community Builder. Sebastian writes great content on his blog and builds incredibly useful tooling for serverless developers. I know I personally rely on his IAM Legend VSCode extension on a daily basis. Thank you Sebastian, for all you contribute to the community!
We’ve all heard the saying “everything fails all the time.” As funny as it is, it’s suprisingly true. With serverless applications, we address everything failing all the time by building in retry mechanisms to our apps. Robert Bulmer desribed an easy way to approach a storage first pattern with API Gateway and S3 in his post last week. By going storage first, we save off a request payload so we have it if downstream logic fails and needs to try again. Robert gives us a meaningful example and full CDK code to get us started.
More and more clever use cases for EventBridge Pipes keep popping up. Pubudu Jayawardana gave us a clever way to route SQS messages to content-based queues last week. It uses a pipe to pull off the queue, run an enrichment, then push the content onto a bus that routes it appropriately. It’s a great idea to unclutter business logic from your typical Lambda function that does the popping and routing. You end up with more pieces in your architecture, but ultimately it results in a cleaner implementation.
2023 is the year of observability. To help us dive into the different components that make up observability, Lee Priest wrote about finding hidden stories in your data with logs. He talks about observability as a whole, but really dives deep on logging and describes the pros and cons of structured vs unstructured logging. He also gives us some good examples of what not to log. Lee sets the record straight on this incredibly important component of observability.
There has been a decent amount of chatter around serverless folder structure lately. Honestly, I don’t think there is a single “best way” to structure your content since everyone does things just a little bit differently. Regardless, Robert Berger shared with us the way he tackles Python source layout for AWS Lambda functions. He covers the structure and how it plays into his deployment pipeline.
It’s been a while since I’ve revisited Lambda pricing. I did some cost modeling a few years ago and was satisfied with the results. But features like ARM processors, tiered volume pricing, and ephemeral storage have been released since I last did a deep dive. My numbers are all messed up. And surprisingly, too expensive. Sandro Volpicella published a complete guide to understanding the cost of AWS Lambda last week, showing exactly how the pricing breaks down. He also shows some easy optimizations to drive costs down even more. It’s a great refresher if you haven’t gone through it in a while.
Lambda has a new set of runtime management controls allowing customers to choose when their runtime environments take updates. To say it a different way, you can optionally decide when the managed runtime for your functions gets a patch from AWS. You can automatically take updates (like they did before), update when you update your function code, or manually update at your discretion. I’m undecided on whether or not I like this functionality. It might promote poor behavior for those who want to maintain a “sense of control” and accidentally let functions fall out of sync. On the other hand, it might save some people from critical outages if a patch introduced a bug (or fixed a bug a Lambda function depended on). We’ll see.
OpenSearch Serverless is now generally available. Prior to last week, it was in preview. Regardless of whether or not you see this as serverless, it stands to save existing customers thousands of dollars each year who have high usage of the service.
Episode #2 was released last week of the Ready, Set, Cloud podcast. I talk with Ran Isenberg about platform engineering and we cover everything from what is it to do only enterprises benefit from it to what is inner-sourcing and how can you be successful with it. It’s a great conversation on this trending topic that claims it killed DevOps.
Unrelated to serverless (kind of), I left my job at Tyler Technologies last week after 11 years. This week, today actually, I start at Momento as an Ecosystem Engineer to help bring serverless a little closer to the world. Leaving a job I was comfortable with was one of the hardest decisions I’ve ever had to make, but it was necessary to continue my growth in tech and reach my career goals.
Naturally, I wrote a blog post detailing my decision and how you can learn from my lessons on how to continue growing in tech. I talk about what to look for when seeking motivation, how to find opportunities, and traps to watch out for when going out of your comfort zone. I’m excited to be continue my journey and extend my reach to help push serverless.
Normalizing practices around serverless is a big deal. With the adoption rates so high so fast, we’ve all started doing our own thing. I’ve pushed Serverless Land quite a bit, which is run by the AWS Serverless DA’s, and it’s great. But we got another piece to the puzzle from last week’s serverless superhero Michael Walmsley that really moves us forward. He came up with Serverless DNA which seeks to fill in the gaps from Serverless Land. Awesome idea!
Huge thanks to @theburningmonk, @loige and @AllenHeltonDev for allowing me to provide links to their podcasts in my podcast "Strand", what is a strand?— Michael Walmsley is building ServerlessDNA.com (@walmsles) January 29, 2023
Get on over to https://t.co/QoFUyQbTqC and find out! https://t.co/JpLs6J5NIN
AI has been a hot topic lately. How have you been using it? I’d love to hear some clever ways people are taking advantage of OpenAI tools like ChatGPT or Dall-E 2. It’s an interesting time between general acceptance and violent push back with artificial intelligence. I know I am both excited and terrified to see what is to come in the upcoming weeks.