Introduction to Tools and Techniques in Computer Science

Introduction

Franklin Bristow

Introduction

We’ve been using the command line, at least a little bit, throughout the course. Despite its simple appearance, the command line is an incredibly rich and diverse environment, and lets you compose really complex commands that would be difficult to do with the visual desktop tools that you have at your disposal right now.

We’ll spend some time looking at how to use our shells effectively, and we’ll look at how to build up pipelines of programs to accomplish complex tasks.

We’re also going to digress a little bit and look at backing up our data. Pretty much everything you’re doing at school (and in life!) is digital: you’re writing source code, you’re writing documents, maybe you’re making spreadsheets or taking photos. Losing this data could be catastrophic, especially if you’re in a situation where you couldn’t possibly bail out.

While version control is a tool that you can effectively use as a remote backup, its main purpose is not as a backup of your software. In fact, version control software is downright terrible as a backup strategy for documents that aren’t plain text (like pictures!).

We’re going to talk about what a good, automated backup strategy is, the kinds of tools that you can use to do it, and get our machines configured so that we’re able to quickly back up our assignments to aviary.

By the end of this week you should be able to: