Programming 101 Shell scripting basics "#!/usr/bin/env bash" vs. "#!/bin/bash" vs "#!/bin/sh"(portability considerations) Variables user-defined built-in Control Statements tests / conditionals loops functions arrays style Redirection I/O Pipes stderr vs. stdout /dev/null and /dev/zero Regular Expressions Sed & awk GIGO Validating input Validating output Trapping & handling exceptions with grace