Unix and Unix-like systems (Linux, BSD, Solaris, RedHat, etc.) have been around forever. You simply can’t expect to grow much in your career if you don’t have a basic competency with Unix and its commands. While this kind of thing isn’t (typically) a part of a CS curriculum, it is something you pick up along the way in university.

When I began programming Access databases back when I was a geologist (this was 1994 by the way) I worked with another geologist who did everything from the command line. He would load up our chemical analysis results into DB4 (an old database) and proceed to cast magic spells using extremely cryptic commands and shortcuts. Next thing I knew, the answer was sitting there, lit up lime green, blinking like it was a crime scene.

He would copy the commands into a text file and send them over to me "just in case I wanted to run the same routines". A combination of SQL and Bash - these routines did in less than a second what it took me hours to do: quickly and accurately answer my bosses questions.

A Life-long Skill

When I became a programmer I was all in on Windows, using classic Active Server Pages to get paid a ton of money. The tools were mostly visual at that time, as was Windows 95, my operating system, and everyone looked down their noses at command line nonsense.

In 2004 I realized that I probably wasted months of my life using such arcane and ridiculous methods to build applications. It was that year that I dug in and finally learned Bash - the language underlying the Mac shell. I was playing around with Rails and couldn't find "good tooling" which made me grumpy - but I also couldn't understand how everyone else was so damn proficient with it! 

Yep: the command line.

That year changed my life. Yes, this language is arcane and the commands are cryptic - but it's one of those things where once you learn it, it's always with you.

In the videos you're about to watch, pay close attention to how much time we're saving. Resizing and resetting the images is a prime example of this. Orchestrating things with Make will blow your mind as well!

There are so many tasks we perform on a daily basis that could be handed to a shell script so we can move on with our work. Discovering this is exhilarating and it's also maddening! You realize just how much of your life you've lost to click and drag! 

I hope you enjoy the videos - and I hope they change your life.

You must be logged in to leave a comment