title: When to use `require`, `load` or `autoload` in Ruby?
body: <p>I understand the subtle differences between <code>require</code>, <code>load</code> and <code>autoload</code> in Ruby, but my question is, how do you know which one to use? </p>
  
  <p>Other than being able to "wrap" a <code>load</code> in an anonymous module, <code>require</code> seems to be preferred.</p>
  
  <p>But then <code>autoload</code> allows you to lazy load files -- which sounds fantastic but I'm not sure practically what you gain over <code>require</code></p>
  
  <p>Is one method preferred over the other? Is there a situation where one method stands out?</p>