36. What’s new for JavaScript developers on AWS?
AWS Bites
There are lots of options for programming languages on AWS these days but one of the most popular ones remains JavaScript. In this episode of AWS Bites we discuss what it’s like to develop with JavaScript, Node.js and TypeScript on AWS and what’s new in this field. We explore why you would choose JavaScript and what are the trade-offs that come with this choice. We present some of the main features of the all-new AWS SDK v3 for JavaScript. We discuss runtime support and tooling for AWS Lambda and finally some interesting developments in the JavaScript ecosystem for the cloud and AWS.
00:00 Intro 00:30 Our commitment to the JavaScript & Node.js ecosystem 01:30 Why we should consider JavaScript on AWS 02:25 The new AWS SDK for JavaScript (v3) 03:00 The command pattern 04:10 Idiomatic Javascript and Node.js with the AWS SDK: Streams 05:55 Idiomatic Javascript and Node.js with the AWS SDK: Async Iterators 07:10 Built in support for Mocking in the AWS SDK 08:00 Middleware support for request/response enrichment in the AWS SDK 09:30 Using JavaScript with Serverless and Lambda 10:10 ESM Modules in Lambda with Node.js 14 11:50 The Middy framework 14:32 The Lambda Power tools library for TypeScript 15:30 JavaScript or TypeScript? 17:40 The pros and cons of bundling Lambda code 18:46 The Serverless Framework 19:50 CDK (Cloud Development Kit) 20:34 ZX: scripting language built on top of JavaScript and Node.js (by Google) 23:13 Wrap up
In this episode, we mentioned the following resources:
- Our previous episode on What language to use for lambda: https://www.youtube.com/watch?v=S0tpReRa6m4
- AI as a Service by Eoin Shanaghy and Peter Elger (book): https://www.manning.com/books/ai-as-a-service
- Node.js Design Patterns by Mario Casciaro and Luciano Mammino (book): https://www.nodejsdesignpatterns.com/
- AWS SDK for JavaScript v3 high level concepts (including command based model): https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/index.html#high-level-concepts
- AWS SDK for JavaScript v3 paginators using Async Iterators: https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/index.html#paginators
- Mocking support for the AWS SDK for JavaScript v3: https://aws.amazon.com/blogs/developer/mocking-modular-aws-sdk-for-javascript-v3-in-unit-tests/
- Various interesting benchmarks on different Lambda runtimes: https://github.com/theam/aws-lambda-benchmark - https://filia-aleks.medium.com/benchmarking-all-aws-lambda-runtimes-in-2021-cold-start-part-1-e4146fe89385 - https://www.simform.com/blog/aws-lambda-performance/
- Support for ESM modules in AWS Lambda (Node.js 14): https://aws.amazon.com/about-aws/whats-new/2022/01/aws-lambda-es-modules-top-level-await-node-js-14/
- The Middy Framework (middleware pattern for AWS Lambda): https://middy.js.org/
- Lambda Power Tools library for TypeScript: https://awslabs.github.io/aws-lambda-powertools-typescript/
- Yan Cui’s article on performance improvements with bundling: https://lumigo.io/blog/3-major-ways-to-improve-aws-lambda-performance/
- ZX project (scripting with JavaScript) by Google: https://github.com/google/zx
You can listen to AWS Bites wherever you get your podcasts:
- Apple Podcasts: https://podcasts.apple.com/us/podcast/aws-bites/id1585489017
- Spotify: https://open.spotify.com/show/3Lh7PzqBFV6yt5WsTAmO5q
- Google: https://podcasts.google.com/feed/aHR0cHM6Ly9hbmNob3IuZm0vcy82YTMzMTJhMC9wb2RjYXN0L3Jzcw==
- Breaker: https://www.breaker.audio/aws-bites
- RSS: https://anchor.fm/s/6a3312a0/podcast/rss
Do you have any AWS questions you would like us to address? Leave a comment here or connect with us on Twitter:
#aws #javascript #nodejs ... https://www.youtube.com/watch?v=KXBPMvPhHCo
188714203 Bytes