Developers are drowning in tools. In fact, as of this March, there are 246 mobile product development tools on the market for just one operating system: Android.
Too many tools might sound like a great problem to have. But simply sorting through them all can feel like a full-time job. Somebody learning one new tool per day, including weekends, wouldn’t be finished until mid-November.
It’s overwhelming, we know. That’s why we’ve created this guide of our seven favorites. Not every tool for every job is listed, of course. But for the average app project, the following are our go-to tools:
Android Studio is the official integrated development environment (IDE) for Android development, born out of a partnership between Google and JetBrains. The latest version is Android Studio 2.3, which includes significant UI updates and testing features over the prior edition. Everything you need to construct a basic Android application comes built-in, including Gradle for building the app, emulators for developing it on multiple screen sizes and densities, and Android Monitor for debugging your application to name just a few.
Xcode is Apple’s development tool, and it's essentially your only option for iOS builds. It only runs on Mac OS X and isn’t as open to configuration and plug-ins as its Android counterpart. Hoping to improve its user interface, Apple released Xcode 8.2 late last year alongside its new MacBooks. Developers tend to have strong opinions about Xcode, but whether you love it or hate it, the tool features a unique “interface builder” functionality that lets users visually configure what they want to appear in the application.
3. Django (and other MVC back-end frameworks)
4. Sentry and Crashlytics
OK, these are technically two tools, but we really couldn't choose between these excellent error-reporting platforms. When bugs start cropping up during beta testing and production, it's critical to unpack the errors. Where in the code did it originate? What was the user doing at the time? Crashlytics, which Google just bought from Twitter, generates reports based on the version of your application and gives you a heads up when it notices error spikes. Sentry is also a robust error-monitoring tool that works with many different front-end and back-end platforms.
5. New Relic
New Relic, an application performance monitoring platform, is having its moment in the spotlight. Its stock rallied this January to its highest since its IPO in December 2014, and its customers include giants like Nike, Sony, ESPN, and even Healthcare.gov. Why is it so popular? Well, New Relic profiles both the back and front ends of an application to measure server latency. Knowing how long each part of the request took allows you to eliminate bottlenecks and improve performance.
Fastlane, an Android and iOS automation tool, is a favorite around our office. It's designed to automate some of the more tedious tasks involved with testing and deploying your app. It takes screenshots, handles code signing, and much more.
Whatever you're building, you'll need to test the codebase for front-end and back-end functionality. CircleCI, Travis CI, and Codeship are all solid options — in fact, we’ve used all three — but CircleCI stands out for its compatibility. Atlassian's BitBucket, HipChat, and JIRA all play well with it.
Use one of these tools to test your code every time a pull request or commit is made to the code repository. Because they run automated tests during development, continuous integration services help catch errors while protecting the existing codebase. Developers gain efficiency while end users get a bug-free experience.
It’s easy to get buried by the development tools out there. But with these seven in your back pocket, you’ll advance a long way toward that glorious finish line. For an even greater boost, check out our free whitepaper “The Ultimate Guide to Mobile App Design and Development.”