Better Dev https://betterdev.blog/ Serverless on AWS Mon, 04 Dec 2023 15:58:21 +0000 en-US hourly 1 https://wordpress.org/?v=6.3.2 https://betterdev.blog/app/uploads/2022/11/cropped-favicon-32x32.png Better Dev https://betterdev.blog/ 32 32 25 Good and Bad Serverless (and other) Announcements from re:Invent 2023 https://betterdev.blog/25-good-and-bad-serverless-announcements-reinvent-2023/ https://betterdev.blog/25-good-and-bad-serverless-announcements-reinvent-2023/#comments Mon, 04 Dec 2023 15:58:18 +0000 https://betterdev.blog/?p=5145 AWS re:Invent 2023 ended, so let’s look at the most interesting announcements for serverless and more. There are exciting features to try and, maybe more importantly, features to avoid! Looking at the announcements, I think we are entering the next era for serverless and cloud computing in general. There are fewer groundbreaking new services or […]]]> https://betterdev.blog/25-good-and-bad-serverless-announcements-reinvent-2023/feed/ 2 Dynamic Content with Lambda Response Streaming https://betterdev.blog/lambda-response-streaming-dynamic-content/ https://betterdev.blog/lambda-response-streaming-dynamic-content/#respond Wed, 22 Nov 2023 16:51:42 +0000 https://betterdev.blog/?p=5114 With some creativity, we can use Lambda Response Streaming to dynamically show status updates, like the progress of long-running processes. And with proper TypeScript types and generator functions, we can write clean, dynamic content streaming Lambda with composable payload enrichers that will impress your work colleagues (if they are into […]]]> https://betterdev.blog/lambda-response-streaming-dynamic-content/feed/ 0 Forcing Lambda Response Streaming to Flush Content https://betterdev.blog/lambda-response-streaming-flush-content/ https://betterdev.blog/lambda-response-streaming-flush-content/#comments Tue, 19 Sep 2023 14:04:21 +0000 https://betterdev.blog/?p=5045 Lambda Response Streaming allows sending incremental responses, but those response chunks can arrive long after you write them. They are buffered in a rather unexpected way, delaying all messages you stream. But there is a workaround to force the stream to flush. TL;DR Lambda does not send small payloads immediately, instead waiting […]]]> https://betterdev.blog/lambda-response-streaming-flush-content/feed/ 6 Building a CDK Construct Library: thoughts and tips https://betterdev.blog/building-cdk-construct-library/ https://betterdev.blog/building-cdk-construct-library/#respond Wed, 14 Jun 2023 16:34:23 +0000 https://betterdev.blog/?p=4967 I recently created a CDK library provisioning a CI/CD pipeline for serverless apps on AWS. Having finished the “regular” JS library, it took me a day to convert it to a “proper” CDK Construct library. Not long, and I learned a lot. Here are my thoughts and tips. What do I […]]]> https://betterdev.blog/building-cdk-construct-library/feed/ 0 AWS Lambda – Node.js vs. Python for serverless https://betterdev.blog/aws-lambda-runtime-nodejs-python/ https://betterdev.blog/aws-lambda-runtime-nodejs-python/#comments Wed, 15 Mar 2023 13:06:11 +0000 https://betterdev.blog/?p=4892 After tabs vs. spaces, vi vs. emacs, let’s fight over this: which is better, Node.js or Python for AWS Lambda and serverless in general? I have my opinion on this, and the fact I prefer TypeScript over Python makes me only slightly biased. AWS Lambda: Node.js and Python lead popularity From six […]]]> https://betterdev.blog/aws-lambda-runtime-nodejs-python/feed/ 5 Understanding Logical IDs in CDK and CloudFormation https://betterdev.blog/understanding-logical-ids-in-cdk-and-cloudformation/ https://betterdev.blog/understanding-logical-ids-in-cdk-and-cloudformation/#comments Tue, 17 Jan 2023 15:50:24 +0000 https://betterdev.blog/?p=4826 CDK generates Logical IDs used by the CloudFormation to track and identify resources. In this post, I’ll explain what Logical IDs are, how they’re generated, and why they’re important. Understanding this will help you avoid unexpected resource deletions and baffling “resource already exists” errors during deployment. CDK provides an abstraction […]]]> https://betterdev.blog/understanding-logical-ids-in-cdk-and-cloudformation/feed/ 2 Top 12 Serverless Announcements from re:Invent 2022 https://betterdev.blog/top-12-serverless-announcements-reinvent-2022/ https://betterdev.blog/top-12-serverless-announcements-reinvent-2022/#comments Tue, 06 Dec 2022 14:52:56 +0000 https://betterdev.blog/?p=4754 re:Invent 2022, the annual AWS conference in Las Vegas, is now behind us. I did not attend in person, but that gave me time to consolidate this list of top new serverless features while everyone else is sleeping off the intense 5-day conference. And I envy them just a little. […]]]> https://betterdev.blog/top-12-serverless-announcements-reinvent-2022/feed/ 1 How to pass AWS Certification exams https://betterdev.blog/how-to-pass-aws-certification-exams/ https://betterdev.blog/how-to-pass-aws-certification-exams/#comments Wed, 23 Nov 2022 16:44:08 +0000 https://betterdev.blog/?p=4689 I’ve never cared too much about certificates, apart from the SSL ones (haha). And yet I passed 7 AWS exams. Why? How to prepare? How to pass? How to pay only 50% for the exam? I answer all this and more in this post. After passing both Professional-level exams, the […]]]> https://betterdev.blog/how-to-pass-aws-certification-exams/feed/ 1 Running Serverless ML on AWS Lambda https://betterdev.blog/serverless-ml-on-aws-lambda/ https://betterdev.blog/serverless-ml-on-aws-lambda/#comments Thu, 10 Nov 2022 18:10:23 +0000 https://betterdev.blog/?p=4643 Yes, you can run Machine Learning models on serverless, directly with AWS Lambda. I know because I built and productionized such solutions. It’s not complicated, but there are a few things to be aware of. I explain them in this in-depth tutorial, where we build a serverless ML pipeline. As […]]]> https://betterdev.blog/serverless-ml-on-aws-lambda/feed/ 1 Least deployment privilege with CDK Bootstrap https://betterdev.blog/cdk-bootstrap-least-deployment-privilege/ https://betterdev.blog/cdk-bootstrap-least-deployment-privilege/#comments Tue, 30 Aug 2022 11:27:58 +0000 https://betterdev.blog/?p=4565 Security is not convenient. That’s probably why the CDK, by default, uses AdministratorAccess Policy to deploy resources. But we can easily change it and increase the security of our AWS account, following the least privilege principle with a minimal additional burden. Dangers of default CDK Bootstrap To start using the […]]]> https://betterdev.blog/cdk-bootstrap-least-deployment-privilege/feed/ 9