Overview and Competencies
This workshop is for beginner to expert software developers who want to build competencies in using the power of bash scripts to automate tasks, configure platforms, and customize their shell environment. It builds a foundation of knowledge for those who wish to understand the full depth of DevOps/Platform Engineering.
You will build the following competencies in this workshop’s sessions:
- Creating shell aliases for commonly used terminal commands that are cumbersome to type and remember.
- Authoring shell functions for common tasks that you perform in the terminal that involves a few processes, or requires some parameterization.
- Writing shell scripts that automate long, complex processes like building a consistent development environment, installing and configuring a sophisticated application, or setting up a cloud system consistently.
- Basic proficiency with the vim terminal editor program. Just enough to get your started and able to make simple changes in a text file.
- Defining and using environment variables to customize how your functions and scripts behave depending on the user and/or the environment. Environment variables are also key to keeping sensitive data out of your code.
How It Works
You will received an email containing the Zoom URL and instructions for preparing your machine for the workshop 3 days in advance. It will contain the steps needed to install the tools you will be using for the workshop. The workshop will run for 4 consecutive evenings. The topics covered in each session is listed below.
In each session, your coach will provide a guided tour of the concepts, and their application, in the terminal. After that, you will work with your teammates to collaboratively implement the concepts on your own project.
Prerequisites
- Basic competence in bash commands (e.g. ls, mkdir, touch, etc.)
- Your user account must have administrative rights for your machine.
- You will need a machine running the Mac OS, Linux, or Windows with Ubuntu installed in WSL.