Storyboards were first introduced in iOS 5, and I still remember my first impression when I started using storyboards. I was impressed and didn't believe it myself. We were struggling with tens of XIB interface files for each screen and for custom table view cells or custom components. In addition to that, when you work on a project that someone else developed, you waste a lot of time trying to figure out which screen is the root screen and how the interactions are between the screens. Storyboards solve all these kinds of problems; when you open it, you will see the whole app flow and see what is going on between screens.
Before getting our example started, make sure that you have the latest version of Xcode 8.0, which is in the beta version now at the time of writing this book. You can still use Xcode 7.x if you want, but you may find little differences between them, especially in the size classes section that we will talk about later.