Posts

Showing posts from March, 2026

Separation of Duties: IaC vs AppCode

Stop writing code directly in your Lambda functions! I see this pattern a lot in AWS based environments that employ Lambda functions to create serverless environments and wanted to touch on something. I suppose this could be applied to GCP and Azure as well. In this post, I'm going to convey a concept you can take with you and apply in your organization to help with a separation of duties. I often take this for granted because I've been doing this pattern for so long that it's almost a no-brainer to me. IaC: Infrastructure as Code Often times, folks employ tools like AWS CDK, Terraform, SaltStack, Ansible, Puppet or Chef to manage infrastructure as code to describe how they want their environment to look or describe how they want to deploy the infrastructure. There's nothing wrong with this except when you have to embed code itself into the IaC or configuration. So the idea is to use your IaC to describe the infrastructure itself and not include code artifacts a...

Anatomy of a Framework

If you want a video version of this post, checkout my YouTube on this subject with visuals. In this post, I want to break down the anatomy of a framework and help you understand how you can use code to help you understand how software works on a high level without getting into the specifics of any particular language or existing framework. Top-Level Descriptors At the root of the project, you'll often find a bunch of files. These are often helper files that help you understand the project itself and usually from just the list of the files, you can quickly determine the coding language used and possibly any frameworks, patterns and dependencies used in this particular project. Let's break down some commonalities across projects: README Almost every codebase will have a README. This is the first file that people will see when viewing your project. It often contains starter information like what your project is, how to install and other optional info like how to contribute...