Linux or macOS command line

TL;DR: Go through Learn Linux the Hard Way

Why learn

If you want to do any web programming or server administration, you're going to want to know this.

Some people prefer command line over GUIs. It seems cumbersome, but there's a reason the most nerdy of nerds use it instead of clicking around with a mouse.

The Unix command line interface (which is used by both Linux and macOS) has been around for a long time, is still used and loved by nerds everywhere and is likely to be relevant for a long time into the future. Some of the most used programs are were made in the 1970s. You don't have to worry about new updates to the interface that are going to force you to relearn, or updates to the software that are going to force you to start paying a subscription.

It's a beautiful, future-proof system. Programs communicate with each other using human-readable text streams. Data is stored in human-readable text as well. This is very unlike Microsoft Word or Pro Tools, which store data in proprietary formats that require you to have a special program to read.

How to learn

Go through Learn Linux the Hard Way. It's not an active website, which is why I linked to it on the Internet Archive.

If you are using macOS, you don't have to install Linux if you don't want to. The most important basic concepts all apply to macOS Terminal. I use Linux and macOS and I sometimes forget which one I'm using since they are so similar.

By following Learn Linux the Hard Way, I went from fumbling around and copy/pasting commands into the terminal to actually knowing what I'm doing.

You can start at the beginning and stop wherever you'd like. Personally, I stopped about half of the way through since I felt like I had learned enough for now.