CS 2043

Unix Tools and Scripting

Location: Hollister Hall B14
Lecture: MWF 11:15am - 12:05pm
Course material: GitHub
Discussion: Piazza
Grades: CMS

Lecturer: Stephen McDowell
Email: sjm324@cornell.edu
OH: Tuesday: 6:00pm - 7:00pm, Gates G19


CS 2043 is a seven week, two credit, S/U only course. It runs from January 27th through March 18, 2016.

There are two important dates where the registrar is concerned:

  • Last day to add: February 3rd, 2016
  • Last day to drop: February 10th, 2016

The goal of this course is to provide you with a high-level exposure to a wide range of Unix tools. From the basics of getting your Unix environment setup, to using your terminal, to building complex programs in a Unix environment, this class aims to give you the base toolset to continue developing in a Unix environment. That is, you should not expect to exit the course with a mastery of "everything there is to know about Unix." Instead, you should expect to exit the course with an understanding of how to navigate and configure a Unix environment, as well as have the confidence and tools to solve future problems (e.g. ones you did not encounter in this course) on your own.

As with any course, regardless of the subject, you do not really learn something until you sit down and try it out yourself. The lecture and assignments are designed with this in mind — you should expect to learn the material by interacting with it directly. The course material is designed assuming you have no prior experience developing in a Unix environment, but does assume that you have been exposed to solving Computer Science problems at an introductory level (in any flavor / language). You are expected to put in an appropriate amount of effort to complete the assignments. Ultimately, what you put into the course is what you will get out of it.

GitHub Education
We gratefully acknowledge GitHub Education for an enabling the use of private repositories in support of this course.


01 Feb 2016 » First lecture demo today

The lecture demos can be found at https://github.com/cs2043-sp16/lecture-demos.git. I updated the README.md to explain how we will be using it, as well as how to obtain it. For now, git clone and git pull are the only commands I endorse, we will learn more soon. With that, go ahead and follow the directions there to download the latest changes to the README.md locally to see how it works!

28 Jan 2016 » Having Trouble with the Course VM

Some of you have been unable to import the 64bit VMs I have prepared. On the Getting Started page below Step 5 there is a new section “Help! I can’t get a 64bit VM working”. This will provide you with instructions on how to get a 32bit VM setup. If your computer is particularly old, or you have not been able to configure your BIOS to enable VT-x (for Intel) or Hyper-v (for AMD), try setting up the 32bit VM instead.

28 Jan 2016 » Video Tutorials for VM Customization

The video tutorials for Step 5 on the Getting Started page are up. There are two parts. The first part applies to both VMs, and shows you how to configure the VirtualBox application as well as a little bit about how you use it. Part 2 is separated into Ubuntu and Fedora videos.

27 Jan 2016 » Welcome?

Welcome to CS 2043! The weather may have prevented you from being in class today, but you can still complete HW0. You will need a reliable internet connection to download the Virtual Machine if you need it. Depending on how fast your internet is, you may want to go grab some lunch while it downloads.

All posts »