EBoard 15: Documentation and Testing

Approximate overview

  • Administrative stuff, including Q&A [10–15 min]
  • Lab [65–70 min]

Administrative stuff

Detour: How do I deal with the stress at this point in the semester?

  • Sam’s bad answer: “Suck it up and deal!”
  • Better answers:
    • Get sleep. (Go to sleep early.) Tell yourself “It’s okay to go to sleep; I’ll be better in the morning.”
    • Spread things out over multiple days.
    • Take breaks; switch gears.
    • If you get behind, talk to your professor.
    • Do something outside of class. (Sometimes more is less.)
    • Get outside / exercise.
    • “C’s get degrees”
    • Eat / take care of yourself / be hygenic
    • Realize that you’re not alone
  • Other bad answers
    • Panic and don’t sleep.
    • If you get behind, skip class.

Introductory Notes

  • New partners and places! (But you knew that.)
  • MP2 returned (for most of you) as well as some labs.
    • Sorry about the delay; there was miscommunication between me and the graders. (It’s my fault; it’s usually my fault.)
  • On that note, please don’t apologize for things that are not your fault. “I’m sorry that I didn’t understand that.”
  • Although today is entitled “Documentation and Testing”, our primary focus today is testing. Let me know if you have questions on the documentation format.
  • If you haven’t already, please read over the comments on SoLAs on [Monday’s eboard][../eboards/eboard14].
  • Things are feeling a bit safer at Grinnell. I’ll do in-person office-hour meetings if you’d like.
  • Don’t forget to DM me questions!
  • Evening tutors are (generally) helpful.
  • Friday we start a new month and a new (extended) topic: Recursion. It’s fine if your first encounters with recursion are ones of confusion.
  • Please try not to show up right at 8:30 a.m.; it creates a backlog.

Attendance

  • Please introduce your partner to the class.
  • Skipped

Upcoming activities

Events

  • Mentor Session Wednesday 7:00 p.m. in the CS commons.
  • CS Extras Thursday 4:00 p.m. in Science 3821: Study Abroad (tailored for CS)
  • Pioneer Weekend introductory talk, 7:00 p.m. Friday, October 1.
  • Pioneer Weekend, October 1–3.

Other good things

  • Follow the football team to places far away for their game.

Upcoming work

Q&A

Can we groan at the stickers?

Yes.

How do I access Teams in MathLAN?

Use the Web version.

Why did you discuss stress in class?

Because I care.

So why do you make us more stressed with lots of work?

Um ….

Lab

Pre Lab

There are channels on Teams to post your tests and your code for part 4 of the lab.

During Lab / Debrief

  • You should only run tests for which you know what the answer should be. If you’re trying to figure out what the procedure does, I consider that an “experiment”.
  • Your tests should only provide valid inputs to procedures. Procedures generally have no guaranteed behavior on invalid inputs.
  • It’s useful/important to consider “edge cases”; things at the boundary of valid inputs.
    • Zero, for integers
    • Negative values, for integers
    • Large values, for integers.
    • Empty lists, for lists
    • Singleton lists.
    • Things that happen at the start of the list, for lists.
    • Things that happen at the end of the list, for lists.
  • In the future, you will find yourself celebrating when your procedures pass all of their tests.
  • We prefer that you write tests directly, rather than setting up test suites. (Someday, I’ll remember to update the reading.)