May 9, 2023
Only have a few minutes? Check out this week's MOST POPULAR links as chosen by our email subscribers.
In our previous issue, Athena enabled provisioned capacity, Lambda got support for Java 17, and Vercel announced Postgres and Redis options for frontend developers. This week, the Internet overreacts to sound architectural choices, AppSync goes private, and Ampt gets production ready. Plus, we’ve got plenty of serverless content from the community. Let’s get to it!
It’s hard not to ignore headlines like “The Great Serverless Lie: How Amazon Fooled Us All” and “Amazon Prime Video team throws AWS Serverless under a bus.” Then to read bad take, after horrible take, after terrible take, after even worse take, all guilty of completely misreading the original post and insinuating that this has sparked some sort of Big Dilemma in the Software Industry, is, well, pretty dumb. Or maybe to put it a bit more elegantly: intellectually dishonest.
Despite the all the unjustified giddiness and terribly lukewarm takes from the anti-serverless crowd, leveler heads were quick to add some voices of reason. Some good ones include:
But my favorite is “So many bad takes” by Adrian Cockcroft. It’s never been about “Serverless Only”, it’s about being “Serverless First.”
There’s a reason why the answer to almost every question in tech is “it depends.” There are so many variables and factors to consider when building a solution, that a) you must realize there are no silver bullets, and b) the chances of getting it right on the first try are slim to none.
I love serverless (I mean, I write a weekly newsletter about it), but I’m also not blinded by its limitations or the fact that it’s not right for every situation. When I read how the Prime Video team architected their original solution, my first thoughts were, “this isn’t going to scale” and “it’s going to be expensive.” Why? Because the idea of passing that volume of data between distributed components and executing multiple state changes per second seems incredibly inefficient. But I would probably have made the same early choices they did.
There has been so much written about this that I won’t waste more time with my pontifications. But I will say this: premature optimization is a silent killer. I have built serverless apps that grew to handle high traffic situations really well. I’ve built serverless apps that got really expensive, hard to scale, and needed to be refactored. But most importantly, I’ve built serverless apps that I’ve thrown away because they never found product market fit and never even had to scale.
Serverless lets us build powerful apps quickly and get them in front of users without wasting precious time and runway by over-engineering something you have no idea if people will ever use/want.
In other news, AWS announced Private API support for AWS AppSync GraphQL APIs.
Momento announced AWS PrivateLink connectivity, which I believe is exactly how third-parties should accommodate VPCs in AWS.
And, Ampt is ready for your production Serverless Cloud apps! We’ve been working hard to get Ampt production read, and have made it super easy to migrate your apps running on Serverless Cloud.
Serverless Laravel applications with AWS Lambda and PlanetScale
Matthieu Napoli is doing an amazing job with Bref, and since the theme of this week’s newsletter is “use the right tool for the job,” I’m not going to rule out PHP for you.
Strategies for a Faster Lambda Development
John Nguyen outlines some different frameworks and strategies for making Lambda development a little less painful.
StepFunctions Approval Action with One-Time HTML Page Confirmation
Shimo shares an upgrade approach to a serverless approval process.
Orchestration and Choreography in AWS: The Serverless Way
Salvatore Cirone and Guido Nebiolo give you an overview of microservice communication patterns in AWS using serverless.
Secure your AWS API Gateway with Lambda Authorizer
Lambda Authorizers are pretty powerful. Thiwanka Wickramage shows you how to implement them.
Load Data From S3 to Postgres using Step Functions
Handy post by Pubudu Jayawardana.
Are We Making Lambda Too Hard?
Allen Helton opines on the added complexity of adopting multi-tiered architectural patterns when using Lambda Functions. The world is full of tradeoffs, so sometimes you just need to pick your poison.
How to Become AWS Serverless Ninja
Awedis Keofteian shares some high-level thoughts on how to approach the world of AWS Serverless.
Understanding β in spite of abstractions β is Key in a Serverless World
Vince Quainoo is right. Just because an AWS service abstracts away a bunch of the heavy lifting for you, doesn’t mean you don’t need to understand the fundamentals of the patterns it’s implementing for you.
How to Migrate Data to DynamoDB?
Marcia Villalba provides another excellent video to explain it to you.
Serverless Deep Dive – Event #1 with Alex DeBrie and Jeremy Daly
Had an awesome conversation with Sabin Adams, Tyler Benfield, and Alex DeBrie on all things serverless. Plus Alex gives a great presentation in the beginning.
How do you do Functionless APIs?
Eoin Shanaghy and Luciano Mammino give us another AWS Bite about cutting out Lambda functions (when appropriate) for better performance and lower costs.
Ready, Set, Cloud! Podcast – Episode #9
Allen Helton chats with Alex Debrie about writing the DynamoDB Book, imposter syndrome, and what book to write next.
Automating your life with serverless | Serverless Office Hours
Allen Helton is everywhere! Here he connects with Julian Wood at AWS to share how he’s automated just about everything with serverless.
Real-World Serverless podcast – Episode #77
Yan Cui talks with Luca Mezzalira about micro-frontends and what they are, how they work, and who should adopt them.
Lots of other noteworthy announcements from AWS, including continued support for Aurora Serverless v1. π€
serverless-cloudflare-search
Using Cloudflare Worker + Queues + R2 Storage to implement a small scale to zero search system that is reasonably fast and cheap.
Introducing LambdaPulse
Lightweight, opinionated AWS Lambda Function trace visualization tool.
DON'T build monoliths... except when you should.
— Jeremy Daly - @amptdev (@jeremy_daly) May 8, 2023
DON'T build microservices... except when you should.
DON'T use containers... except when you should.
DO use #serverless... except when you shouldn't.
Hope that clears things up.
Of all the tweets to go viral, apparently this incredibly tongue-in-cheek one fit the bill. It’s rather clear from the comments and quoted tweets that the jest was lost on some. Here’s some more clarity: “It depends.”
May 17, 2023 – AWS Serverless Innovation Day 2023
June 7, 2023 – ServerlessDays Paris
June 22, 2023 – ServerlessDays Zurich
September 21, 2023 – ServerlessDays Cardiff
This weekβs star is Andreea Merariu (@andreea_merariu). Andreea is a Software Engineer at The LEGO Group, and recently shared her first blog post, “A Journey into Serverless and Handling Step Function Failures.” Shining a spotlight on people like Andreea that are taking purposeful steps in the serverless community, sharing and helping others along the way, is what the Off-by-none Star of the Week is all about! Thanks for joining the community, Andreea. We look forward to more of your content.
Wow, what a week for serverless! But hey, haters gonna hate. Too bad they’ll be too busy building out their highly scalable, bespoke infrastructure (that will probably never need to scale) to read all the thoughtful responses and understand the nuance.
See you next week,
Jeremy
I hope you enjoyed this newsletter. Weβre always looking for ideas and feedback to make it better and more inclusive, so please feel free to reach out to me via Twitter, LinkedIn, or email.
Stay up to date on using serverless to build modern applications in the cloud. Get insights from experts, product releases, industry happenings, tutorials and much more, every week!
We share a lot of links each week. Check out the Most Popular links from this week's issue as chosen by our email subscribers.
Check out all of our amazing sponsors and find out how you can help spread the #serverless word by sponsoring an issue.
Jeremy is the CEO and Founder of Ampt and an AWS Serverless Hero that has a soft spot for helping people solve problems using serverless. He frequently consults with companies and developers transitioning away from the traditional βserver-fullβ approach. You can find him ranting about serverless on Twitter, in several forums and Slack groups, hosting the Serverless Chats podcast, and at conferences around the world.
Off-by-none is committed to celebrating the diversity of the serverless community and recognizing the people who make it awesome. If you know of someone doing amazing things with serverless, please nominate them to be a Serverless Star βοΈ!