The Curious Engineer

All blogs / Ruby / Rails

Sam Saffron

samsaffron.com

Writing about software, performance, Ruby, Discourse, and technology.

Ruby / RailsPerformance / optimizationSoftware / engineering practiceDatabasesEngineering blogs

Posts
86 from 16 Feb 2007 to 23 Nov 2025
Posting
now and then (1 in the last year)
Kind
personal blog
Feed
https://samsaffron.com/feed.xml

2025 2

  1. The age of personalized software
  2. Your vibe coded slop PR is not welcome

2024 1

  1. Claude 3 Opus - First impressions

2019 5

  1. Debugging hidden memory leaks in Ruby
  2. Tests that sometimes fail - flaky test tips
  3. My i3 window manager setup
  4. Why I stuck with Windows for 6 years while developing Discourse
  5. Logster and our error logging strategy at Discourse

2018 7

  1. Finding where STDOUT/STDERR debug messages are coming from
  2. Ruby's external malloc problem
  3. An analysis of memory bloat in Active Record 5.2
  4. Managing db schema changes without downtime
  5. Reducing String duplication in Ruby
  6. Instrumenting Rails with Prometheus
  7. Debugging 100% CPU usage in production Ruby on Rails systems

2017 1

  1. Fastest way to profile a method in Ruby

2016 1

  1. The current state of Brotli compression

2015 4

  1. WebSockets, caution required!
  2. Fixing Discourse performance regressions
  3. Debugging memory leaks in Ruby
  4. Announcing rubybench.org

2014 3

  1. Speeding up Rails 4.2
  2. Ruby 2.1 Garbage Collection: ready for production
  3. Vintage JavaScript begone

2013 9

  1. Call to Action: Long running Ruby benchmark
  2. Commenting powered by Discourse
  3. Demystifying the Ruby GC
  4. Live restarts of a supervised unicorn process
  5. Discourse in a Docker container
  6. Discourse as my blogging platform
  7. Eliminating my trivial inconveniences building Discourse
  8. Flame graphs in Ruby MiniProfiler
  9. Do you smoke test?

2012 9

  1. Mobile mapping is not a cartographic problem, it is a search problem
  2. MiniProfiler Ruby Edition
  3. Leaving Stack Exchange
  4. Testing 3 million hyperlinks, lessons learned
  5. Sam's ultimate web performance tool and resource list
  6. Why upgrading your Linux Kernel will make your customers much happier
  7. MiniProfiler 2.0, almost out of the gate
  8. Stop paying your jQuery tax
  9. That annoying INSERT problem, getting data into the DB

2011 10

  1. In managed code we trust, our recent battles with the .NET Garbage Collector
  2. Optimizing ASP.NET MVC3 Routing
  3. Spam, bacon, sausage and blog spam: a JavaScript approach
  4. Extending the ASP.NET error page (show me the SQL edition)
  5. Porting LINQ-2-SQL to Dapper for great justice
  6. Oh view where art thou: finding views in ASP.NET MVC3
  7. Automatically instrumenting an ASP.NET MVC3 app
  8. Profiling your website like a true Ninja
  9. A day in the life of a slow page at Stack Overflow
  10. How I learned to stop worrying and write my own ORM

2010 1

  1. Interesting answers on Stack Overflow from July

2009 11

  1. Diagnosing runaway CPU in a .Net production application
  2. Got Flare?
  3. Behaviour driven design using rspec IronRuby and C#
  4. Our new startup, Media Browser
  5. Will program for food, the future of Media Browser
  6. Upcoming features for Media Browser
  7. Media Browser source code license changes
  8. Refactoring media browser - entity resolution
  9. Simpler debugging of Vista Media Center plugins
  10. Slow response-time is usability's alcoholism
  11. My server just died, long live my new VPS

2008 13

  1. Deadlocked
  2. SSH Jumphosts tunneling and other curiosities
  3. Video Browser: Past, Present and Future
  4. Speed up your feed generation in Rails
  5. You should be very careful when using ActiveRecord eager loading
  6. I fixed up Video Browser's sort by date
  7. Genre and runtime sort options for Video Browser
  8. A cleaner way to iterate through Enumerable lists in Prototype
  9. Redo your migrations in Rails and keep your data
  10. A few new features for Video Browser
  11. Getting started with Ruby On Rails on Windows
  12. Why the hell write yet another blog engine?
  13. Hello World

2007 9

  1. A new version of Video Browser for Vista MCE
  2. Goodbye Altiris
  3. Video Browser for Vista MCE
  4. IDisposable in Ruby
  5. Insert or Update pattern for Sql Server
  6. Excluding changes to AssemblyInfo.cs from Subversion
  7. .Net memory profiler 3.0 just released
  8. Keep it simple
  9. Embedded .NET database shootout