2 | M | Jan 26 | MLK Day (no class) | ||

T | Jan 27 | Welcome to the circus! | 2.0 - 2.2 | Ex. 1.5.1 - 1.5.11 | |

W | Jan 28 | Names and assignment | 2.3 | Ex. 2.2.1 - 2.2.8 | |

F | Jan 30 | Using functions | 2.4 | Ex. 2.3.1 - 2.3.8 |

3 | M | Feb 2 | Data abstraction and turtles | 3.0 - 3.2 | Ex. 2.4.1 - 3, 5 - 8, 12 |

T | Feb 3 | Turtles and loops | Ex. 3.2.1 - 3 | ||

W | Feb 4 | Functional abstraction | 3.3 | Ex. 3.2.4 - 8 | |

F | Feb 6 | Program style, checkerboard | 3.4 | Ex. 3.3.1, 3 - 5, 7, 8, 12, 13, 15 |

4 | M | Feb 9 | Functions with return values | 3.5 | Ex. 3.4.1, 3; 3.5.1 |

T | Feb 10 | Scope and namespaces | 3.6 | Ex. 3.5.4 - 7, 9, 11 - 13 | |

W | Feb 11 | Exam 1 |
|||

F | Feb 13 | Discrete population dynamics | 4.0 - 4.1 | Ex. 3.6.1, 2; 4.1.1, 3, 4 |

5 | M | Feb 16 | Discrete population dynamics, cont. | Ex. 4.1.7, 13, 18, 19 | |

T | Feb 17 | Visualizing population dynamics | 4.2 | Ex. 4.1.21, 23, 25, 27, 29, 33, 37; 4.2.1, 3, 4 | |

W | Feb 18 | Conditional iteration | 4.3 | ||

F | Feb 20 | Continuous models: radiocarbon dating and epidemics | 4.4 | Ex. 4.3.1 - 3, 5 - 8 |

6 | M | Feb 23 | Random walks | 5.0 - 5.1 | Ex. 4.4.1 - 7 |

T | Feb 24 | Monte Carlo simulation | Ex. 5.1.1 - 3, 6 - 11 | ||

W | Feb 25 | More Monte Carlo simulations | Ex. 5.1.4 - 5 | ||

F | Feb 27 | Back to Booleans | 5.4 - 5.5 | Project 4.4: Wolves and Moose |

7 | M | Mar 2 | Working with text, counting words | 6.0 - 6.2 | Ex. 5.4.8 - 10, 12 - 23; 5.5.2 - 4, 6 |

T | Mar 3 | Encoding strings, text documents | 6.3 | Ex. 6.1.1, 3 - 5, 7 - 9, 11; 6.2.1 - 4 | |

W | Mar 4 | Reading from and writing to files | 6.2.5, 6, 9, 10; 6.3.1, 2, 4, 5 | ||

F | Mar 6 | Analyzing text and DNA | 6.5 - 6.6 | Project 5.2: Escape! Ex. 6.5.1 - 3 |

8 | M | Mar 9 | Analyzing text and DNA | Ex. 6.5.8, 11, 14 - 17; 6.6.1 - 7, 13 - 15, 17, 18, 21 | |

T | Mar 10 | Exam 2 |
|||

W | Mar 11 | Linear-time algorithms | 6.4 | Ex. 6.4.1 - 4 | |

F | Mar 13 | Summarizing data | 8.0 - 8.1 | Project 6.2: Finding genes |

9 | M | Mar 23 | Creating and modifying lists; Reading data | 8.2, 8.4 | Ex. 8.1.1 - 3, 11, 12, 14 |

T | Mar 24 | Frequency, modes, and histograms | 8.3 | Ex. 8.1.4 - 10, 16 - 21 | |

W | Mar 25 | How to solve it; Designing efficient algorithms | 7.1, 8.5 | Ex. 8.2.1 - 5, 13, 14; 8.4.1, 7 | |

F | Mar 27 | No class. Instead, attend a session with Keith Miller on Thursday at 3:00 or Friday at 10:30. | Open Source Software… Free software (optional) |
Project 8.1: Climate change |

10 | M | Mar 30 | Dictionary exercises | Ex. 8.3.1 - 7, 13 | |

T | Mar 31 | Flatland; The Game of Life | 9.0 - 2 | ||

W | Apr 1 | Cellular automata, cont. | Ex. 9.1.1 - 3; 9.2.1, 3, 4, 7, 8 | ||

F | Apr 3 | Project 9.1, 9.2, or 9.3 |

11 | M | Apr 6 | Image filters | 9.3 | |

T | Apr 7 | Fractals | 10.0 - 10.1 | Ex. 9.3.1, 2, 7, 8, 9 | |

W | Apr 8 | Recursion vs. iteration | 10.2 | Ex. 10.1.1 - 5 | |

F | Apr 10 | Designing recursive algorithms | Ex. 10.2.1 - 3, 5, 8, 10 |

12 | M | Apr 13 | Tower of Hanoi | 10.3 | Ex. 10.2.6, 7, 9 |

T | Apr 14 | Divide and conquer; Depth-first search | 10.5 | Ex. 10.5.1 - 4 | |

W | Apr 15 | Review | |||

F | Apr 17 | Exam 3 |

13 | M | Apr 20 | Linear and binary search | 11.0 - 11.1 | Project 10.1 or 10.3 Final project proposal |

T | Apr 21 | Searching recursively | 10.4 | ||

W | Apr 22 | Selection and insertion sorts | 11.2 - 11.3 | Ex. 11.1.2 | |

F | Apr 24 | Merge sort | 11.4 | Ex. 11.2.5, 11.2.6 |

14 | M | Apr 27 | Abstract data types and classes | 13.0 - 13.1 | |

T | Apr 28 | Operators, special methods, and modules | 13.2 - 13.3 | Ex. 13.1.1 - 3, 5 | |

W | Apr 29 | Flocking simulation | 13.4 | ||

F | May 1 | Presentations: Alivia and Meghan, Gabe, Christine and Steven, Ellen and Sophie, Moe, Ryan L. and Trent |
Final project due | ||

M | May 4 | Presentations: Ryan K. and Tyler, Jerrod, Hunt, Bridget and Emily, Christopher, Brant and Riley |
Ex. 13.1.9, 10, 15, 18; 13.2.2, 13.2.9 | ||

R | May 7 | Final Exam (9:00-11:00) |