CSC 151 2019S, Class 03: Getting started with Racket
Overview
- Preliminaries
- Notes and news
- Upcoming work
- Extra credit
- Questions
- Lab
- Debrief (if time)
Preliminaries
News / Etc.
- Happy Monday! I hope you had a wonderful weekend.
- When you arrive
- Grab a card with the name of a computer.
- Determine where the computer is.
- Put the card in the jar.
- Sit by the computer.
- When there are two people at the same computer, introduce yourselves.
- Please turn in your academic honesty policy if you have not done so
already.
- In case it wasn’t clear from the syllabus and such, I will randomly
call on students in class. I do this for multiple reasons.
- It avoids bias (conscious and unconscious). Since I’m using cards,
I am unlikely to ask more questions of people from certain groups.
- It builds skills. For better or for worse, many people expect you
to express your ideas, even when you have not formulated them
completely. Practice in a low-stakes environment should help.
- It can remind you that you are not alone in confusion or
misunderstanding. While I may sometimes force you to guess, you
can feel free to answer “I’m not sure” when I call on you.
- It sometimes incentivizes you to ask questions. If you know
that I might ask you questions, you may be more inclined to ask
me questions.
- And more.
- If being called on in class causes severe anxiety, let me know and
we’ll figure out a way to adjust to support you.
- We will be doing image-making operations in lab today and Wednesday.
If you have visual or other impairments that might affect your
ability to complete labs that involve image making, let me know and
I’ll work on alternate problems for you.
- The department maintains a mailing list which we use to distribute
information about things that may be of interest to people who like
CS: Talks, summer internships, etc. If you would like to be added,
please send me a message.
- You will have a substitute teacher on Wednesday. I’ll be off learning
about Fairness, Accountability, and Transparency in Artificial Intelligence.
(If all goes well, I’ll bring back a cool assignment for later in
the semester.)
- If you feel unsafe coming to class on Wednesday, send me an email message
and I will treat it as an excused absence. You are, however, responsible
for making up the work on your own.
- When you send me questions about assignments, please title them
things like “QUESTION on Assignment 2”. It makes it much easiere
for me to identify them as questions.
- I’ve updated the due time for lab writeups; writeups are due at the
start of class.
- Our mentors will have weekly mentor sessions, most likely on Thursday
evenings. You can attend mentor sessions for either this section or
the other (or both).
- Mentors: Have you decided on times?
- We also have helpful people in these labs in the evening (Sun-Thu).
Upcoming work
- Readings (available online), due before class Wednesday.
- Assignment 2 due Tuesday night.
- Your partner is whoever was at the computer with you on Friday.
- Quiz Friday!
- A bit of XML
- Scheme basics (write something small, read something small, show steps)
- Includes procedures
- Might include “Sketch the image described by this code”
- Lab writeup due before class on Wednesday.
Email your
shapes.rkt
file to csc151-01-grader@grinnell.edu with
a subject of “CSC 151.01 Lab Writeup for Class 3 (Your Names)”,
substituting your names.
- Congratulations! You’re class seems to be more on top of extra-credit
activities than any I’ve had in some years. (Of course, I wish at least
one of you had gone to the art opening.)
- Herman Melville Meets Agatha Christie, Tuesday, 4:15p, Burling 1st
Floor Lounge.
- Kindness through gratitude, Monday and Tuesday 11-1, outside DHall.
Other good things
Questions
Do we have to create an HTML document that looks like the S&B page?
Nope. Your goal is to come up with XML tags and attributes that you
would use to describe the page. Content and organization, not the
output, is your primary goal. For example,
<newspaper title="The Scarlet and Black" date="...">
<page number="1">
...
<advertisement border="frilly" company="Spalding">
</advertisement>
</page>
</newspaper>
But there are lots of different possibilities of how to arrange
things. Do you use attributes or tags? Do you focus on columns
or articles? Etc.
Can we attach the XML files to our email message for assignment 2?
Yes.
We did not come close to finishing lab in class on Friday. What are
the expectations for labs we don’t finish?
We try to design labs that you can finish in class. We won’t always
succeed. We will generally encourage you to finish the lab on your own.
However, Friday’s lab did not require that you do everything. You
are expected to do the daily lab writeup (when assigned).
I downloaded DrRacket on my Mac and the shapes are not working.
Make sure that you have the racket language (you’ll see #racket
at the top of the definitions pane.
You need to write (require 2htdp/image)
at the top of your
definitions pane and click “Run”.
Can some of the text in the document be in attributes?
Certainly.
Should we be doing CSS stuff on assignment?
Probably not. But it is good to mark paragraphs in an extended
article.
Can this be automated?
Not yet. Some parts, perhaps.
Flash cards this week?
Nope. Not until next week.
What’s the purpose of regexp-match*
?
It looks for pieces of a text (string) that match a particulary pattern.
#px"/[a-z]*s[a-z]*/"
is “strings that contain an s” We’ll talk
more about them next week.
Lab
The procedure max
finds the largest value in a group of values.
Debrief
Writeup:
- Email your
shapes.rkt
file to csc151-01-grader@grinnell.edu with
a subject of “CSC 151.01 Lab for Class 3 (Your Names)”, substituting
your names.
Using laptops
- Please do not have DrRacket open on your laptop.
- You may, however, use your laptop (or tablet, or cell phone) for reference.
- You will find it useful to open the lab on the same computer as you
are using DrRacket, since that allows you to copy and paste.