Why Developers Swear by brew on macOS

A cat sitting inside a carton box
Photo by Timo Volz / Unsplash

Stop Downloading DMGs: Meet Homebrew for Developers

TL;DR

Homebrew is a free and open-source package manager for macOS (often called “the missing package manager”) [1][2].

  • It lets you install and manage software (CLI tools and Mac apps) via simple brew commands, handling dependencies automatically [1][3].
  • Homebrew allows you to update all your installed software with a single command easily. Definitely one of the best features ever.
  • Common tasks become trivial: for example, brew install <tool> or brew install --cask <app> instead of hunting down .dmg downloads, and brew update && brew upgrade to refresh everything [3][4].
  • Developers love it for the ease, flexibility (taps, casks), and huge open-source ecosystem of packages available [3][5]. Homebrew’s repository includes thousands of packages (called formulae and casks) for dev tools, utilities, and more [12].

What is Homebrew?

In plain terms, it’s a free, open-source tool that lets you install software from the Mac Terminal[2].

Apple never provided a native package manager on macOS, so Homebrew (created in 2009) filled that gap. With Homebrew you can use a Linux-style workflow: for example, brew install wget will download, build (if needed), and install wget in one step.

By default, brew installs packages into its own directory (/usr/local on Intel Macs or /opt/homebrew on Apple Silicon) and then symlinks the executables into your PATH [6]. This keeps things isolated – Homebrew “won’t install files outside its prefix” [7]. You usually don’t even need to use sudo.

Under the hood, each formula is just a little Ruby script, and Homebrew is powered by GitHub, making it easy to update formulas or even write your own if needed.

Why Should Developers Care?

Homebrew makes a Mac much more developer-friendly. Instead of dragging App Store icons or running random installer wizards, you use consistent brew commands. Homebrew automatically handles dependencies and keeps your tools organized (no more hunting down missing libraries)[8]. In short, it brings the convenience of Linux-style package management to your Mac[9][10].

  • Quick Installs: Homebrew “simplifies installing, updating, and managing open source applications and developer tools”[3]. Instead of hunting down installers, you just run brew install <package>. Homebrew even auto-installs dependencies [8], so everything you need comes along.
  • Easy Updates: Probably one of the best features. Keep your tools fresh with brew update && brew upgrade. Homebrew allows you to update all your installed software with a single command easily [11].
  • Large Ecosystem: Homebrew’s repository includes thousands of packages (called formulae and casks) for dev tools, utilities, and more[12]. A large community of contributors maintains them, so you’ll likely find almost any software you need[5][13].
  • GUI Apps via Cask: Homebrew Cask lets you install Mac apps and fonts just as easily. For example, brew install --cask firefox will download and install the Firefox browser [4]. No need to manually drag the app.
  • Consistency: If you work on multiple Macs or with a team, Homebrew is great for scripting your setup. You can share brew install commands or use a Brewfile to provision machines identically.

In short, Homebrew provides all the big benefits of Linux package managers (apt, yum, etc.) on macOS [2][9]. It’s become the go-to package manager for Mac users with a large, active community.

Installing Homebrew

Getting started is easy. Open Terminal (in Applications > Utilities). If you don’t have Apple’s command-line tools installed, first run:


xcode-select --install

Next, run the official Homebrew installer script:


/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

This will download and install Homebrew on your Mac [14]. Follow the on-screen prompts (it will tell you what it’s doing). When it’s done, type:


brew --version

to verify the installation [15]. If it shows a version number, brew is ready to use.

Basic Usage (Commands)

Here are some essential brew commands:

brew search <package> – search for a package by name (e.g. brew search aldente).

brew install <package> – install the package (e.g. brew install git).

brew list – list all installed Homebrew packages.

brew uninstall <package> – remove a package you no longer need (e.g. brew uninstall aldente).

brew update – update Homebrew itself (fetch the latest formulas) [17].

brew upgrade – upgrade all installed packages to their latest versions [17].

brew cleanup – remove old versions of packages (freeing up disk space).

brew install --cask <app> – install a macOS app or font (e.g. brew install --cask firefox [4]).

For example, a simple workflow might look like:

brew search jq # find the jq JSON processor
brew
install jq # install it

brew upgrade # upgrade installed packages

brew cleanup # clean out old versions

This covers the basics, but there are many more brew commands (run brew help to explore).

Homebrew Ecosystem & Community

Homebrew’s strength is its community-driven model. All of Homebrew’s formulae and casks are stored in GitHub repositories, so when a new version of a tool is released, maintainers can push an update and everyone can install the latest release immediately [18]. In fact, one account notes that Homebrew has a “passionate group of contributors [that] ensures... software available through Homebrew is reliable and up-to-date” [13]. This collaborative approach makes new packages and updates appear very quickly.

You can also tap into extra repositories for specialized tools. A tap is Homebrew-speak for a Git repository containing additional formulae.

For example, running brew tap homebrew-ffmpeg/ffmpeg gives you easy access to FFmpeg with additional options, including nonfree additions.

Since Homebrew is fully open-source and volunteer-run, there are no licensing fees – just community contributions. The project even provides pre-built binary packages (“bottles”) for speed, so installations on modern Macs are often very fast.

Wrap-up

In short, Homebrew is a must-have package manager for any Mac developer. It bridges the gap between macOS’s polished interface and the rich open-source underpinnings. With Homebrew, your Mac becomes “a versatile open source powerhouse” – you can “search for packages, install them with a single command, [and] update everything effortlessly”.

If you haven’t already, give brew a try – it’ll make installing and managing your development tools so much easier.


Sources:

Homebrew documentation and community articles [20][1][21][16][5][2].

[1] [4] [6] [7] Homebrew — The Missing Package Manager for macOS (or Linux)
https://www.brew.sh

[2] [10] Homebrew (package manager) - Wikipedia
https://en.wikipedia.org/wiki/Homebrew_(package_manager)

[3] [8] [11] [14] [15] [17] [19] [20] Unleashing the power of Homebrew on MacOS
https://allthingsopen.org/articles/unleash-power-homebrew-macos

[5] [12] MacPorts vs Homebrew: The Ultimate Battle Guide to Secure Software Management on macOS
https://www.litigated.uk/macports-vs-homebrew-the-ultimate-battle-guide-to-secure-software-management-on-macos/

[9] [13] [18] [21] Understanding Homebrew's History
https://workbrew.com/blog/understanding-homebrews-history

[16] Why You Need a Package Manager on macOS
https://dev.to/gsidhu13/why-you-need-a-package-manager-on-macos-4kdh