iOS developers are very lucky guys ! Why ? Because Apple forces them to work on a beautiful Mac using a powerful and user-friendly UNIX operating system called OS X…
Lots of people will tell me “Mac does not offer a great list of tools/softwares, they are not compatible with windows ones, and blablabla and blablabla…”.
First I don’t care about Windows because this OS have proven its quality during last decades (famous blue screens, drivers to install before plugging a printer, great user interfaces, common freezes, etc…). So honestly who cares about Windows ? Who will listen to these grumpy guys ? Not me… and I hope, not you !
On OS X you’ll find tons of beautiful, refined, powerful, stable and useful softwares made especially for you, dear iOS developers.
This article presents a list of the must-have tools the we, iOS developers, should use in our everyday working life.
Consider this as a tool belt for iOS developer. They are categorized in the following order : Productivity, Development, Xcode add-ons, Text editors, Marketing, Network, Monitoring your app, manages your datas and other pixels stuffs…
- oh-my-zsh is a community-driven framework for managing your zsh configuration : 120+ optional plugins (rails, git, OSX, hub, capistrano, brew, ant, macports, etc) & 120+ themes to spice up your morning. If you’re using your terminal every day (and for ever), this is a must-have.
- Alfred saves you time when you search for files online or on your Mac. Be more productive with hotkeys, keywords and file actions at your fingertips. Do everything you want on your Mac without using your trackpad.
- Dash is an API Documentation Browser and Code Snippet Manager. Simple and smart !
- Homebrew is the missing package manager for OS X. “it installs the stuff you need that Apple didn’t.”
- Quick Look plug-in for complete Provisioning overview on a space tap.
- SimPholders is a small utility for fast access to your iPhone Simulator apps. Opens folder in Finder, resets library and documents, and deletes the selected app.
- OmniGraffle 6 for UML stuffs mapping out software classes, but also for creating precise, beautiful graphics, website wireframes, electrical system design…
- CocoaPods is the dependency manager for Objective-C (& soon Swift) projects. It has thousands of libraries and can help you scale your projects elegantly. Just enter your framework name and version in a Podfile, then run pod install… That’s all !
- Tweaks easily lets you adjust parameters for iOS apps in development. Use it in order to adjust animation timings, themes colors or temporarily disable new features during development. This is a facebook open-source project.
- Tower is one the most powerful Git client for your Mac (for those who don’t like Terminal :p)
- Kaleidoscope is a file comparaison that save you lots of time for text, images and folders merges.
- Deploymate identify unavailable, deprecated and obsolete API usage in your Xcode projects.
- Alcatraz is an open-source package manager for Xcode, that lets you easily install plugins, templates and color schemes. Once you’ve installed it, feel free to test :
- DerivedData Exterminator (oh yeah !),
- TextMate is one of the best text editor for programmers.
- SublimeText is a sophisticated text editor for code, markup and prose. You’ll love the slick user interface, extraordinary features and amazing performance.
- AppViz tracks your downloads, sales, reviews, rankings and iAds in a fast and very elegant App’
- Charles is an HTTP proxy / HTTP monitor / Reverse Proxy that enables to view all of the HTTP and SSL / HTTPS traffic between your machine/device and the Internet.
- Transmit is one of the best FTP client on Mac OS X
Monitoring your App’
- Reveal helps you to explore your application’s view hierarchy at runtime with advanced 2D/3D visualisations. Debug views layout and rendering problems in seconds. You can also modify your views live
- Spark inspector monitor & experiment your app in Real-time with a 3D view of your app’s interface and the ability to change view properties at runtime, monitors your app notifications
Manage your Datas
- Coredata Editor helps you to view, edit and analyze applications‘ data (XML, SQLite and binary stores), visualizes all relationships and is able to edit the data and generate Objective-C code for the data model
- SQLiteManager is a Firefox plugin to manage any SQLite database on your computer. Not the most beautiful (i.e. it’s really ugly !) but functional and practical.
- Slender analyzes the source code and image assets in a project to determine how they are being used and detects any potential problems
- Pixel Winch is a screen measurement app with a very simple approach, take measurements using any combination of the included tools.
- XScope helps you to measure, inspect & test on-screen graphics and layouts.
- PaintCode turns your drawings, button images, background images, etc… into pure code. Your app becomes lighter and users will thank you for lower memory use… You can see a comparaison on a small metroView project by teriiehina
This is not an exhaustive list, but this is a good starting point if you want to develop iOS apps with a certain quality, a certain productivity and of course a certain pleasure 🙂
All of these apps are available for nothing, at least in a limited trial version. BUT if you like and use one of them, please remember that behind all these apps there are developers, like you, like me, and at the end of the month, we all like like to be paid… These are professional tools, they should be used as this, so remember : DO NOT hesitate to ask to your boss for expenses account ;-p