Here is a quote from Trying to learn / understand Ruby setter and getter methods:
What's happening in your example is that you're initializing a new object (Human.new), and then using a method (noise=, yes the method name contains the = symbol) that just-so-happens to define an instance variable (that is, a variable just for that instance), and then finally retrieving that instance variable with another method call.
Question: why is it necessary to retrieve an instance variable with another method call? I read somewhere about in Ruby having all instance variables private. Does this mean that when focus passes to another instance/object, the instance variable is destroyed and/or inaccessible and thus requires a method call?