EBoard 12: Pair programming (Section 1)
Please follow the standard start-of-class routine.
Warning! You are being recorded (and transcribed) (provided the technology
is working correctly).
Approximate overview
- Quiz
- Administrative stuff
- Background on today’s class
- An Exercise
- Debrief of readings
Administrative stuff
Introductory Notes
- Happy Family Weekend. Don’t be sad if your family isn’t here,
but please enjoy them if they are.
- Note that Scamper is now at 4.5.0. If that’s not what you’re running
when you work on the mini-project, you may encounter some issues.
- You may also encounter issues due to the switch from 4.4.0 to 4.5.0.
Some notes on token events
- Only those events I list count for tokens.
- The “peer support” events do not count if you are one of the peers
being supported (e.g., a singer in Singers, a player on a team).
- Please reflect; don’t just report.
- Please try to get these in promptly.
- There’s a limit of three per type of activity (with an exception for
mentor sessions).
Upcoming activities
Scholarly
- Tuesday, 29 September 2026, Noon–1:00 p.m., JRC 224C (I think).
CS Table: Open-source software New
- Sam will forward email with readings.
- Wednesday, 30 September 2026, 8:00–9:30 p.m., HSSC A2231.
Reading as a Way of Life New
- Thursday, 1 October 2026, 11:00 a.m.–Noon, JRC 101.
Scholars’ Convocation: Christian Flemm: Medium Intimacy New
- Friday, 2 October 2026, 4:15–4:45 p.m., HSSC A1231 (the Kernel).
Cory McCarten ‘19: What Math and Data Can (and Cannot) Tell us about
Gerymandering and Voting Rights New
- Friday, 2 October 2026, 5:30–7:30 p.m., Weingart Pavilion.
Pioneer Weekend Kickoff New
Artistic/Cultural
- Any day. Visit the GCMOA for at least 30 minutes.
- Friday, 25 September 2026, 7:30–9:00 p.m., Sebring-Lewis.
Jazz Ensemble: Terry Riley’s “In C”
- Saturday, 25 September 2026, 2:00–3:30 p.m., Sebring-Lewis.
Grinnell Symphony Orchestra Concert
- Saturday, 26 September 2026, 7:30–9:00 p.m., Sebring-Lewis.
Grinnell Singers: My Heart Be Brave
- Thursday, 1 October 2026, 4:00–5:30 p.m., HSSC S1325.
Writers@Grinnell presents a conversation with Poet Maggie Millner New
- Thursday, 1 October 2026, 4:15–5:30 p.m., GCMOA.
Johnnie Chatman: The Artist as Researcher New
- Thursday, 1 October 2026, 4:00–5:30 p.m., HSSC A2231.
Writers@Grinnell presents a reading by Poet Maggie Millner New
- Friday, 2 October 2026, 7:00 p.m., Wall Theatre.
Neverland Players New
- Saturday, 3 October 2026, 2:30 p.m., Wall Theatre.
Neverland Players New
- Saturday, 3 October 2026, 7:00 p.m., Wall Theatre.
Neverland Players New
- Sunday, 4 October 2026, 2:30 p.m., Wall Theatre.
Neverland Players New
Multicultural
- Friday, 25 September 2026, 4:10–5:00 p.m., HSSC N1170.
Middle of Everywhere (Singapore)
- Friday, 2 October 2026, 4:10–5:00 p.m., HSSC N1170
Middle of Everywhere (Somewhere)
Peer
Musical, theatric, sporting, academic, and similar events involving this
section’s students are welcome.
- Saturday, 26 September 2026, 11:00 a.m.–1:00 p.m., Springer Field.
Soccer vs. Ripon
- Saturday, 26 September 2026, 1:00–4:00 p.m., Rosenbloom Field.
Football vs. Beloit
Wellness
- Friday, 25 September 2026, 6:30–8:00 p.m., Bear Dance Studio.
Brazilian Jiu-Jitsu
- Monday, 28 September 2026, 6:30–8:00 p.m., Bear Dance Studio.
Brazilian Jiu-Jitsu
- Monday, 28 September 2026, 8:00–9:00 p.m., Prayer Garage.
Meditation Group
- Tuesday, 29 September 2026, 4:30–6:00 p.m., Bear P103.
Wellness Yoga
- Wednesday, 30 September 2026, 4:15–5:45 p.m., Undisclosed Location.
Forest Bathing
- Wednesday, 30 September 2026, 6:30–8:00 p.m., Bear Dance Studio.
Brazilian Jiu-Jitsu
- Saturday, 10 October 2026, All Day, Somewhere.
Mental Health Training.
- Sign up on Handshake.
- It’s all day, so you will earn 3 tokens.
Misc
- Friday, 25 September 2026, 5:00 p.m.–???, Merrill Park West.
CS Picnic
- I don’t know about the rain plans.
- Wednesday, 30 September 2026, 8:00–9:00 p.m., Science 3820.
Mentor Session
- Thursday, 1 October 2026, 8:00–9:00 p.m., Science 3820.
Mentor Session
- Thursday, 1 October 2026, 4:00–5:30 p.m., CS Commons.
Matcha and Milk Study Break New
Other good things
These do not earn tokens, but are worth your consideration.
- Tuesday, 29 September 2026, 4:00–6:00 p.m., Springer Field.
Women’s Soccer vs. ??? New
- Wednesday, 30 September 2026, 4:00–6:00 p.m., Springer Field.
Men’s Soccer vs. Luther College New
Upcoming work
- Due Sunday, 2026-09-29
- Due Tuesday, 2026-09-29
- On Friday, 2026-09-02
- NEW Quiz/LA on collaboration (identify your classmates)
- NEW Quiz/LA on lists
- MAKEUP Quiz/LA on conditionals.
- MAKEUP Quiz/LA on compose, cut, and section.
- MAKEUP Quiz/LA on tracing.
- MAKEUP Quiz/LA on decomposition.
- MAKEUP Quiz/LA on procedures.
- Due Tuesday, 2026-10-06
Friday PSA
- Please take care of yourselves.
- Moderation is good in everything (except quizzes)
- Consent is essential (and insufficient) (and impossible while impaired)
Questions
Administrative questions
When else can I take a quiz?
Section 2 takes quizzes from 10:30–11:30.
Section 3 takes quizzes from 3:30–4:30.
Was the Web site down at 3 a.m.?
Go to sleep!
Where is Sam’s office?
Science 2806.
Take the Northwest stairs to the second floor. When you exit the
stairwell, turn left. My office is the first door on the left.
Alternately: I’m west of Kistle (last door on the right before the
stairwell).
Why do we use Scamper at Grinnell, rather than a more robust implementation
of Scheme, like DrRacket?
We appreciate the opportunity to add features to Scamper, such as the
tracer. (More are coming in the future.)
MP2 questions
Why is Scamper complaining that l-s and r-s are re-defined?
They weren’t in Scamper 4.4.0, so I added them to the starter code.
They are now in Scamper 4.5.0, so it complains. You can remove them.
There are some claims that rgb can take numbers outside the range
0..255. Is that really the case?
It used to be, but it no longer seems to be the case.
You can add the following to your code and use rgb instead?
;;; (component n) -> integer?
;;; n : number?
;;; Restricts a number to an RGB component
;;; (that is, an integer between 0 and 255)
(define component
(lambda (n)
(round (max 0 (min 255 n)))))
;;; (rgb2 r g b) -> rgb?
;;; r : number?
;;; g : number?
;;; b : number?
;;; Creates an RGB color. If any of the components
;;; are outside the valid range, caps them below at
;;; zero and above at 255.
(define rgb2
(lambda (r g b)
(rgb (component r)
(component g)
(component b))))
Background
- Today is our “talk about pair programming” day.
- In our experience, partnering works imperfectly.
- Some students tend to dominate and are impatient with their partners.
- Some students feel like they don’t know enough and don’t want to
“hold their partner back”.
- We use this day to help make partnering better.
- We will return to these issues throughout the semester.
An exercise
I do not record the initial steps of the exercise.
TPS:
- 1 min: Think to yourself for a minute. What did you hear? What would
you like to talk about? What made you optimistic? What surprised you?
What worried you?
- 3 min: Talk to your partner about it
- n min: Full class consideration
What do you want to talk about?
- There are people who come in to the class very confident with their
abilities, which can make others much less confident.
- Remember that it’s a new language for everyone.
- Modify the curriculum to make it hard for everyone
(Welcome to cut, compose, and section.)
- If you have prior experience, please be humble about it. We are
all learning.
- If you don’t have prior experience, accept that it may take you
a bit longer to learn things.
- It can be socially hard to find a new partner. (It doesn’t feel
socially right to ask people to switch partners.)
- Note: Reading #3 suggests that partnering with your friends often
creates less success.
- It can be hard to tell someone that they are being disrespectful
and rude. (Tell your mentor or Sam; we’ll chat with them.)
- Self-Gov suggests you have a responsibility to help them become
better.
- There are things that make us happy: The professor and mentor are there
to support us and are aware that things happen.
- Stealing the keyboard seems to have been very impactful. Why?
- Implies a lack of ability.
- People can be very aggressive these days.
- Be helpful; don’t just snatch things away
- Remember that your goal is to be helpful.
Reading Reflections
What are the key points from the readings? (TPS)
Pair Programming
- The rubber plant / rubber duck / plast squirrel effect: Explain what
you’re doing to others also helps you. Explaining to a real person
is even more helpful.
Couch Potatoes and Hitchhikers
Diverse Teams
- Value of having groups with different skills.