M1: Introduction to Programming

This first module provides an introduction to basic programming concepts and skills.

Textbook Chapters

The chapters corresponding to this module are:

A PDF version of the textbook is also available here.

You will be asked to log in with your CNetID before you can see the textbook.

Please note that the lectures do not assume you have read the book chapters ahead of time. Unless you prefer to get a feel for the material ahead of a lecture, we suggest you instead plan to read the book chapters after the lectures, as a way to ensure you understood the material covered in the lectures, as well as to dig deeper into topics that we only cover at a high level in the lectures.

Must-Reads (before you start the coursework)

In the Linux Tutorial, we asked you to work from a CSIL machine or through the Virtual Desktop. Once you have completed the Linux Tutorial, you may want to familiarize yourself with an additional way of doing your work in this class:

Visual Studio Code is a code editor that you can run on your own computer, but which can connect to a CS server using a protocol called SSH, allowing you to conveniently access and edit the files in your CS home directory.

Next, as you work through the exercises and programming assignments, it is likely you will have questions along the way, or will get completely stuck at some point. When that happens, it is important that you ask for help, instead of feeling like you have to “power through” the issue. Please make sure you read the following pages to understand the support channels available in this class, as well as how to use them effectively:

Note

Office Hours will begin during the 2nd week of the quarter. We will post additional details before then.

Finally, the following page explains in more detail how to approach your learning experience in this class:

Team Tutorial

Team Tutorial #1: Lists and Loops

Please take a moment to read the introduction to the Team Tutorial, even if you’re not ready to start working on the tutorial. The introduction explains the purpose of these tutorials and how to get the most of them.

Also, don’t forget that the Team Tutorial is not graded, but we nonetheless encourage you to complete it before Programming Assignment #1 is released.

Short Exercises

Short Exercises #1, due Wednesday, Oct 6 at 4:30pm CDT

Please note that, while Short Exercises will usually take only 1-2 hours to complete, you should allocate more time to work on this first set of exercises, as you will need to spend some time familiarizing yourself with the mechanics of testing and submitting your work.

Most notably, you will have to complete our Git Tutorial to be able to fetch a series of instructor files, and to submit your work. That said, please note that you will be able to start working on the exercises before you complete that tutorial.

Programming Assignment

Programming Assignment #1, due Friday, Oct 15 at 4:30pm CDT