Blogs


The Life-Changing Magic of Tidying Ruby Object Allocations
Your app is slow. It does not spark joy. This post will use memory allocation profiling tools to discover performance hotspots, even when they're coming from inside a library. We will use this technique with a real-world application to identify a ...

Importing data quickly in Ruby on Rails applications
Application frameworks often provide their own out of the box services for interacting with databases. This works great when processing data in a onesie-twosie fashion, but what about large batches of data?I ran into this problem over a decade ago...



These Rails apps are overpacking their JavaScript bundles
You might think dividing your JavaScript into multiple bundles will help improve page load performance. When done incorrectly with Webpacker, it's possible to make things worse.This mistake appears relatively common. As I'll share in this post, I'...

Performance-M Dynos Considered Harmful to Your Wallet
When you're on a cloud hosting provider, there are often several options provided for the size and type of server you can rent. For example, AWS has the m and c series instance types, Heroku has 4 or 5 different dyno types and sizes, and Google Cl...

OWASP/railsgoat: A vulnerable version of Rails that follows the OWASP Top 10
RailsGoat is a vulnerable version of the Ruby on Rails Framework from versions 3 to 6. It includes vulnerabilities from the OWASP Top 10, as well as some "extras" that the initial project contributors felt worthwhile to share. This project is desi...

How many Heroku dynos do you need, and which size
A few important supplemental notes to the comparison chart above:Monthly dyno cost from top to bottom: $0 (Free), $7 (Hobby), $25 (Standard-1x), $50 (Standard-2x), $250 (Perf-M), $500 (Perf-L).Free, Hobby, and Standard-1x dynos are identical perfo...