Eboard 42: Wrapup

You are being recorded and transcribed.

Please grab about eight small white cards (and a pen, if you don’t have one).

Approximate overview

  • Advertisement
  • Preliminaries
  • Questions (non-LA)
  • A class activity, part 1
  • EOCEs
  • A class activity, part 2
  • Additional debriefing
  • LA Questions
  • Final thoughts

We bring you an advertisement from the mothers of pearl.

  • We want to promote inclusion in computer science.
  • We think pair programming is awesome because you can learn from your partner.
  • But some partners are like Sam and make fun of you. That’s bad.
  • We want to interview people who have done pair programming to know what your experience has been like.
  • Remote interviews!
  • We will give you a genuine gift card for participating in a 30–60 minute interview.
  • And you get to talk to these awesome student researchers.
  • You must be rich enough to have a smart phone to participate.

Preliminaries

  • Don’t forget the CS picnic tonight! 5:00pm at Merrill Park West.
  • I have no office hours planned for next week. I will either be working at home or traveling to the hospital. Use Teams messages or email to reach me. If you need to talk, we’ll set up a time to Teams videoconf.
  • Sunday is Mother’s day (in the US). If you are fortunate enough to have a mother with whom you have a good relationship, make sure to thank them.

Upcoming work

  • Saturday, 2024-05-11, 11:00pm, New set of LAs, repeated + old LAs
  • Tuesday, 2024-05-14, 11:00pm, LA redos
  • Friday, 2024-05-17, 5:00pm, LA redos (final chance)

Friday PSA

  • Everything in moderation. Except Friday PSAs.
  • You are awesome, even if you make me ???. Please take care of yourselvs.
  • Consent is necessary (but not sufficient).

Questions (non-LA)

Will there be other opportunities to redo LAs beyond Saturday night’s?

Yes. See the schedule above.

It appears that I have some LAs that are now under review. Some formerly said “talk to Sam”, but I didn’t. What’s going on?

It appears you used ChatGPT for your solution. I’m figuring out what to do.

Does the number of E’s/M’s/I’s on MPs matter at all?

Well, if you have 40 LA’s, which should be a B, and all E’s, you’ll probably end up with a B+.

Is it okay if I have I’s/0’s on some MPs? Will I still get an A for 43 LAs? Yes.

A class activity, part 1

Grab white cards. Write things down. Whee!

EOCEs

https://grinnell.smartevals.com

A comment about the introductory text.

The instructor and mentor will leave the classroom

A class activity, part 2

Intentionally not documented.

Additional debriefing: Portfolio Mastery Grading

Idea: In most cases, instead of asking you to answer particular questions, I ask you to find appropriate evidence that you’ve mastered the topic.

Why Sam likes it:

  • It gives multiple chances; sometimes we don’t understand what we’ve done or don’t understand a concept as well as we thought.
  • Sam doesn’t have to accept mediocre answers.
  • It requires writing. Amazingly, some of your most important communication will be in English (or other natural language) rather than code.
  • It expects you to revisit the work you’ve done.

Other than spreading them out more, what can I do to improve the LAs?

  • Let us just resubmit the same one. Or add a separate Gradescope class. [Sam will experiment with this.]
  • Spread them out more. Force us to do them with solid due dates. And redos.
  • Force us to finish the labs.
  • Take stuff out from the labs so that we have to finish, say, stacks.
  • Explicitly link LAs to assignments (NO)
  • Be a bit more specific about what to answer / a bit more structure.

LA Questions

I’ll gather questions and then try to answer them.

What is the difference between linked structures and lists?

There are many different kinds of linked structures. For example, we implemented (a) linked queues, (b) linked stacks, (c) binary search trees, (d) bit trees, (e) graphs. Of course, we also did linked lists.

Not all lists are linked structures. For example, we’ve implemented (or considered implementing) our List ADT as linked lists and array-based lists. (There’s a weird tree implementation that you might consider in CSC-301.)

Are all lists linked structures?

No.

How should we solve the build libraries LA?

Identify a class or classes you’ve written that might be used (or have been used) in another project.

If they’ve been used in another project, describe how.

If they haven’t been used in another project, descibe how they might be used.

Please be realistic. The following is not realistic.

public class MathUtils {
  public static int add(int x, int y) {
    return x + y;
  }
} // class MathUtils

What’s the difference heaping an array and heapsorting?

Heaping the array is the first part of heapsorting. But a heaped array is not yet sorted. You should be able to pull values out of the heap in order and shove them into the right place in the array.

The concept is similar to what we might call “Priority Queue Sort”. “Add everything to the priority queue. Pull it out in order.”

The big difference is that we can do it all in the same array.

Can I use my hackathon code for “build libraries”?

No. Use something you built in this class.

Can I use the AAC example for ethical reuse given that there’s no license?

Sure. There’s an implied “you can use this” (e.g., the assignment page).

Selection sort wasn’t in the mini-project. Is selection sort somewhere?

Notes on last class?

Made optional.

Can we give pseudocode for heap sort?

Yes.

For the documentation is it okay if I don’t do all the @stuff?

Since I don’t always write them, it’s okay if you don’t write them.

Final thoughts

Not documented because Sam doesn’t want it available on the Interweb.