I am trying to figure out why methods that seem to do the same thing 
behave so differently.  For example Integer("0377") returns 255 as 
expected for an octal number but "0377".to_i returns 377.  Or why 
Integer("12e3") crashes while Float("12e3") returns 12000.0 as expected. 
  I was hoping to find somewhere that tells when to use one or the other 
method depending upon expected inputs.  It is very time consuming to 
have to keep testing a method to find out it's limitations.