You’d think the syllabus and schedule would provide all the info you need for a course, wouldn’t you? But we’ve found over the years that it can be helpful to provide additional information. To ensure that you read the information, some CS faculty may even give you an assignment. What else is there? Let’s see.

Teaching, grading, and such

On teaching and learning
A bit of philosophy (more or less).
More details on grading processes (and a bit on the underlying philosophy).
A few notes on the grading platform we’re using.
Instructions related to redoing mini-projects.
Information on gaining and spending tokens.
Mastery Grading, Revisited
Yet another explanation of the mastery grading approach.

Other important issues

Accommodations and adjustments
Policies and practices (and why I use two terms)
Accessibility of Web pages
Why I try to keep pages accessible and who to report to when they’re not.
Academic integrity
A long document that attempts to explain key issues of academic integrity in this course and in the discipline.
AI programming assistants
Some notes on why I discourage the use of AI programming assistants in my introductory classes.
Metacognitive reflections (Pre-reflections and Post-reflection
Advance warning of the questions we will ask before and after each mini-project and SoLA.
Notes on taking notes
Some tips on taking notes.
Tips on working more productively
Some tips from students, mentors, and instructors.


Spam from Sam
My attempt to log all the email I sent this semester.

Some Scheme Stuff

Some important terminology.
The Zen of Booleans
Expressing some Boolean expressions more concisely.
SamR’s Style Guide for Racket
Opinions and expectations on what your code should look like.
Tracing procedure calls
An example that explains some issues related to the tracing of procedure calls, intended for students who have difficulty with the first or second tracing LA.
Tracing alphabetically-first
An exploration of some definitions of a recursive procedure.

Other versions of the course

These also aren’t strictly handouts, but we didn’t have a better place for them. The list is incomplete.

CSC-151 2024 Spring (Perlmutter)
Professor Perlmutter’s Spring 2024 version. Our “partner class”, as it were.
CSC-151 2023 Fall (Rebelsky)
Professor Rebelsky’s Fall 2023 version, which uses a slightly different image library. This was the first image-based version since Spring 2017.
CSC-151 2023 Fall (Autry)
The other Fall 2023 section of the course, which had a different theme (music) and a different version of Scheme (Scamper).
CSC-151 2022 Spring (Rebelsky)
An earlier offering of 151, focusing on digital humanities.
CSC-151 2017 Spring (Rebelsky)
The last version of the media computation course, which is the spiritual predecessor of this course.