This is a talk I gave at YAPC::NA 2015 in Salt Lake City (http://www.yapcna.org/yn2015/talk/6085). The video can be found here: https://www.youtube.com/watch?v=sJC725e8ysM