Maximize Developer productivity on a Mac

I have been developing on a Mac for over three years now and over the course I have accumulated a lot of apps and tools on how to maximize productivity. As developers, we are always trying to get the maximum out of OS X. Here is a rundown of some of the Apps and tools I use to fit my optimal workflow

1. iTerm2

First things first. Get rid of your ugly looking Terminal app which shipped by default with with OS X. The Terminal just feels so hard to use. Install iTerm2, the most advanced emulator for OS X. iTerm2 ships with a ton of features which the default Terminal app does not provide. Some of my favorite features are

  • Split Panes
  • Extensively configurable keyboard shortcuts and color schemes
  • Mouse-less Copy
  • Paste History

2. zsh

bash is the default shell on a Mac. zsh (Z-Shell) is waaay more cooler to use than bash. Some of the nice features of zsh are :

  • cd command auto-completion (using the Tab key)
  • path expansion (using the Tab key)
  • a prompt on the RIGHT
  • spelling correction
  • syntax highlighting

Probably the best part about zsh is Oh My Zsh which is listed next.

How to switch your default shell to zsh :

Fortunately OS X ships with zsh. Run the following command on your terminal to switch to zsh as your login shell

chsh -s /bin/zsh ${USER}

3. oh my zsh!

Oh-My-Zsh is an open source, community-driven framework for managing your ZSH configuration. It comes bundled with a ton of helpful functions, helpers, plugins. As of today, it has 150+ plugins and 100+ themes built in.

You can get oh my zsh from here

4. dotfiles

Your dotfiles are how you personalize your system. These are probably the most important files on my Mac. Dotfiles, so called because the filename begins with a . are found in the user’s home directory. Examples are : .bashrc, .vimrc, .zshrc, .gitconfig, etc. It can be a hassle to manage these files and a huge problem if they get lost.

You can use Github to backup, restore, and sync these dotfiles. Github has a good guide on getting started with dotfiles here : https://dotfiles.github.io/ . It also lists some of the popular dotfiles which can be forked and used as a base for for your own personal dotfiles.

5. Homebrew and Homebrew cask

Homebrew is the most popular package manager for cli programs. It is the popular choice over MacPorts and Fink. It is claimed to be “The missing package manager for OS X”. Homebrew installs the stuff you need that Apple didn’t. Eg :

$ brew install wget

Packages are installed in /usr/local, so that you don’t have to use sudo to run them.

Homebrew Cask is an extension of HomeBrew for GUI applications. You can use it to install applications like Google Chrome, Eclipse, Sublime Text, etc.

$ brew cask install google-chrome
$ brew cask install sublime-text

6. Cloud App

The Cloud App is a quintessential App for you if you regularly take screenshots. It instantly uploads the screenshots you take to it’s servers and copies the link to the screenshot to your clipboard, so that you can share it easily. It can also share all other kinds of files. Just drag and drop them on the cloud icon in the menubar

If you have brew cask installed, you can install it via

brew cask install cloud

7. iStat Menus (Paid App)

Image courtesy of http://bjango.com/

iStat Menus is an advanced monitoring system for the menubar. It is always running in my Menubar and it’s one of the must have paid apps from this list. I love the design of this App. It’s one of those apps which gives you a OSX-y feeling.

You can monitor CPU & GPU, Memory, Disk, Network. It’s very helpful in detecting when processes go rogue or over-utilize some resource they are not used to. It comes with a 14 day free trial.

If you have brew cask installed, you can install it via

brew cask install istat-menus

8. Copyless (Paid App)

Courtesy of http://www.maxbor.net/portfolio/copyless

If you’re like any other programmer, you use the clipboard frequently to copy things around, but OSX has the limitation of keeping only the latest entry in it’s clipboard. Unlike the system clipboard CopyLess can store up to 100 items to which you have instant access at any time.

With CopyLess it’s no longer necessary to switch constantly between different applications or windows just to copy and paste several different items. It has a simple and intuitive user interface with built-in filters

It’s available on the Mac App Store for install.

9. HyperSwitch

Courtesy of http://bahoom.com/hyperswitch

One thing which Windows got right and Mac got wrong was Application Windows (no puns here). We all know it is a pain in the ass to switch between multiple windows of the same App in Mac. Hyperswitch solves that.

Simply put, Hyperswitch is the keyboard window switcher for your Mac. It makes Window Switching easy in OSX.

If you have brew cask installed, you can install it via

brew cask install hyperswitch

10. SizeUp (Paid App)

Courtesy of http://www.irradiatedsoftware.com/sizeup/

If you’re reading this, it’s very likely that you work on Multiple Monitors, or work on a large monitor with a lot of real estate. We all know how much of a pain in the ass it can be to drag and resize windows around monitors. It can be tedious and imprecise.

SizeUp solves that problem. It allows you to quickly resize and position your windows with keyboard shortcuts or a handy menu bar icon. SizeUp will make optimal use of your screen while saving you time and frustration. It is highly configurable and has a good set of keyboard shortcuts built in.

Courtesy of http://www.irradiatedsoftware.com/sizeup/

If you have brew cask installed, you can install it via

brew cask install sizeup

11. Dash

Courtesy of https://kapeli.com/dash

Nobody remembers each and every function call’s signature method and we need to look up documentation every once in a while. Dash solves documentation lookup.

Dash is an API Documentation Browser and Code Snippet Manager. Dash stores snippets of code and instantly searches offline documentation sets for 150+ APIs like Java, Python, node.js, GoLang, iOS, Android, etc.

It also has Amazing Integration Plugins with a number of Text Editors and IDEs.

If you have brew cask installed, you can install it via

brew cask install dash

12. Mail Notifr

Courtesy of http://ashchan.com/projects/gmail-notifr

MailNotifr brings Gmail notifications to the Menu . It is an Open Source App which supports Multiple Mail Accounts. It is Small, Fast and Neat.

If you have brew cask installed, you can install it via

brew cask install gmail-notifr

13. f.lux

Courtesy of https://justgetflux.com/

f.lux makes the color of your computer’s display adapt to the time of day, warm at night and like sunlight during the day. Ever notice how people texting at night have that eerie blue glow? During the day, computer screens look good — they’re designed to look like the sun. But, at 9PM, 10PM, or 3AM, you probably shouldn’t be looking at the sun.

Save your eyes, start using f.lux. f.lux makes your computer screen look like the room you’re in, all the time. When the sun sets, it makes your computer look like your indoor lights. In the morning, it makes things look like sunlight again

If you have brew cask installed, you can install it via

brew cask install flux

14. Scroll Reverser

It is another one of those very simple apps that solves a very annoying problem in OS X. You can configure different scrolling directions for the trackpad and the mouse. The Trackpad has a natural scroll feel, while the mouse has the reverse scroll feel. It is Open Sourced.

If you have brew cask installed, you can install it via

brew cask install scroll-reverser

15. App Cleaner

Installing Apps in OSX is easy. Drag and drop a nice looking icon into Applications folder and you’re done. But uninstalling can be a pain because the Apps leave traces of files all over the system and just delete the App from the Applications folder does not cleanly Delete the app.

AppCleaner thoroughly uninstalls unwanted apps. Simply drop an application onto the AppCleaner window. It will find for the related files and you can delete them by clicking the delete button.

If you have brew cask installed, you can install it via

brew cask install appcleaner
One clap, two clap, three clap, forty?

By clapping more or less, you can signal to us which stories really stand out.