---
title: Eboard 01  An introduction to algorithms
number: 01
section: eboards
held: 2017-08-25
---
CSC 151.01, 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 
* Common parts of an algorithm
* Friday PSA

### News / Etc.

* Welcome to CSC 151!
* I'm Sam (or SamR)
* Your class mentors are Hongyuan, Jemuel, and Marli.
* You should have received four handouts at the start of class.
    * A playing card
    * The [CS Department Academic Honesty Policy](http://www.cs.grinnell.edu/academic-honesty-policy)
    * [Assignment 1](../assignments/assignment01)
    * A packet of readings
        * Reading: [Algorithms](../readings/algorithms)
        * Reading: [Linux](../readings/linux)
        * Reading: [The DrRacket Programming Environment](../readings/drracket)
        * Reading: [Beginning Scheme](../readings/beginning-scheme)
* Since it's the first day of class, I'll be taking attendance.  (It will take 
  a few weeks for me to learn all of your names; even more than normal because
  I'm teaching approximately 150 students this semester.)
    * "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 ...
    * Optional: "My pronouns are ...."  
* Disclaimers
    * Sam is slightly hard of hearing.
    * Sam is incredibly snarky. (Sam = Snarky and mean)
* Contact Sam if you would like to be on the department mailing list.

### Upcoming Work

* [Assignment 1](../assignments/assignment.01.html) 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)

* Men's Soccer 4:30 p.m. against Luther Norse on the Soccer Fields

### Good things to do

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

### Questions

How do we get extra credit?
  : Email me a reflective paragraph within two days of the event.

You may not understand what I'm asking, but what kind of Linux does
the CS department run?
  : Sam doesn't really know.  Some flavor of Debian.  It's okay
    if you have no idea what that means.

Introduction - What is CS?
--------------------------

Write down a definition (your definition).  You may be called upon to
share it with the class.

* Putting pieces together differently to create software.
* Learning  how to use computer programming/code to create cool computer
  stuff.
* Studying how the computer works (e.g., how it stores data, gathers
  information from users and presents it to them).  
* Thinking like a computer does.  (Well ... understanding how computers
  process.  They don't think.  Yet.)
* Study of algorithms and data and other stuff
    * We will both learn about how algorithms work and how to build them
    * We will both learn about how the computer organizes data and
      design ways to organize data.
* What's an algorithm?  An algorithm is a set of repeatable and predictable
  instructions that end when they achieve a goal or reach a state.
  The instructions take some input set of stuff, transform the stuff,
  and give you new stuff.

Exercise - An everyday algorithm
--------------------------------

Basic instructions

1. Get with your matching number group.
2. Introduce yourselves to each other.
3. Write unambiguous instructions that teach me how to make a PB&

Stage one

* Sam attempts to make a sandwich.
* We have a crumpled plate.
* We have bread on the floor.
* But we did end up with two pieces of bread on a plate.
* Students return to writing instructions.

Questions

* Who started with the marmalade and who started with the WowButter
* Who pronounces marmalade with a long a and who pronounces it with a
  short a?

Debriefing on exercise 
-----------------------

* Instructions must be unambiguous.  Vague instructions are likely
  to be interpreted in a way differently than you intend.  Don't
  make assumptions.
* Sometimes we repeat things: Spreading Wow! butter and marmalade.
  Opening jars.  Etc.
* Keep instructions small.
* We work better in teams
* It's fun and humorous when things go wrong
* Experiment and change is a part of life.
* Order of instructions matters.

Friday PSA
----------

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