Skip to main content

CSC 151.03, Class 01: An introduction to algorithms

Overview

  • Preliminaries
    • Notes and news
    • Upcoming work
    • Extra credit
    • Questions
  • Introduction - What is CS?
  • Exercise - An everyday algorithm
  • Debriefing on exercise
  • Friday PSA

Preliminaries

News / Etc.

  • Welcome to CSC 151!
  • I’m Sam (or SamR)
  • Your class mentors are Anh Thu, Ritika, and Zander.
  • You should have received four handouts at the start of class.
  • At the end of class, please restore your station to its original state (or better): Push in your chairs, put the nodepad neatly next to the machine, give your playing card back to the mentors, etc.
  • The CS department maintains a listserv of announcements of events and opportunities. If you would like to be added to that listserv, please send me an email.
  • Warning! I’m losing my hearing. I’m also snarky. The two are independent.
  • Since it’s the first day of class, I’ll be taking attendance.
    • It always takes me a few weeks to learn names. This semester it will take even longer, because I am teaching approximately 150 students.
    • This exercise will probably take ten minutes. That’s okay, I consider it worth the time. I hope you do, too.
    • When I call your name, please stand up and respond with something like the following
      • “Hi, my name is FORENAME SURNAME.”
      • “You can call me PRIMARY NAME.”
      • “If you must address me by surname, you can call me Mr./Ms./Mx./[nothing] SURNAME.”
      • I’m from LOCATION.
      • Optional: “My pronouns are ….”

Upcoming Work

  • Assignment 1 Due Sunday night.
  • Readings (handed out today), due before class Monday.
  • Signed academic honesty policy due in class on Wednesday.
    • If you are uncomfortable signing it, make an appointment to chat with me.

Extra credit (Academic)

  • CS Table, noon, Tuesday, Whale Room (I hope)

Extra credit (Peer)

None yet.

Good things to do

  • Ag Days in Grinnell, Thursday the 31st. More info forthcoming.

Questions

How do I get credit for an extra credit activity?
Send me an email message with a one- or two-paragraph reflection on the event in the body of the message.
How do I get one of my events on the extra credit list?
I prefer that you send me email. But I’ll also add events that you announce in class.
Will these notes appear online?
Yes. But take your own.
What font are you using?
I’ll let you know later.

Introduction - What is CS?

What is computer science? Write down a definition (your own definition). You may be called upon to share it with the class.

  • The study of systems that are used to make computers efficiently solve problems.
    • Systems may be “ways to express programs
    • Systems may be “algorithms” - “Steps taken to solve a problem”
  • People can also execute algorithms
  • We study algorithms, we also study ways to organize data.
  • What is science and why is CS science?
  • Science is the analytical study of an academic or other subject and its applications.
    • Using the scientific method: Hypothesis, design experiment, conduct experiment, analyze, replicate, review, repeat
    • Focusing on the collection and using data

Exercise - An everyday algorithm

Goal: Write a set of unambiguous instructions to help me make a sandwich without causing too much destruction.

Things we have

  • A loaf of bread.
  • A jar of jam.
  • A jar of Wow butter
  • A stack of plates
  • Two knives
  • Some napkins
  • Two spoons
  • Band aids
  • Bags
  1. Get with people with the same number on your playing card.
  2. Introduce yourselves to each other.
  3. Start writing instructions
    • No, you can’t look at the ingredients. I told you what they are.
    • The mentors and I will wander through your groups to peek over your shoulder.
    • One mentor will distract you with another task.
    • We’ll break after ten minutes to see how you are doing.

Note: There are approximately 2.2 pounds per kilogram.

Round one

  • We managed to avoid bread on the floor and bloody hands, but it was close.

Round two

Debriefing on exercise

Come up with five things you might have taken from this exercise.

  • We believe in common sense; computers and cs faculty have no common sense.
  • Make sure you understand your audience - instructions that work for an expert may not work for a beginner.
  • Be specific, include details, don’t make assumptions.
  • Understand what the person/computer knows.
  • Break down big problems into smaller instructions that the computer (or whatever) can understand.
  • If at first you don’t succeed, try try again. (Or: It’s okay to fail; just start again.)
  • Working in teams can be better.
  • Things will go wrong. Laugh when they do.

Friday PSA

You are almost certainly awesome people. Take care of yourselves.