AWS Digest
Tags: aws, techlead, serverless, softwaredevelopment
Published: 2022-09-19 15:37:59

---
title: AWS Digest
published: true
series: AWS Digest - A curated list of last week(s) interesting article and resources
description: List of interesting articles and resources I read in the past week(s)
tags: #aws, #techlead, #serverless, #softwaredevelopment
cover_image: https://dev-to-uploads.s3.amazonaws.com/uploads/articles/7mz35amlh2s3rd6op1bf.png
---

As developer, architects or tech leads we are exposed to tons of tutorials, articles and announcements. 
We have a lot of information to intake almost daily.
Digesting all this input can be overwhelming and often we fear we are missing out something or ( and ) end up with endless TO-READ Lists.

![Digest - meaning](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/0k8libbm75s2n4p43uvo.png)

I have been keeping a learning diary and other sorts of documents where I list interesting resources for future reference, for myself and my team for a long time. 

I just decided to make this list public, without any commitments of being extensive, uptodate or published at regular interval.  
Just classifying and listing stuff I read and found useful.
Hopefully it's useful for you too.


----

### Function URLS and Puppeteer
A nice and handy example of using puppeteer in a lambda and trigger that lambda with lambda function urls ( instead of usual, more expensive API Gateway API)
[Website to PDF with FunctionURLs](https://jobinbasani.com/2022/05/03/website-to-pdf-using-aws-lambda-function-urls/)


### New intrinsic functions for AWS Step Functions:

One of the things that put me off with Step Functions in the past ( although I used - and loved - them in a couple of projects ) was that **manipulating the data through different steps was vary hard if not impossible**, and that forced me either to have such manipulation within a specific lambda (increasing number of lambdas, execution, latency, costs and overall project complexity) or to put that manipulation within another lambda (that was not really in charge of it - single responsibility anyone?). 
With intrinsic functions we can reduce states, transitions (and usage of other AWS services) and directly perform data manipulation on input/output of each state.

[AWS Announcement of Intrinsic Functions](https://aws.amazon.com/blogs/compute/introducing-new-intrinsic-functions-for-aws-step-functions/)


### Filters for Lambda Event Sources added to CDK
I wrote a post some time ago about [Lambda Source Event Filters](https://dev.to/dvddpl/filter-lambda-events-from-dynamodb-stream-with-cdk-1gnm) and the fact that such a cool feature was not yet available to the CDK. 
Finally the functionality [has been added to CDK](https://github.com/aws/aws-cdk/pull/21917) and no more  **CloudFormation Escape Hatches** has to be used! 

### CDK Watch
Here it's almost embarrassing... Ok in our projects we sometime use Serverless and sometimes CDK, so I wasn't super uptodate, but this announcements is almost one year old.
Anyway,  one of the things that annoyed me the most when deploying with CDK, was that if in my stack I had 10 lambdas, and I just changed a couple of lines in one, the deploy process had to re-bundle the lambdas and redeploy the entire cloud formation template.  On top of this, if something was going wrong I had to wait for rollbacks - which on my branch/test environment - was not necessary at all.

This is not the case anymore, thanks to `cdk watch` and `cdk --hotswap --no-rollback` flags. 
> `cdk watch` makes development faster by monitoring your code and assets for changes and automatically performing the optimal form of deployment every time a file change is detected.

[AWS Announcement of CDK Watch](https://aws.amazon.com/blogs/developer/increasing-development-speed-with-cdk-watch/)

---
Photo by <a href="https://unsplash.com/es/@utsavsrestha?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Utsav Srestha</a> on <a href="https://unsplash.com/s/photos/newspapers?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText">Unsplash</a>