EBoard 14: Documentation and Local bindings

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

Approximate overview

  • Administrative stuff [~10 min]
  • Q&A [~10 min]
  • Quiz [~10 min]
  • Lab [~60 min]

Administrative stuff

Notes and News

  • You know the drill on evening tutoring.
  • You’ve probably figured this out already, but I update the site enough that you should do a forced reload on pages regularly, particularly the course schedule.
  • If I don’t respond to an email or Teams message within 24 hours, it probably got lost in the morass of email / Teams messages. Ask again!
  • The two-day lab was still too-dang long. I apologize. Next time, it will be planned as a two-day lab and I’ve cut the last two problems.
  • I’ve updated the 151 library again. Please update your copy. (It never hurts to try that each day.)
    • You may find it helpful to update before the quiz.
  • When we get to the lab, just write "; DONE IN CLASS; SAM SAYS TO SKIP THIS" for exercise 3.

Pairing introductions

Some things you should do at the start of your meeting. Feel free to suggest others.

  • Introductions
    • Ask questions of new partners!
    • What else is going on in your life?
  • Work style
    • I prefer to talk through a problem before I start coding.
    • I like typing random things until one of them works.
    • I’m not comfortable trying a piece of code until I know that it works.
    • I like trying small bits of code out in the interactions pane as I solve the problem.
    • I’m not comfortable unless I do all the work myself.
    • ….
    • Given that, how do we work together?
  • Strengths
    • I’m good at math
    • I exude calmness
    • I’m really good at celebrating when we succeed
    • I’m not afraid to ask questions
    • I’m good at coming up with tests
  • I struggle with …
  • Negotiate at the beginning: When it hits 4:30 do you …
    • Plan to continue until 4:50 …
    • Meet again later …
    • Submit with you have with the note “This is as far as we got; Sam says that’s fine.”
    • Split up (in that case, you may find it appropriate to do the former).

General principles

  • Be decent human beings.
  • Pause for your partner; don’t tell them character by character.

Upcoming activities and other token earning things

Events

  • CS Extras, 5pm, TODAY, 18 February, in Events Channel on CS Team. Random Higher-Order Network Generation
  • Get your free food from Chuong Garden Thursday or Friday. (See note from Dean Marzluff on Announcements Channel.)
    • Yes, you have to write about the experience.
    • If you aren’t on campus, suggest an alternative.
  • CS Table Monday at noon.
  • Journalism Ethics Workshop, 7:00-8:30 pm, Thursday, March 4 and Tuesday, March 9

Upcoming work

I’m not sure if all of these links are correct. Let me know if any are not.

Mini-project 3

  • Goal write programs that examine text.

Attendance

  • Our wonderful mentors will take attendance by looking at the the list of also-wonderful people here.

Notes from the reading responses

;;; (substring str start end) -> string?
;;;   str : string?
;;;   start : integer?, a 0-based index (<= 0 start (length str))
;;;   end : integer?, a 0-based index (<= 0 end (length str))
;;; Returns the substring of `str` denoted by the start index `start` 
;;; (inclusive) and end index `end` (exclusive). Index of start must 
;;; be smaller than index of end. 

We should change that last sentence to something like (start <= end). Or (<= start end).

And length should be string-length.

Q&A

Why are we using regular expressions?

Regular expressions allow us to express ways we might want to search texts. Eventually, we can use them with other Racket things to at a variety of potentially interesting aspects of texts (e.g., how often do words appear in near proximity to each other).

Will you add the rex procedures to the reference page?

Sure. It will take a bit.

Quiz

  • Students should head off to lab after the quiz.
  • DON’T FORGET TO NEGOTIATE THE START OF LAB

Lab