Learn faster by pushing limits

One technique I use to learn tools and techniques more quickly is pushing the limits of the tool or technique I’m trying to learn.

Here’s a coding example: In Lisp-based programming languages, there’s a meta-programming technique called macros. They’re like functions, but they operate on code. You’re only supposed to use macros when functions wouldn’t suffice.

I started abusing macros by writing them everywhere to learn when and when not to use them.

You can do the same thing for learning cloud infrastructure.

Let’s say I wanted to learn serverless. I would try to deploy all my infrastructure using serverless offerings—everything from static landing pages to CI Runners and databases. One thing I learned from this experience is that CI runners cannot be run in privileged mode on AWS Fargate.

Don’t do this in production, of course.


Master GitHub Actions with a Senior Infrastructure Engineer

As a senior staff infrastructure engineer, I share exclusive, behind-the-scenes insights that you won't find anywhere else. Get the strategies and techniques I've used to save companies $500k in CI costs and transform teams with GitOps best practices—delivered straight to your inbox.

Not sure yet? Check out the archive.

Unsubscribe at any time.