J
James Golick
jamesgolick.com · Personal blog · on HN since 2007
James Golick was a software developer who wrote about Ruby on Rails, scaling, memory allocation and database design.
What HN saysHN links it for posts on MRI method caches, Rails design and service objects; commenters cite his scaling talks and refer to him as the late James Golick.
40HN people shared it
10linked it in comments
37stories submitted
1.1Kstory points
2 years agolast shared
2007people per year2026
Most-shared posts
- 1Crazy, Heretical, and Awesome: The Way I Write Rails Apps5 people · 73 points · first shared 2010 · 36 comments on HN
- 2How tcmalloc Works4 people · 85 points · first shared 2013 · 12 comments on HN
- 3MRI's Method Caches2 people · 121 points · first shared 2013 · 15 comments on HN
- 4Why RubyGems Needs Loren Segal2 people · 90 points · first shared 2011 · 33 comments on HN
- 5How to Lose 100 Pounds2 people · 18 points · first shared 2012 · 11 comments on HN
- 6What does "scalable database" mean?2 people · 13 points · first shared 2010 · 2 comments on HN
- 7We are experiencing too much load. Let's add a new server.2 people · 2 points · first shared 2012 · discussion on HN
- 8Reminder: "Broken gets fixed, but shitty lasts forever"1 people · 169 points · first shared 2011 · 34 comments on HN
- 9Memory Allocators 1011 people · 142 points · first shared 2013 · 21 comments on HN
- 10Friendly: NoSQL With MySQL in Ruby1 people · 83 points · first shared 2009 · 17 comments on HN
- 11The Cost of Ruby 1.9.3's GC::Profiler1 people · 70 points · first shared 2012 · 12 comments on HN
- 12Objectify: A Better Way to Build Rails Applications1 people · 65 points · first shared 2012 · 70 comments on HN
- 13Wearing Out My Delete Key1 people · 32 points · first shared 2008 · 12 comments on HN
- 14Monkey-Patching, Single Responsibility Principle, and Scala Implicits1 people · 26 points · first shared 2010 · 5 comments on HN
- 15We don't write tests. There just isn't time for luxuries.1 people · 24 points · first shared 2007 · 43 comments on HN
What HN people wrote when they linked it
moge · 2010-11-17
google James Golick http://jamesgolick.com/
He has some amazing conference lectures about how he scaled his 1.5million page view website.
bascule · 2015-10-18
Defining instance-specific behavior of any kind is catastrophic to method caching. JRuby has a hierarchical method cache so it can clear only what's needed, but MRI does not:
http://jamesgolick.com/2013/4/14/mris-method-caches.html
The late, great James Golick had a patch to add one once, but it never got merged upstream.
If you care about performance even the tiniest bit at all whatsoever, please don't use the techniques discussed in the OP in production code or in your gems. It may make your memos 30% faster on a microbenchmark... while causing the rest of your program to run considerably slower.
JonWood · 2012-03-08
I'm starting to use service objects, which are responsible for coordinating things when multiple models are required to perform an operation, or complex business logic is involved.
James Golick has a great blog post on that approach at http://jamesgolick.com/2010/3/14/crazy-heretical-and-awesome-the-way-i…
zmoazeni · 2011-06-03
You posted something similar at http://jamesgolick.com/2011/6/1/why-rubygems-needs-loren-segal.html#co… and I've checked a few other posts of yours surrounding the context. I'm not sure why you're giving Loren grief.
> If Loren can be part of that solution, I'd love to see him working for RubyGems rather than against it, for sure.
I know you're trying to be a diplomatic bridge for the RubyGems team, however saying things like that just makes me shake my head.
I appreciate James' appeal. As an outsider to the situation, I wonder why not just let Loren do his thing without comments like that? I'm also saying this with respect to Eric and Ryan's work.
tunesmith · 2016-05-22
Having little experience with Rails, it's the tone of that "Crazy, Heretical" article [1] that really strikes me. That tone where you're laboring to describe something that really truly does make sense when you're in the company of a bunch of people that just don't want to hear it.
There's too much purism in those kinds of arguments, arguments that really are more about spectrums. It sounds like Rails is really great for learning the shallowest 40% of a wide variety of programming concerns, and a lot of web solutions for small clients aren't ever going to dip below that 40%. And as soon as you get beyond that 40%, asking questions like "but what if it doesn't make sense to do it that way?" and "what is that weird runtime bug that doesn't happen in my development environment?" and "why can't I refactor without being scared I'll introduce a weird regression bug?" then it's totally fine to be attracted to the idea of static typing, compilation, and libraries/frameworks that are more explicit.
[1] http://jamesgolick.com/2010/3/14/crazy-heretical-and-awesome-the-way-i…
Croaky · 2014-12-28
If you're a Rails developer, you probably have a config/initializers/backtrace_silencers.rb file in your app. Think of James the next time you see that file. He wrote the initial implementation:
http://jamesgolick.com/2007/12/1/noisy-backtraces-got-you-down.html
DHH later ported the work to Rails:
https://github.com/rails/rails/commit/f42c77f927eb49b00e84d355e07de487…
I knew James mostly online and a little in person from various programming conferences. He was smart, funny, and kind. He made a difference. He will be missed.
melling · 2014-12-28
The guy lost 100 pounds. That's impressive.
http://jamesgolick.com/2012/7/7/how-to-lose-100-pounds.html
mguterl · 2012-06-02
The idea of instant scalability is somewhat flawed. James Golick does a pretty good job of explaining why here:
http://jamesgolick.com/2010/10/27/we-are-experiencing-too-much-load-le…
douglasfshearer · 2014-12-20
Rails used as intended can be a real pain to upgrade, I agree.
Recently I have been developing applications in the "thin-model, thin-controller, with a service layer and external API wrappers" style, as espoused by Gary Bernhardt [1] and others [2] [3] [4] [5]. I upgraded to the latest Rails this morning on one app, and apart from swapping the Money gem to use the git repository, until they have a new version out with compatible dependency, it went smoothly. All the specs and acceptance tests passing with no alteration required.
[1] https://github.com/garybernhardt/sucks-rocks
[2] http://jamesgolick.com/2010/3/14/crazy-heretical-and-awesome-the-way-i…
[3] http://objectsonrails.com/
[4] http://solnic.eu/2011/08/01/making-activerecord-models-thin.html
[5] https://www.youtube.com/watch?v=CGN4RFkhH2M