Zayd Abdullah wrote:

> So the reason  bottles_of_beer is attr_accessor is because I have to access
> it to change the value of it, and bottle_word and one_word are attr_readers,
> because those values never change?

Short term, use accessors to get to your instance variables.

Long term, learn the principle "tell don't ask." Don't ask your object for its 
variables, then use them. Instead, tell the object what to do, and let it use 
its variables to do it.

In your sample program, each phase (checking the beer bottle count, singing 
about one bottles, decrementing the count) could have ran inside a method in 
Bottles.

-- 
   Phlip