CS 5010: Module 00
Module Overview
During this first week of class, while you might still be working on Problem Set 00 and the rest of your pre-semester checklist, Module 00 will give you an introduction to the course and to the Design Recipe.
This course is not calculus. It's not about getting the right answer, because programming problems have many right answers.
This course is about writing clear, readable, even beautiful programs. Lesson 0.1 presents the goals of this course and the principles we will use to achieve those goals.
This course is organized differently from most courses you have taken. Lesson 0.2 explains how this course is organized and what you should expect. Lesson 0.3 deals with Academic Honesty, what counts as cheating in this course, what happens to students who are caught cheating, and why industry doesn't want to hire students who cheat.
Lessons 0.4 and 0.5 introduce you to the various systems we will use—most notably Racket and GitHub.
Course Map
Here is the course map. In future weeks, this map will reappear, with the week's topics highlighted.
Readings
Read the Prologue and Part I from our textbook. This reading will introduce you to programming in Racket's Basic Student Language, using data of fixed size.
Resources
- John Clements' Racket Videos
- PDFs of these lessons. (These may not be quite in sync with the slides, but we will try to keep them current.)
Lessons and Exercises
- Lesson 0.1: Goals of this Course
- Lesson 0.2: How to Learn in This Course
- Lesson 0.3: Academic Honesty
- Lesson 0.4: An Introduction to Racket
- Lesson 0.5: Introduction to Git
Activities
Please do the following activities:
- Complete the pre-semester checklist of things to do before classes start.
- Do the first 10 exercises in Lesson 0.4: An Introduction to Racket
Problem Set
Problem Set 00 will be posted here on or before September 4 2017.