http://stackoverflow.com/questions/9429034/what-is-the-difference-between-map-each-and-collect