For the More Curious: NSAutoresizingMaskLayoutConstraint
Before Auto Layout, iOS applications used another system for managing layout: autoresizing masks. Each view had an autoresizing mask that constrained the relationship between a view and its superview, but this mask could not affect relationships between sibling views.
By default, views create and add constraints based on their autoresizing mask. However, these translated constraints often conflict with your explicit constraints in your layout, which results an unsatisfiable constraints problem.
To see this happen, comment out the line in viewDidLoad that turns off the translation of autoresizing masks.
// The contentMode of the image view ...