CS 151: Computational Thinking: Visual Media

Title image Fall 2018

Lab Information for Fall 2018

The lab exercises and projects will be posted here weekly. The work in lab will lead into and be part of the week's project. Labs will count significantly towards participation. Projects will be graded on a scale of 0 to 30, with 20 points awarded for completing the project tasks, 5 points for completing the report, and up to 5 additional points for extending the projects with additional features and clever coding.

Time: Labs W 1:00-2:20, R 2:30-3:50
Place:Lab: Davis 102

Lab Instructor Information

Prof. Stephanie R Taylor
Office: Davis 114
Email: s r taylor _at_ colby _dot_ edu

Office hours: M 10-12, possibly also 4-5, T 10:45-11:45, W 2:30-4:00, R 10:45-11:45 and 4:00-5:00
Any time my door is open


Lab and Project Links

LabProjectDue Date
Equipping yourself for the projectsWhat is a Shape?Tuesday September 11 2018
Python, functions, and parametersA Shape CollectionTuesday September 18, 2018
Loops, conditionals, and command-line argumentsScenes Within ScenesTuesday September 25, 2018
ImagesWarhol ProjectTuesday October 2, 2018
ListsCover PhotosTuesday October 9, 2018
AnimationsAnimated SceneTuesday October 23, 2018
Grammars, Files and InterpretersFractals and TreesTuesday October 30, 2018
ClassesBetter TreesTuesday November 6, 2018
Dictionaries and InheritanceUnique Trees and ShapesTuesday Novermber 13, 2018
Not Quite Straight LinesNon-Photorealistic RenderingTuesday November 27, 2018
3D Turtle3D ScenesFriday December 7, 2018

Learning Goals

The learning goals for the lecture and lab are the same -- both are meant to work together to accomplish the goals for the course as a whole. They are:

  1. Students can read a simple program and correctly identify its behavior
  2. Students can convert a problem statement into a working program that solves the problem.
  3. Students understand abstraction and can break down a program into appropriate procedural and object-oriented components
  4. Students can generate an approximate model of computer memory and describe how an algorithm affects its contents.
  5. Students can communicate the result of their work and describe an algorithm.