Cloud Experiments: Building a Load-Balanced ECS App on Fargate using Pattern Constructs
The source code for this article can be found here.
Welcome to another cloud experiment! The idea behind these hands-on tutorials is to provide practical experience building cloud-native solutions of different sizes using AWS services and CDK. We’ll focus on developing expertise in Infrastructure as Code, AWS services, and cloud architecture...
Cloud Experiments: Building a Load-Balanced ECS App on Fargate
The source code for this article can be found here.
Welcome to another cloud experiment! The idea behind these hands-on tutorials is to provide practical experience building cloud-native solutions of different sizes using AWS services and CDK. We’ll focus on developing expertise in Infrastructure as Code, AWS services, and cloud architecture...
Cloud Experiments: Scaling Lambda Functions Without Killing Your Database
The source code for this article can be found here.
Welcome to another cloud experiment! The idea behind these hands-on tutorials is to provide practical experience building cloud-native solutions of different sizes using AWS services and CDK. We’ll focus on developing expertise in Infrastructure as Code, AWS services, and cloud architecture...
One Hundred
This is article number 100.
I started this blog around 2019—built it up in March or April, but didn’t start posting until May. I posted my welcome article on May 6th, followed the next day by the first post in my S.O.L.I.D series (which I only now realize I posted as D.S.O.L.I—completely out of order).
I think I read somewhere that having a bl...
Cloud Experiments: Building a Serverless Mixed Pipeline for Processing and Moderating PDF Files
The source code for this article can be found here.
Welcome to another cloud experiment! The idea behind these hands-on tutorials is to provide practical experience building cloud-native solutions of different sizes using AWS services and CDK. We’ll focus on developing expertise in Infrastructure as Code, AWS services, and cloud architecture...
Cloud Experiments: Building an Automated Cost-Saving Solution for EC2 Instances
The source code for this article can be found here.
Welcome to another cloud experiment! The idea behind these hands-on tutorials is to provide practical experience building cloud-native solutions of different sizes using AWS services and CDK. We’ll focus on developing expertise in Infrastructure as Code, AWS services, and cloud architecture...
Cloud Experiments: Building Flexible API Authorization with Lambda Authorizers
The source code for this article can be found here.
Welcome to another cloud experiment! The idea behind these hands-on tutorials is to provide practical experience building cloud-native solutions of different sizes using AWS services and CDK. We’ll focus on developing expertise in Infrastructure as Code, AWS services, and cloud architecture...
Cloud Experiments Repository Update
Quick announcement.
Until recently, I’ve been adding and sharing the labs in the Cloud Experiments series using the blog’s main code samples repository. There’s a bunch of other interesting stuff there—like the Pandas labs and the code for the deep learning series—so it’s still worth checking out from time to time.
In less than two weeks, I’ll...
Testing Infrastructure Code vs. Getting Constantly Nagged About It
I recently found a nice tool that may make your life easier when writing infrastructure as code using CDK.
I Wanted Tests
I noticed that the cdk init command creates a default test folder, and started reading about how to write effective tests for your IaC.
It’s quite easy actually, and after you get the hang of it, it can be very entertainin...
Cloud Experiments: Building a Nintendo Switch 2 Stock Alert System with AWS CDK
The source code for this article can be found here.
Welcome to another cloud experiment! The idea behind these hands-on tutorials is to provide practical experience building cloud-native solutions of different sizes using AWS services and CDK. We’ll focus on developing expertise in Infrastructure as Code, AWS services, and cloud architecture...
Using the TypeScript Spread Operator to Clean Up CDK Code
I don’t have much experience with TypeScript—actually, I’d never touched the language until recently when I started writing Infrastructure as Code using CDK. Today I learned a useful trick that can help clean up sections of your stack by putting shared configuration in an object and then using the spread operator to merge those settings into the...
Cloud Experiments: Building a Serverless Moderation Workflow
The source code for this article can be found here.
Welcome to another cloud experiment! The idea behind these hands-on tutorials is to provide practical experience building cloud-native solutions of different sizes using AWS services and CDK. We’ll focus on developing expertise in Infrastructure as Code, AWS services, and cloud architecture...
Cloud Experiments: Building a Serverless PDF Processing Pipeline
The source code for this article can be found here.
Welcome to another cloud experiment! The idea behind these hands-on tutorials is to provide practical experience building cloud-native solutions of different sizes using AWS services and CDK. We’ll focus on developing expertise in Infrastructure as Code, AWS services, and cloud architecture...
Understanding S3 Bucket Deletion in CDK
If you’ve been following this blog, you may have noticed that I consistently include two specific parameters when creating S3 buckets:
const someBucket = new s3.Bucket(this, "someBucket", {
// ... more bucket properties, sometimes none
removalPolicy: cdk.RemovalPolicy.DESTROY,
autoDeleteObjects: true,
});
These parameters work together ...
Creating RDS Proxy for Existing Database Instances in AWS CDK
I recently worked on a project that required creating and attaching an RDS Proxy to an already existing RDS instance running PostgreSQL. It seems easy enough, but I kept getting a validation error that took some time to resolve.
What I Was Doing (This Doesn’t Work)
My first attempt used the standard fromLookup function to reference an existing...
Adding Python Dependencies to AWS Lambda Functions with CDK
Lambda functions are typically executed in environments created from the default runtimes provided by AWS (such as python3.13 or ruby3.4).
These runtimes come pre-loaded with many popular modules, like boto3 (the Python AWS SDK), so you often don’t need to install additional dependencies for routine tasks.
However, you may eventually need a mo...
Using AWS CDK v2 Imports in Typescript
Since v2, the AWS CDK has consolidated the stable parts of the Construct Library into a single package, aws-cdk-lib. This means you no longer need to install and reference numerous individual packages for different AWS services—you can simply import them from the base package.
In a previous article, I shared a stack for deploying a static Jekyl...
Migrating My Blog to AWS: A Journey from Ghost to Jekyll
I’ve been putting off this migration for a while, but I finally sat down and moved my blog to AWS—and it was far easier than I expected!
For years, I’ve run and hosted BrainsToBytes using Ghost, which despite being excellent software (I do recommend it), has become harder to justify as time went on. This is mainly for two reasons:
Host...
103 post articles, 6 pages.