Top all-time · #1324
Sam Saffron
Personal blog · samsaffron.com/archiveprogrammingsystems
Sam Saffron's personal blog at samsaffron.com covers programming and systems. Since 2009, 51 different Hacker News readers have linked it 83 times, most often “How I learned to stop worrying and write my own ORM”. It is still writing: the last post was on 2026-09-17, and you can follow it by feed.
Too few sampled comments (21) to say how often HN recommends it.?
Why HN links it
HN readers link Sam Saffron's blog for Stack Overflow performance work: GC behaviour, Ruby and Rails speed, profiling, and the Dapper micro-ORM.
Summarised by Claude from a sample of 21 HN comments that link here. Each comment is marked recommending, critical or neutral (citing without judging); how this works.
Sam Saffron's Blog
Most-linked posts?
- How I learned to stop worrying and write my own ORM7 people · 7 mentions · first linked 2011-03-30
- WebSockets: caution required4 people · 4 mentions · first linked 2015-12-29
- Debugging hidden memory leaks in Ruby3 people · 4 mentions · first linked 2019-10-15
- An analysis of memory bloat in Active Record 5.23 people · 3 mentions · first linked 2018-06-01
- Stop Paying Your jQuery Tax3 people · 3 mentions · first linked 2012-02-17
- On Stack Overflow's recent battles with the .NET Garbage Collector3 people · 3 mentions · first linked 2011-10-28
- Ruby 2.1 Garbage Collection: ready for production3 people · 3 mentions · first linked 2014-04-08
- Call to Action: long running Ruby benchmark2 people · 3 mentions · first linked 2013-12-11
- Stack Overflow profiler, revamped and open sourced 2 people · 3 mentions · first linked 2011-06-09
- Announcing rubybench.org2 people · 2 mentions · first linked 2015-01-08
What Hacker News says?
For our use even assembly does not "rip Ruby apart.", looking at our 2 most common pages, topic list page and topic page, 30-50% of the time is still spent in SQL. Ruby 2.0 bring decent launch times to Rails (important for dev) due to the fixes falcon committed. Overall, the execution engine itself is pretty sweet and we have incredible visibility into the inner workings with flame graphs http://samsaffron.com/archi…
Comment linking /archive/2013/03/19/flame-graphs-in-ruby-miniprofiler
on “Why Ruby?”Submitted Stop Paying Your jQuery Tax as a story · 357 points
HN discussionYou can also take a look at Rack MiniProfiler http://samsaffron.com/archive/2012/07/12/miniprofiler-ruby-e...
Comment linking /archive/2012/07/12/miniprofiler-ruby-edition
on “How we keep GitHub fast”Submitted We need a clearer framework for AI-assisted contributions to open source as a story · 300 points
HN discussion> As for GC, it would be nice to have good real time GCs in runtimes. After decades of GC research, I think the conclusion is, "Yeah, that would be nice." Current state of the art gives us some very nice GCs that penalize either throughput or predictability. One of my favorite stories about GC is here: http://samsaffron.com/archive/2011/10/28/in-managed-code-we-...
Comment linking /archive/2011/10/28/in-managed-code-we-trust-our-recent-battles-with-the-net-garbage-collector
on “Why Python, Ruby, and Javascript are Slow”Submitted Managing database schema changes without downtime as a story · 267 points
HN discussionAny GC that walks the graph, and isn't mostly concurrent. You will know when the graph becomes complex enough, because thereafter the GC will not let you ignore it. In my experience, as few as several hundred thousand objects can become a problem. Imagine trying to write a responsive 3D modeling app with vertices, edges, and faces all bidirectionally pointing to each other. You the programmer would think very carefu…
Comment linking /archive/2011/10/28/in-managed-code-we-trust-our-recent-battles-with-the-net-garbage-collector
on “Sub-millisecond GC pauses in Go 1.8”Submitted Why upgrading your Linux Kernel will make your customers much happier as a story · 260 points
HN discussionI think Brotli is getting there, with support in Firefox and Chrome so far. https://samsaffron.com/archive/2016/06/15/the-current-state-...
Comment linking /archive/2016/06/15/the-current-state-of-brotli-compression
on “Apple Open-Sources its Compression Algorithm LZFSE”Submitted Tests that sometimes fail as a story · 217 points
HN discussion> It's the Rails convenience stuff which slows things down massively. Yeah no kidding.. https://samsaffron.com/archive/2018/06/01/an-analysis-of-mem...
Comment linking /archive/2018/06/01/an-analysis-of-memory-bloat-in-active-record-5-2
on “Ruby 2.6.0-preview2 released with JIT”Submitted WebSockets: caution required as a story · 216 points
HN discussionMany months into this experiment I barely get 2 spam comments a month on my blog, I totally respect reCAPTCHA, but demanding JavaScript, doing some minimal tests and perhaps an amount of computation (1 sec on iPad) is the FIRST thing we should be doing http://samsaffron.com/archive/2011/10/04/Spam+bacon+sausage+...
Comment linking /archive/2011/10/04/Spam+bacon+sausage+and+blog+spam+a+JavaScript+approach
on “Captchas Are Becoming Ridiculous”Submitted Testing 3 million hyperlinks, lessons learned as a story · 206 points
HN discussionTry http://m.twitter.com , it's the dressed-down mobile version of Twitter. It doesn't have all the features, but easily makes up for that by the fact that you can actually click around as much as you like without your browser getting all slumpy from loading huge pages or doing javascript. You'd expect caching to help, but there's a lot of truth in the jQuery tax article[1]: even if you got the code cached, executin…
Comment linking /archive/2012/02/17/stop-paying-your-jquery-tax
on “A single tweet page is 2.0 MB”Submitted Ruby 2.1 Garbage Collection: ready for production as a story · 204 points
HN discussionhttp://samsaffron.com/archive/2012/02/17/stop-paying-your-jq... Apparently Stack Overflow sees similar numbers.
Comment linking /archive/2012/02/17/stop-paying-your-jquery-tax
on “A single tweet page is 2.0 MB”Submitted Speeding up Rails 4.2 as a story · 197 points
HN discussionOn the topic of Brotli, don't forget - It is available today on close to 50% or web browsers - Vast majority of CDNs block it today I wrote about it here: https://samsaffron.com/archive/2016/06/15/the-current-state-...
Comment linking /archive/2016/06/15/the-current-state-of-brotli-compression
on “Lossless compression with Brotli”Submitted On Stack Overflow's recent battles with the .NET Garbage Collector as a story · 183 points
HN discussionTry Dapper for a simple .NET ORM. We created and use it for Stack Overflow. https://code.google.com/p/dapper-dot-net/ Here's the original post describing how we made it: http://samsaffron.com/archive/2011/03/30/How+I+learned+to+st...
Comment linking /archive/2011/03/30/How+I+learned+to+stop+worrying+and+write+my+own+ORM
on “Introducing ASP.NET vNext”Submitted Debugging memory leaks in Ruby as a story · 135 points
HN discussion1. I don't quite understand why people love Rust. I have nothing against it but I just don't quite get why the love . I viewed it as Modern C++ with Memory Management done right from Engineering perspective and elegant syntax with package management done right from the beginning. And may be just my circle or reading list, many Rubyist jumped to Rust, and more often after trying a few times and clicked, they felt in…
Comment linking /archive/2019/03/31/why-i-stuck-with-windows-for-6-years-while-developing-discourse
on “2019 Stack Overflow Developer Survey Results”Submitted Why I stuck with Windows for 6 years while developing Discourse as a story · 100 points
HN discussionI found http://samsaffron.com/archive/2014/12/01/speeding-up-rails-4... (from the post's comments) interesting. It looks like there were initially quite a few performance regressions in the new release. Adequate Record looks great for rails scaffolds, but (at this stage) doesn't look like it will very useful for production apps that probably have more complex queries. For example, it stops working if your query has…
Comment linking /archive/2014/12/01/speeding-up-rails-4-2
on “Rails 4.2 released”Submitted Debugging hidden memory leaks in Ruby as a story · 95 points
HN discussionSam has also blogged about this for Ruby specifically: http://samsaffron.com/archive/2013/12/11/call-to-action-long...
Comment linking /archive/2013/12/11/call-to-action-long-running-ruby-benchmark
on “Speeding up Rails 4.2”Submitted Eliminating my trivial inconveniences building Discourse as a story · 75 points
HN discussionSam Saffron has great write-ups. His article on Ruby 2.1 and garbage collection fine-tuning [1] is a must-read [1] http://samsaffron.com/archive/2014/04/08/ruby-2-1-garbage-co...
Comment linking /archive/2014/04/08/ruby-2-1-garbage-collection-ready-for-production
on “Speeding up Rails 4.2”Submitted Interesting answers on Stack Overflow from July as a story · 46 points
HN discussion