CSC151.01 2015S, Class 11: Testing Your Procedures, Revisited
=============================================================

_Overview_

* Preliminaries.
    * Admin.
    * Upcoming Work.
    * Extra Credit.
    * Questions.
* Lab
* Reflection

Preliminaries
-------------

### Admin

* Continue partners!
* Mentor session Monday at 7:00 p.m.
* Friday PSA.
* We'll try to to keep quizzes closer to ten minutes today.

### Upcoming Work

* [Exam 1](../assignments/exam.01.html).
    * Required prologue due TONIGHT.
    * Exam due in electronic form next Tuesday.
    * Exam due in printed form next Wednesday.
    * Required epilogue due next Wednesday night.
    * Free one day extension
* Lab writeup for lab 10, due Monday, Problem 9
  <http://bit.ly/151-2015S-lab10>
* Reading for Monday:
    * [Design and Color](../readings/design-and-color-reading.html)

### Extra Credit Opportunities

#### Academic 

* Friday, February 6, 12:00 noon, Science 3821, CS Table, Summer Research
  Opportunities for CS Students
* TEDx Grinnell, sometime in February.

#### Miscellaneous

* Read and comment on the new _Grinnell College Guide to Preventing,
  Reporting, and Responding to Sexual Harassment and Sexual 
  Misconduct_

#### Peer Support (Morning Section)

* Track and Field, Saturday at 10 a.m., the Bear Fieldhouse.  The
  best race (800 meter) is at noon.
* Julia's radio show, "The Hot Box".  Wednesday night/Thursday morning 
  1:00-2:00 a.m.  Next week's theme is to be determined.
* Swimming, Conference Championships, February 13-15, The Osgood

### Questions

_I've spent twenty minutes on one problem and haven't finished.  Can
 I get partial credit?_

> I'm sorry that I have to do the demo.

_I don't know whether or not I can ask you this question._

> You can.  I can choose whether or not to answer.  Evidence is you'll
  get some kind of answer.

_You have lots of bananas left over.  Can I take them home and make
 banana bread or fried bananas or something?_

> Certainly.  

### Quiz!

Lab
---

Debrief
-------

_What did you take as the main learning goals of this lab?_

> Fixing code to pass one test sometimes breaks other tests.  Don't
  throw away tests!

> Make good tests.

> Test making can be a tedious process.

> Subtle things can go wrong.  You need to think about those subtleties.

> Some errors are from programmers who have not completely thought through
  the problem.

> Some are from people who have thought carefully but missed one model.

> Some are from malicious instructors.  (Or people who think very differently
  about the problem.)

_If we want to be fairly comprehensive (for this example), what are some things we should check?_

> Different shapes: circle, square, non-square rectangle, non-circular
  ellipse, compound

> Different sizes of shapes: unit, large, small

> Different coordinates to shift to.  Negative and positive, whole numbers
  vs. exact rationals vs. inexact reals, Zero

> Different coordinates to shift from.  See above.

> Different directions: Left, up, right, down (all combinations?), not at
  all.

> Make sure that you know where the starting object is.
