Ready, Set, Cloud Picks of the Week
Issue #218: Zipping 15GB of S3 files in Lambda in 215 seconds

🦸 Community Superhero

Our community superhero this week is Lee Harding, founder of Proxylity and AWS community Builder. Lee is a wonderful writer and the biggest advocate for UDP I have ever seen (in a good way, of course). His ideas are novel and creative, and his writing style is easy to follow and entertaining. Thank you for everything you do, Lee!

πŸ’― Spotlight

Have you ever needed to download hundreds of files from S3? Sure, you could do it one at a time but that’s incredibly impractical. Generally, your answer is to put the files in a zip and download that in one shot. But how do you get your files in the zip? You certainly can’t do it in Lambda… or can you? Turns out you can, and JΓ©rΓ©mie Rodon showed us exactly how he did it in Rust in a brilliant article that has technical depth, easy-to-understand diagrams, and great storytelling. My favorite part of this is how impressively fast it is. He was able to zip 3000 files totalling 15GB in 215 seconds 🀯! It’s been a long time since I’ve seen such a thoughtful, well-presented piece like this. Wonderful job!

πŸ”₯ My Favorite Content

It was only a matter of time before we start trusting AI agents with money. The turning point (kind of) came last week when got a deep dive into AgentCore payments. The post talks about how agentic commerce is shaping up and goes into the technical weeds on how the AgentCore team designed payments with plenty of checks and balances. I really like how it explains the landscape, then goes into the challenges with solid answers to them. While I don’t think everyone is going to jump headfirst into this, it’s feeling like we’re at the point now where we’re ready for it.

I published a blog post last week talking about using two types of caching to improve agent performance. The post goes through how and why agents are burning through tokens by simply repeating themselves, and how you can use both exact-match and semantic caching to lower costs and get results faster. They say the two hardest things in computer science are cache invalidation and naming things, so while it might be simple to throw a cache in front of your AI model and call it a day, there are still strategies you need to consider to prevent serving stale data.

Ran Isenberg published an article last week making observations about how AI changed how we build, but processes are yet to follow. He covers how the AI software development life cycle has fundamentally changed how engineers operate, but in many cases, we’re still trying to run things the same way we always have. What happens to sprints when a single engineer can do a “sprint’s worth of work” in 2 days? How do we get coding agents to get repo-spanning context for bigger builds? While Ran doesn’t have all the answers to questions like these (who does?) they’re good to bring up and start figuring out what we need to do to adjust to the new way of coding.

Here’s a problem I know many of us have had at one point or another: consistent structured outputs from an LLM. Sometimes you get exactly what you’re looking for, other times you get the property names slightly changed, and others still might wrap your json with backticks (`). Paul Santus shared an article last week on how he manages this problem. He uses tool calls to structure outputs instead of relying on the response itself. I’m inclined to agree, and have found success with this approach many times. Paul’s article explains the problem well, but also goes into why alternatives still aren’t perfect. It’s a well-rounded piece that covers all the bases.

πŸ’‘ Tip of the Week

The Middy team has been absolutely crushing it recently. Will Farrell posted on LinkedIn last week about a huge update for the middleware package that integrates directly with a dozen new AWS services. Great job everyone!

πŸŽ‰ Pick This Week's Favorite!

Your vote helps shape next week's top pick.

Last Words

This was a low week for content, but I really like what I saw! I’m so encouraged by the amount of developers sharing their first-time experiences and the lessons they learned from building something themselves. But here’s my monthly reminder to keep your personality. Nobody wants to read the LLM-generated blog post that sounds like everyone else. Put your words, humor, and character into it. It goes a long way in an age that’s starting to crave humanisms.

That’s my take on the week, but what’s yours?

What did I miss? What made you nod along (or πŸ™„)? Hit reply if you’re reading the email. Prefer socials? Ping me on Twitter, LinkedIn, or email.

Happy coding!

Allen

Join the Ready, Set, Cloud Picks of the Week

Weekly writing and curated picks on cloud-native systems and practical AI. Browse past issues to see if it’s for you.
Browse past issues.

Join the Ready, Set, Cloud Picks of the Week

Thank you for subscribing! Check your inbox to confirm.
View past issues.  |  Read the latest posts.