This is the latest installment of my must-have list of tools, apps, and utilities as a macOS, iOS and web developer. Each app has a distinct purpose, and I probably touch each at least a few times a week. Many are free some aren’t, those that aren’t free are very likely worth your 30-day trial, and perhaps your money.
Note: Updated on May 20th, 2019.
For previous installments please see: (2017, 2016, 2015).
The idea for this list was shamelessly ripped off from macOS and iOS developer Justin Williams which he also shamelessly ripped off from Windows developer Scott Hanselman.
Without further ado, the following is the hardware, tools and apps I use:
My hardware is simple yet elegant and a workhorse.
- 27-inch Retina 5K, Late 2015 iMac
- 3.2 GHz Quad-Core Intel Core i5 Processor
- 24 GB 1867 MHz DDR3 Memory
- AMD Radeon R9 M380 Graphics Processor (2 GB of GDDR5 Memory)
- 1 TB (7200-rpm) Hard Drive
Note: I’m still patiently waiting for the ‘mythical’ Pro upgrade.
Peripherals & Accessories:
In terms of accessories and upgrades I use.
- Time Machine backups are handled by a 4TB LaCie/Porsche Design Mobile Drive, connected via USB 3.0. It’s fairly quiet and one of the few external drives that don’t have a horrific design.
- I connect to the Internet through Spectrum 300/20 Mbps speed using a Technicolor MediaAccess TC8717T modem. And I connect wirelessly through both 2.4 GHz and 5 GHz channels.
- Loud electronic and jazz music is blasted through the amazing Morro One speaker set.
I am really hard on software! This is for a variety of reasons, but I think it’s because I build it myself. I have always envisioned that directors and actors can sometimes lose focus during a movie as they judge the decisions others made in their productions. I believe; I do the same with software.
I loathe poor and/or non-native user interfaces, however, I cherish simple tools. The following are the applications I constantly rely on.
The Essential Power User 5
- Visual Studio Code – I use Visual Studio Code for everything from editing scripts to writing and editing code. It is an indispensable tool that can be adapted for so many use cases.
- Tresorit – Tresorit replaced Dropbox over a year ago! End-to-end security at its core was one of the reasons, also, it’s easy to share files between machines as well as with colleagues.
- Alfred – Great productivity app to find everything on macOS.
- Chrome – I love this browser; enough said!
- 1Password – Is one of the first tools I install. It’s over-the-air syncing makes using it on my iPhone and iPad even easier. It also has made me use better passwords because I no longer have to remember them.
This year I’m going to keep it simple! You will notice that I use a lot of paid apps, there may be high-quality open source alternatives: But don’t be cheap!
Security Tools – Keep macOS and your Development Environment Secure
- Bitdefender – Since 2013 Bitdefender has been securing my macs, it’s accurate, elegant and the system impact is small.
- VPN Unlimited – Be completely free and anonymous worldwide.
- Lynis – An open source tool that helps with auditing systems running UNIX-alike to provide guidance for system hardening and compliance testing.
- chkrootkit – Install this now! It locally checks system binaries for rootkit modifications.
- npm-audit – Allows for auditing a package.json or npm-shrinkwrap.json file against the API.
- Docker Bench Security – This script checks for dozens of common best-practices around deploying Docker containers in production.
Developer Tools – macOS and iOS Development
- Xcode – If you write macOS or iOS applications, you spend most of your life in Xcode and Instruments. I am no different.
- CodeRunner – There are times I’m writing a small snippet of code to share with someone or just to test an idea on my own. I don’t necessarily need the full power of Xcode, so CodeRunner comes in handy.
- Dash – I have found Dash to be a must-have utility, especially if you are targeting platforms beyond just macOS and iOS. Dash imports and formats documentation for macOS, iOS, Android, web frameworks, and more. It’s amazing.
- Proxyman – Proxyman replaced Charles from my previous list. It’s a modern HTTP debugging proxy and macOS native.
- XCUITest – XCUITesr replaced Appium from my previous list. My adoption was based on faster and reliable performance and architecture of the framework.
- Espresso – Any Android developers snooping around? I got you covered!
- Image2icon – Image2icon replaced iConvert Icons from my previous list. User experience is phenomenal, It converts icons in all of the popular icon formats, including png, ico, and icns.
- Postman – A powerful GUI platform to make your API development faster & easier, from building API requests through testing, documentation, and sharing.
- Tower – Version control with git made easy, in a beautiful, efficient, and powerful app.
Note: I’ve been using Tower since late 2013, with their recent ‘license’ pricing change. I began using Sourcetree a lot more, it’s free and open-source.
- Reveal – Inspect. Modify. Debug. Reveal brings powerful runtime view debugging to iOS developers.
- Bitbucket – Code, manage and collaborate. Bitbucket is the Git solution for professional teams.
- ImageOptim – When you add up the kilobytes of non-retina and retina assets for both the iPhone and iPad, app binaries are getting bigger. ImageOptim has a better compression algorithm than the one built into Xcode, so I will sometimes run images through it to get smaller sizes.
Developer Tools – Web Development
- iTerm2 – An amazing terminal emulator that does incredible things.
- Homebrew – Homebrew installs the stuff you need that Apple didn’t.
- Zsh – Zsh is a shell designed for interactive use, although it is also a powerful scripting language.
- oh-my-zsh – A community-driven framework for managing your zsh configuration.
- Transmit – Best FTP client out there from Panic Software, enough said.
- CodeKit – CodeKit helps you build websites faster and better.
- TablePlus – TablePlus replaced Navicat Premium from my previous list. A modern and native database management tool that needs to be in your toolbox!
Note: I could no longer justify the Navicat upgrade license expense when better alternatives are available.
- Sequel Pro – Sequel Pro is a fast, easy-to-use Mac database management application for working with MySQL databases.
- Robo T3 – Do you use MongoDB? Then this is your tool.
- Local by Flywheel – Local replaced Docker Community Edition from my previous list.
Note: Docker was a pain to set up with other devs when working with WordPress. Local has been a huge time saver!
- DB Browser – DB Browser replaced Base from my previous list. A high-quality visual app to create, design and edit SQLite database files.
- Cornerstone – For those few times a year I need to work with Subversion, Cornerstone is the best desktop client I’ve found for it.
- Jira Software – Jira Software replaced FogBugz over a year ago. People complain that it is an unattractive app; I disagree. It’s not flashy and instead just disappears so that I can actually focus on using it for its intended purpose: managing my software projects and bugs.
- TinyPNG – A great online tool for both PNG and JPEG compression.
- Remove.bg – A handy tool to remove the background of an image.
Note: If you’re interested in how to further optimize images for the web, then you must read the Essential Image Optimization guide!
Developer Tools – Cross Browser Testing
- Safari Technology Preview – Stay ahead with upcoming web technologies in both macOS and iOS.
- Chrome Canary – Often can be a little unstable but works great to test websites and APIs.
- Firefox Developer Edition – Firefox Developer Edition was created with your workflow in mind, build, test, scale and more all from one place.
- Microsoft Edge Preview – What is this new alchemy? Get the insiders build for the web’s new browser.
Note: Fun fact, I last used a Microsoft web browser on the mac with OS X Tiger.
- Opera Developer – I was a huge fan of this web browser in the past, I would always use their dragonfly web dev tool. Any of you remember that? Still a great web browser to test International sites.
- Blisk – A developer friendly browser that allows testing websites on mobile emulators.
- LamdbaTest – I’ve used both BrowserStack and Sauce Labs in the past, I found them to be a bit cumbersome. LamdbaTest is quick to set up and very intuitive.
Note: This will be the first full year that I no longer need to use Adobe Creative Cloud. I began using Adobe Creative Suite (yes, I’m that old) during my College years in early 2008. I decided to venture out and found something magical!
- Affinity Photo – Affinity Photo replaced Adobe Creative Cloud from my previous list.
- Affinity Designer – Affinity Designer replaced Adobe Creative Cloud from my previous list.
- Affinity Publisher: BETA – Affinity Publisher replaced Adobe Creative Cloud from my previous list.
- PaintCode – PaintCode allows you to turn your drawings to Swift, Objective-C, Java, and SVG code. A plugin for Sketch is also available.
- Sketch – Gives you the power, flexibility, and speed you always wanted in a lightweight and easy-to-use package. Finally, you can focus on what you do best: Design.
- Craft – STOP reading this and just install it! Craft is a suite of plugins that allows you to design with real data.
- Reduce App – Compress huge Sketch files to a light one.
- Zeplin – Zeplin is a great collaboration tool for designers and developers; design hands-off has never been easier.
- PixelSnap – PixelSnap replaced xScope from my previous list, this tool is super speedy! You can measure anything on your screen at lightspeed.
- ColorSnapper – ColorSnapper replaced Sip from my previous list, a great little app that allows to collect, adjust and export colors of any pixel.
- Tuxera NTFS – Full read-write compatibility with NTFS-formatted drives on macOS.
- Boom – macOS volume booster with advance equalizer controls and audio effects.
- Lungo – Lungo replaced Caffeine over a year ago. Is a tiny program that puts an icon on the right side of your menu bar. Click it to prevent your Mac from automatically going to sleep.
- The Unarchiver – A file extraction utility is somewhat of an unsung hero, but when you need it, it’s good to have a utility that is robust and can fit almost any bill. The Unarchiver does that and does it well.
- Techtool Pro – The most advanced macintosh repair utility; enough said!
- DriveDx – A must-have tool for testing both SSDs and HDDs.
- CleanMyMac – Keep your Mac healthy with this incredible app, I use it regularly and love it.
- Checkmate – A built-in doctor for your Mac that spots small problems before they can become big problems.
- Bartender – Lets you organize your menu bar apps, by hiding them, rearranging them or moving them to Bartender’s Bar.
- Battery Monitor & Memory Cleaner – Battery Monitor can overview your battery information in a beautiful way. Easily access the most important health and status information and the details of your battery from your menu bar./ Memory Cleaner is a beautiful memory optimizer designed for the new memory concepts of macOS. Monitor and optimize and diagnose your memory usage with a simple click.
- Night Shift – Night Shift replaced f.lux over a year ago. Make the color of your computer’s display adapt to the time of day, warm at night and like sunlight during the day.
- iStat Menus – Is an advanced macOS system monitor for your menubar.
- VNC Connect – VNC Connect replaced TeamViewer from my previous list. Remote control any computer or Mac over the internet within seconds.
- Android File Transfer – Browse and transfer files between your Mac computer and your Android device.
- Unlox – Awesome little app that allows you to easily and conveniently unlock your mac with your iPhone.
- Disk Diet – Disk Diet digs into Mac files you may not need and frees up a lot of storage; I’m talking about gigabytes of storage the first time you use it.