title: Why is the shovel operator (<<) preferred over plus-equals (+=) when building a string in Ruby?
body: <p>I am working through Ruby Koans. </p>
  
  <p>The <code>test_the_shovel_operator_modifies_the_original_string</code> Koan in <strong>about_strings.rb</strong> includes the following comment:</p>
  
  <blockquote>
    <p>Ruby programmers tend to favor the shovel operator (&lt;&lt;) over the plus
    equals operator (+=) when building up strings.  Why?</p>
  </blockquote>
  
  <p>My guess is it involves speed, but I don't understand the action under the hood that would cause the shovel operator to be faster. </p>
  
  <p>Would someone be able to please explain the details behind this preference?</p>