Answer the question "Can we build this for ALL the devices?" with a resounding YES. Learn how to build apps using seven different platforms: Mobile Web, iOS, Android, Windows, RubyMotion, React Native, and Xamarin. Find out which cross-platform solution makes the most sense for your needs, whether you're new to mobile or an experienced developer expanding your options. Start covering all of the mobile world today. Understanding the idioms, patterns, and quirks of the modern mobile platforms gives you the power to choose how you develop. Over seven weeks you'll build seven different mobile apps using seven different tools. You'll start out with Mobile Web; develop native apps on iOS, Android, and Windows; and finish by building apps for multiple operating systems using the native cross-platform solutions RubyMotion, React Native, and Xamarin. For each platform, you'll build simple, but non-trivial, apps that consume JSON data, run on multiple screen sizes, or store local data. You'll see how to test, how to build views, and how to structure code. You'll find out how much code it's possible to share, how much of the underlying platform you still need to know, and ultimately, you'll get a firm understanding of how to build apps on whichever devices your users prefer. This book gives you enough first-hand experience to weigh the trade-offs when building mobile apps. You'll compare writing apps on one platform versus another and understand the benefits and hidden costs of cross-platform tools. You'll get pragmatic, hands-on experience writing apps in a multi-platform world. What You Need: You'll need a computer and some experience programming. When we cover iOS, you'll need a Mac, and when we cover Windows Phone you'll need a computer with Windows on it. It's helpful if you have access to an iPhone, Android phone, and Windows Phone to run the examples on the devices where mobile apps are ultimately deployed, but the simulators or emulator versions of those phones work great.