EBoard 35: Wrapup

This class will be recorded! Its use is limited to members of the class. Please do not share with others.

Approximate overview

  • Preliminaries (3:00-3:10)
  • Praise for peers (3:10-3:30)
  • “The subject matter of the course” (3:30-3:45)
  • Evaluation Forms (3:45-4:15)
  • Final comments from SamR (4:15-4:30)

Administrative stuff

Notes and News

  • Peter-Michael Osera notes that there is space in MAT/CSC-208, Discrete Structures. If you plan to major in CS, you need to take 208 or MAT-218 (which has a much longer prereq sequence). Plus, PM is awesome! You can email him or DM him questions.
    • Ben Concurs
    • Stella is suspicious

Upcoming activities and other token-earning things

Events

  • Sunday, Mentor Session at 1pm.
  • Monday, Mentor Session at 7pm.

Upcoming work

  • SoLA 4 due 3:30pm Saturday
    • The sooner you do it, the sooner you’ll get grades back (I hope).
  • SoLA 5 released on Monday, closes 11:59 pm Wednesday evening.
  • Class on Wednesday during Exam Time for those with last-minute questions

Q&A

How do the autograder scores contribute to my score?

They don’t. Sam just looks at the E/M/R/I

“Round down”

Autograders don’t exist to give grades.

Do we still have evening tutors from now until Wednesday?

Sam will check in.

The Subject Matter(s) of the Class

  • EOCE: “ helped me learn _the subject matter of the class._"
  • Sam as (equally snarky) young faculty member: “But how will my students know?”
  • Response: “You’ll tell them.”
  • Sam: I believe in active learning; “a guide on the side, not a sage on the stage”.

Side note: If the response were from the current SamR: “If you’d done your job, perhaps they’d know.”

Anyway, we’re going to collaboratively develop a list of things you may have learned in CSC 151 this semester. I tend to group them into categories.

  • I’ll describe the categories and give an example for each.
  • You’ll enter some more ideas in the chat.

Problem Solving

General strategies for approaching problems, computational and otherwise.

  • E.g., We’ve learned to decompose a complex problem into smaller problems (subroutines) and then combine those solutions back into the broader solution. For example, in learning how to make some kinds of sandwiches, we might also solve the problem of “spread stuff on bread”.

The core of CS: Algorithms and data structures

CS is the study of algorithms and data structures; ways to manipulate data and ways to organize data.

  • E.g., We’ve learned about the “List” data structure, which organizes information in sequential order and which you can visit element-by-element using car and cdr.

Functional programming

CSC 151 uses an approach that we term “functional programming” and that is somewhat distinct from other approaches.

  • E.g., “Functions are first-class values”: They can be parameters to other functions, they can be returned by other functions. For example, o is a function that takes two or more unary functions as parameters and returns a new function that applies the functions in sequence.

Program and software design

We’ve also learned a bit about how you build software (or at least how you might build software).

  • E.g., Document your code so that you and others can understand it.
  • Test

Scheme and Racket

We’ve grounded most of that learning in the Scheme/Racket programming language. Along the way, we’ve learned a bit about Scheme.

  • E.g., Scheme’s evaluation strategy: Evaluate the arguments, then apply the procedure.
    • Some exceptions: if, and, or, quote, cond, lambda, …
  • E.g., A bunch of procedures, car, cons, square, sqr, …

General skills

I would hope that most Grinnell classes teach you things beyond the basic disciplinary subject matter.

  • E.g., Practice thinking on your feet (or your behind).
  • Be polite to others.

And beyond

Students tell me that they learn perspectives on the world from my class.

  • E.g., “The people around you are awesome.”
  • E.g., “Computers are sentient and malicious. If things go wrong, it’s probably not your fault.”
  • E.g., “There’s never a time when snark is inappropriate.”
  • E.g., “It doesn’t hurt to ask if you can get extra credit for donuts.”
  • E.g., “You can survive insane amounts of work.”

Course evaluation / official

Evaluation forms may be found at https://grinnell.smartevals.com.

End-of-course ratings enable you to give responsible feedback for your professors, and the information you provide enters into future contract reviews. The agree/disagree responses will be tallied to produce frequency reports. The instructor will be able to review your unidentified comments within the electronic course evaluation system. Please note that the scale starts with “Strongly Disagree” at the top. Be careful not to inadvertently reverse your responses. Please provide comments but do not write your name in the comment boxes. Instructors receive the unidentified, completed forms only after grades have been submitted to the registrar.

See you in twenty minutes or so!

Final comments

Some apologies

  • Workload. It’s supposed to be heavy (College dictates average of 24 hpw), but it sounds like it was heavier than that for some of you. I’m happy for offline comments on the workload and how to make it more manageable (or comments that it was within the guidelines).
  • Snarkiness. It’s who I am, but it’s not necessarily comfortable for everyone.
  • Slowness of grading vs. speed of term. Looking for ways to fix that the next time I teach. (Failed.)
  • Things didn’t always work as intended (some instructions were vague and unclear, or insufficiently tested).
  • Chaos of Gradescope. Suggestions welcome.
  • It feels like there are others I was planning …

Some background

  • The last day of class is hard as an instructor.

The more standard final comments

  • Thank you for making this an awesome class.
  • Take the time to share appreciation with others.
  • Stay in touch!
  • Take more CS.