How To Start Loving Command-Line Tools
Description
Now: have you ever thought about how *insufferable* some of that tooling can be? Many developers are familiar with the massive potential bloat of the 'node_modules' folder, how nightmarish it can be managing your Python paths & environments, or how difficult it is to test or run any given software locally. Need to store some relational data? “Well, I better fire up a full-fat Postgres deployment!” And none of this even touches on "dependency hell". Yikes.
Many developers often forget (or in my experience, simply don’t know) that for the most common tasks on UNIX-alike systems, there’s likely already command-line software installed to do the job! The GNU Project collectively provides nearly four hundred pieces of software to solve common (and not-so-common) computational problems. Outside of the GNU ecosystem, there are plenty of small-footprint, low- or no-dependency software packages available through a package manager or direct install to solve any straggling issues you may have.
In this talk, I will demonstrate how to resolve some of the most common or frustrating tasks developers might face using a sample of these tools: local databases; data preprocessing; JSON parsing & filtering; parallelization; task orchestration; interacting with REST APIs & remote files; and more!