In the deep-diving of the esoteric world of technology as I do, I often come across tools which the vast majority of people will never need or make use of. I tend to note those tools and log them away for personal use, as it is not uncommon for weird situations to pop up where I need some ultra-niche tool I’ve stumbled across in the past.

Other times, some of those tools I encounter could make a lot of people’s lives much easier and more convenient.

For anyone who uses a laptop or desktop computer, I think Package Managers might be one of those tools.

What is a Package Manager?

In short, a package manager is a program that aims to make installing, updating, and removing programs on your computer stupidly fast and easy – doing in a single line of text what sometimes can take an hour or more of work (if you’re installing a large number of programs).

It’s a one-stop-shop for all of your software needs. All of the programs you need and want, in one place that’s fast to work with, and massively simplifies the process of managing the programs that run on your computer.

Some computer operating systems like Linux basically only use package managers for their software installation. A couple of these package managers include pacman or apt.

For most other operating systems, a Package Manager is an extra piece of software that you install on your computer.

For Windows users, there’s Chocolatey, or more recently Winget.
And for MacOS there’s homebrew.

Why are Package Managers awesome?

Here’s a few reasons I now use a package manager on every new device I set up, for both myself and for others.

It Makes Installing New Software So Fast and Easy

Like, sooo fast.

I’m in a statistics class this semester in my online university. We’re studying the R programming language as a tool to learn the principles of statistics without getting lost in the arithmetic. A good chunk of the homework for our entire first week of class is working through the process of making sure everyone in the class is set up correctly to use the R software on their computer for the rest of the class.

Because it’s a bit of an older and more arcane piece of software, it can indeed be a bit troublesome to try to find the right version of it for your computer. On account of that, there are several pages of instructions that we need to navigate our way through before we can find the download link, which we need so we can download the installer, after which we can run the installer, and finally get the program running on our computer.

Here’s a screen capture of me doing that same thing in seconds using the pacman package manager on my computer:

Installing R
(The installation happens in the first 7 seconds… the rest is just me having some fun)

Stupidly quick! And granted, pacman’s syntax isn’t the easiest (what’s up with the -S?), but many package managers are much easier to work with.

For example, I wrote recently about why I recommend people use Brave in place of Chrome.

If you have Chocolatey installed on your computer, this is all you need to type to get up and running with Brave:

choco install brave

So quick.

No More Endless Searching for Programs… And Finding Viruses

By default, if you have a new program you want to install on Windows, the normal workflow is:

  1. Type name of program into Google,
  2. Click link that looks at least semi-reputable,
  3. Decide whether the page that opens actually feels reputable enough,
  4. If site doesn’t feel safe enough, repeat step #2 with a different link; otherwise:
  5. Press “Download Program”,
  6. Cross fingers and hope you didn’t just download a virus 🤞🏽🤞🏽

That seems… suboptimal.

With package managers, that whole process non-existent.

The programs on package managers have been vetted. Many of them are open source programs that you can open up the code and verify for yourself.

You just type the name of the program in an “install” command, press “Enter” and you’re done.

It’s nearly impossible to download a virus if you’re using a package manager.

Update EVERYTHING, instantly!

☝🏽 Honestly, this is probably my favorite part!

I have well over 100 programs installed on my computer, and I like to know my programs are running the latest updates/security patches. If I needed to make sure every program was up-to-date and secure on a regular basis, it would be nearly a full time job!

Package Managers make it so you can update every program on your computer in a single command.

With pacman on my computer, I can run the command pacman -Syu, and it will instantly go through, and check every single program on my computer and see if there are any feature or security updates are available, then go through and install them automatically. (Again, it is indeed an arcane syntax. Why -Syu? But man… those 11 keystrokes save me a TON of time in keeping my software running safe and fast!)

Luckily, many package managers are more simple to use than pacman.

Here’s the command to get Chocolatey to upgrade all the programs it can in one line:

choco upgrade all

Winget is similar:

winget upgrade --all

Homebrew takes a couple commands (brew update, followed by brew upgrade), but is still insanely quick to 1) check for updates on all the programs, 2) download updates for any out-of-date programs, and 3) install them.

Set Up New Computers Super Quick

This is the other reason I love Package Managers.

I help a lot of people get their new computers up and running (or, more often, reviving old computers that need a new breath of life). The process of going through to find, download, install, and configure all the programs that someone needs to get their computer fully up and running can be a huge time suck.

With Package Managers, that need not be the case.

When I’m setting up a new computer, I can install one program (specifically, a package manager like Chocolatey on Windows), and run one command like:

choco install brave thunderbird vlc libreoffice-still kdenlive audacity gimp krita inkscape blender obs-studio vscode

And when that command is done running, the computer will be fully set up with all the software one needs to do pretty solid multimedia creation, live-streaming, and software development work, on top of all the basic stuff everyone expects like web browsing, email, word processing, etc.

Depending on internet connection, doing all that setup manually could take the better part of several hours. This is all done in one single command, which takes just seconds to type or copy/paste.

And, for those intimidated by the idea of typing commands into a terminal window, tools like Chris Titus’s Windows Utility (explainer video at the bottom of his article) also make it possible to use a package manager (Winget) to install dozens of programs with a few clicks instead of a few keystrokes.

A pretty cool tools and time-savers if you ask me!!