Technical Writing
Over the years I’ve written developer education content for some of the internet’s best programming blogs.
I did this writing for my one-person agency SyntaxPen, but I’ve pushed pause on new work.
My clients have included Docker, CircleCI, Judoscale, Honeybadger, Meta, SemamphoreCI, and AppSignal. My work has been featured in popular tech newsletters, including Ruby Weekly and DevOps Weekly.
Here are samples of my work across the internet.
Infrastructure
I have a special interest in infrastructure, so some of my writing focuses on things like Terraform, autoscaling, and platforms.
- Configure AWS ECS with Terraform
- Vertical vs Horizontal Scaling
- How to Use Azure Blob Storage with Ruby on Rails
- A Developers’ Guide to Terraform
- Self-hosting multiple apps with Kamal 2
- How to Reduce Heroku Costs
- How ECS Autoscaling Works
- Kamal vs PaaS
- Deciding Between Heroku Alternatives
- AWS Lambda Functions with Ruby
- Containerizing an Existing Rails Application
- Avoiding PaaS Lock-in
Ruby on Rails
Much of my day-to-day work is Ruby on Rails, and I’ve written tons of detailed guides on Rails topics.
- How Solid Queue Works Under the Hood
- How to Use Solid Cache in Rails
- How to Fix Tricky Sidekiq Memory Issues
- Running Solid Queue in Production Rails Apps
- Building Ruby on Rails Engines
- Scheduled Jobs with Sidekiq
- Is No-PaaS Really a Good Idea for Rails?
- New in Rails 8
- New in Ruby 3.4
- A Practical GitHub Actions Pipeline eEample with Rails
- API versioning in Ruby on Rails
- How to Build a Rails API with Rate Limiting
- A Practical Guide to Web Scraping with Ruby
- Adding Views to an API-only Rails App
- How to Deploy a Rails App to Render
- Connecting a Rails App to AWS S3 for File Storage
- Sell a One-Time Purchase in Rails with Stripe
- FactoryBot for Rails testing
- How the Rails Params Hash Works
- How to Use Enums in Rails
- Using Feature Flags in Rails
- Using TailwindCSS with Rails
- Exploring the Sorbet Ruby Compiler
- How to Use Rubocop for Your Team’s Apps
- How to Use Sorbet to Type Check Ruby
- An Introduction to Sidekiq for Ruby on Rails
- How to Delegate Methods in Ruby
Python
- Python Web Frameworks
- Hosting Python Web Apps
- Choosing a Python Task Queue
- Scaling Python Task Queues
- How Does Caching Work in Django
Misc topics
Some of my writing doesn’t easily fit into a category.
- How to Build an API with Go and Gin
- Go Web Frameworks
- Functional vs Non-Functional Testing
- What Next.js Has to Offer React Developers
- Choosing a Node Framework
Product-Focused Topics
Once in a while I write something for a particular developer tool.