Top all-time · #807
Tenderlove Making
Personal blog · tenderlovemaking.comprogrammingsystems
Tenderlove Making is a personal blog at tenderlovemaking.com about programming and systems. Since 2008, 80 different Hacker News readers have linked it 107 times, most often “I am a puts debuggerer”. It is still writing: the last post was on 2026-10-19, and you can follow it by feed.
Sometimes recommended · 6 of 33 sampled comments recommend it?
Why HN links it
HN readers link Aaron Patterson's (tenderlove) Ruby and Rails blog, mostly for his 'I am a puts debugger' post on print debugging. Commenters also cite it for Rails threading and Nokogiri history.
- Recommended for · 6 comments
- Called him a 'fantastic writer' whose post is 'ruby gold' and 'a good post'; one keeps it bookmarked.
Summarised by Claude from a sample of 33 HN comments that link here. Each comment is marked recommending, critical or neutral (citing without judging); how this works.
Most-linked posts?
- I am a puts debuggerer9 people · 9 mentions · first linked 2016-02-06
- Why config.threadsafe should be enabled by default in Rails 45 people · 7 mentions · first linked 2012-06-18
- Fast Tokenizers with StringScanner (2023)3 people · 4 mentions · first linked 2023-09-03
- Tenderlove on Rails security exploits3 people · 3 mentions · first linked 2013-02-12
- Live Streaming in Rails 4.03 people · 3 mentions · first linked 2012-07-30
- Making ActiveRecord 2x faster3 people · 3 mentions · first linked 2014-02-19
- Predicting Test Failures3 people · 3 mentions · first linked 2015-02-14
- Can Bundler Be as Fast as Uv?3 people · 3 mentions · first linked 2025-12-29
- I am a puts debuggerer (2016)3 people · 3 mentions · first linked 2024-06-08
- Speeding up Ruby3 people · 3 mentions · first linked 2010-08-10
What Hacker News says?
I’m a debugger guy too, but print statements can be very powerful. I keep this bookmarked https://tenderlovemaking.com/2016/02/05/i-am-a-puts-debugger...
Comment linking /2016/02/05/i-am-a-puts-debuggerer/
on “The Grug Brained Developer (2022)”Submitted Apple Photos app corrupts images as a story · 1214 points
HN discussionPretty much it https://tenderlovemaking.com/2016/02/05/i-am-a-puts-debugger...
Comment linking /2016/02/05/i-am-a-puts-debuggerer/
on “Why does man print "gimme gimme gimme" at 00:30? (2017)”Submitted OpenAI bots knew about the RubyGems caching vulnerability as a story · 512 points
HN discussionThis post by Aaron Patterson made me realize it's fine to debug with print statements https://tenderlovemaking.com/2016/02/05/i-am-a-puts-debugger... In rare cases I pull out a real debugger, but most of the time the right prints in the right places are just as good. I can also iterate much faster because I'm not jumping between the code the the debugger, or pulling the debugger out of the loop it's stuck in.
Comment linking /2016/02/05/i-am-a-puts-debuggerer.html
on ““Coding is basically just ifs and for loops.””Submitted Reducing Memory Usage in Ruby as a story · 222 points
HN discussionhttps://tenderlovemaking.com/2016/02/05/i-am-a-puts-debugger...
Comment linking /2016/02/05/i-am-a-puts-debuggerer.html
on “Ruby vs. Python comes down to the for loop”Submitted Speeding Up Ruby with Shared Strings as a story · 194 points
HN discussion> Rails isn't multithreaded, so what do you propose they do? Rails does have config.threadsafe!, and it will be on by default in Rails 4. http://tenderlovemaking.com/2012/06/18/removing-config-threa...
Comment linking /2012/06/18/removing-config-threadsafe.html
on “Heroku - Bamboo Routing Performance”Submitted Making ActiveRecord 2x faster as a story · 158 points
HN discussion> On the Cedar stack, the root cause is the fact that Cedar is optimized for concurrent request routing, while some frameworks, like Rails, are not concurrent in their default configurations. First of all, Ruby doesn't exactly block on I/O [1], so there's that. Secondly, while Rails 3 has config.threadsafe! turned off, Rails 4 will have it turned on. [2] 1: https://github.com/tenderlove/fibur#synopsis 2: http://tend…
Comment linking /2012/06/18/removing-config-threadsafe.html
on “Heroku Blog: Routing Performance Update”Submitted I am a puts debuggerer as a story · 152 points
HN discussionAaron Patterson (aka tenderlove), Ruby and Ruby on Rails contributor, has a good post titled "YAGNI methods are killing me" where he points out the problems when inheriting from builtin classes such as String or Hash. https://tenderlovemaking.com/2014/06/02/yagni-methods-are-ki...
Comment linking /2014/06/02/yagni-methods-are-killing-me.html
on “Inheritance versus Composition”Submitted Live Streaming in Rails 4.0 as a story · 141 points
HN discussion> About 14 months ago, it caused some of the most serious vulnerabilities in the Ruby on Rails world ever: http://tenderlovemaking.com/2013/02/06/yaml-f7u12.html Live by eval, die by eval. But more seriously, nobody is forcing a Rust YAML library to support arbitrary structure deserialization (or maybe as an optional switch). I don't think you'd want such a switch on in a build system configuration file.
Comment linking /2013/02/06/yaml-f7u12.html
on “Cargo, Rust's Package Manager”Submitted Visualizing Your Ruby Heap as a story · 132 points
HN discussion> I don't know about the security vulnerabilities, About 14 months ago, it caused some of the most serious vulnerabilities in the Ruby on Rails world ever: http://tenderlovemaking.com/2013/02/06/yaml-f7u12.html > why not just use JSON? JSON is not really human-editable. Those quotes and commas, ugh! Also, JSON lacks comments. The vulnerabilities in YAML (which is a superset of JSON, by the way) point at why YAML and…
Comment linking /2013/02/06/yaml-f7u12.html
on “Cargo, Rust's Package Manager”Submitted Eliminating Intermediate Array Allocations as a story · 70 points
HN discussionhttps://tenderlovemaking.com/2016/02/05/i-am-a-puts-debugger...
Comment linking /2016/02/05/i-am-a-puts-debuggerer.html
on “Parody O'Reilly book covers”Submitted I suck at web design, so I made a contest to design rubycommitters.org. as a story · 55 points
HN discussion> Named arguments yes, though it's basically an optional argument hash. AFAIK, you can't do required named arguments without weird hacks, or specifically checking the arguments. For example: irb(main):007:0> def foo(bar: bar, baz: Object.new); [bar, baz]; end => nil irb(main):008:0> foo(bar: 1) => [1, #<Object:0x007fcaa40db4e0>] irb(main):009:0> foo(baz: 1) NameError: undefined local variable or method `bar' for mai…
Comment linking /2012/09/07/protected-methods-and-ruby-2-0.html
on “Ruby 2.0.0 feature freeze”Submitted Fast Tokenizers with StringScanner (2023) as a story · 51 points
HN discussionFor those unaware: Aaron Patterson, aka tenderlove, is an influential and longstanding personality in the ruby community who’s made many significant contributions to Ruby and Ruby on Rails over the years. He’s also a fantastic writer with a quirky style, highly recommend perusing his technical writing: http://tenderlovemaking.com/
Comment linking /
on “Tenderjit – A JIT for Ruby Written in Ruby”Submitted I put rails docs on my Internet pad. Thought I would share as a story · 35 points
HN discussionhttp://tenderlovemaking.com/2012/06/18/removing-config-threa...
Comment linking /2012/06/18/removing-config-threadsafe.html
on “Rails 4.1.0 beta1 released”Submitted Me And Facebook Open Academy as a story · 28 points
HN discussionTenderlove has a blog post about SSEs using Puma. http://tenderlovemaking.com/2012/07/30/is-it-live.html
Comment linking /2012/07/30/is-it-live.html
on “Puma, a fast concurrent web server for Ruby”Submitted Predicting Test Failures as a story · 21 points
HN discussion@tenderlove was experimenting with this idea for ruby/rails: http://tenderlovemaking.com/2015/02/13/predicting-test-failu... Here's hoping someone will make a gem for this stuff.
Comment linking /2015/02/13/predicting-test-failues.html
on “Notes from Facebook's Developer Infrastructure at Scale F8 Talk”Submitted Tenderlove on Rails security exploits as a story · 20 points
HN discussion