title: Humanizing time
body: <p>I have a number of products that are perishable. Therefore, each product has an attribute called hours_expiration that tells how many hours the product can be used before it goes bad.</p>
  
  <p>For ex, apple expires in 168 hours; nut expires in 4320 hours.</p>
  
  <p>Given, the product's hours-to-expiration and the current time (Time.now or Date.now), how can I humanize the time-to-expiration in some of the following sample ways?</p>
  
  <p>Your item is set to expire in about:</p>
  
  <ul>
  <li>6 months and 14 days</li>
  <li>1 month and 13 days</li>
  <li>1 month and 1 day</li>
  <li>27 days</li>
  <li>1 day</li>
  <li>23 hours</li>
  <li>1 hour</li>
  <li>50 minutes</li>
  <li>1 minute</li>
  </ul>
  
  <p>Looking for something robust and simple!</p>