CSC111 Class Page 2015

From dftwiki3
Revision as of 06:39, 1 April 2015 by Thiebaut (talk | contribs) ( )
Jump to: navigation, search

--D. Thiebaut (talk) 15:00, 13 January 2015 (EST)



Main Page | Syllabus | Weekly Schedule | Links & Resources |Piazza





 


Week 1 Jan 26    


Topics: Introduction, Python, Idle, Piazza, Moodle submission Lab/Hw Reading

  • Wednesday
    • Introduction to Idle, the integrated development environment (IDE) for the class
    • Playing with our programming language, Python. The idea this week is to use intuition to put some Python code together and make it generate different outputs
    • We will use these concepts, that will be covered in details starting next week.
      • variables
      • strings of characters
      • loops
    • Introduction to the Lab (Wednesday and Thursday afternoon)
    • Lecture notes

  • Friday
    • Review of Lab 1
    • Introduction to Homework 1, Q&A
    • Go over a few problems, and understand how the def statement works.
    • Camels.png
      Variables
    • Rules for labeling a variable
      • CamelCase for regular variables, uppercase for constants
      • Thinking of a variable as a box, or drawer.
      • Variables can switch contents
    • Lecture notes




 


Week 2 Feb 2    


Topics: Chapter 2: variables, definite loops, input Lab/Hw Reading
  • Monday: snow day!

  • Wednesday
    • Variables: simultaneous assignment
    • Where do variables live?
    • Programming: from problem to solution: an iterative process
    • definite loops:
      • looping through items in a list
      • the range() function: allows iteration through various lists of numbers
    • Input: getting information from the user (keyboard)
    • Lecture notes

  • Read Chapter 2 in Zelle.




 


Week 3 Feb 9    


Topics: Arithmetic operators, math functions, main(). Lab/Hw Reading
  • Monday 2/9
  • 4 minutes from Grier's video: When computers were human. Start at time=28m12s.


WomenCalculatingWWII.jpg
Women at work tabulating during World War II (Shorpy)

  • Program organization: from now on, we will be using a main() function.
  • Operators: * / + - ** // % abs()
  • The type() function
  • tellerMachine.py example.
  • Formatting numbers (see Section 5.8.2 in Zelle), and example program

  • Wednesday 2/11

  • Friday 2/13
  • Review of Lab 3
  • Introduction to Homework 3
  • What are bits?

This section is only visible to computers located at Smith College

  • You may find this paper more appropriate as an introduction to the field, or this one, as well.





 


Week 4 Feb 16    


Topics: Lists, Strings, Mutable vs. Immutable lists. File Processing. Lab/Hw Reading
  • Monday
    • Introduction to indexing in strings and lists.
    • Introduction to slicing strings (and list)
    • Lecture notes

  • Wednesday: Rally Day, no class, no labs.
  • Thursday: no labs.

  • Friday
    • Strings an Lists, continued
    • Strings are immutable. Lists are not.
    • Introduction to the concept of objects and methods: String methods
    • Lecture notes
  • Chapter 5 in Zelle.




 


Week 5 Feb 23    


Topics: Lab/Hw Reading
  • Monday: 2/23
  • Files (End of Chapter 5)

  • Wednesday:2/25

  • Friday: 2/27
  • Functions that return values
  • Writing a program that generates "personalized" poems (quotes?) for everybody in the class. (This program is available on Moodle, as it contains private information)
  • Lecture notes
  • Chapter 6 in Zelle: Functions




 


Week 6 Mar 2    


Topics: Lab/Hw Reading
  • Monday 3/2

  • Wednesday 3/4

  • Friday 3/6


  • Homework #6
  • Lab #6 will be given out in class, and is a series of review questions to prepare for the midterm. You can find it on this page.
  • Finish reading Chapter 6 (functions) in Zelle.
  • Read Chapter 7 (If statements) in Zelle.




 


Week 7 Mar 9    


Topics: Lab/Hw Reading
  • Monday 3/9

  • Wednesday 3/11
    • In Class Midterm (closed books, closed computers)

  • Friday 3/13
  • Indefinite loops are covered in Chapter 8.
  • Graphics is covered in Chapter 4.




 


Week 8 Mar 16    


Topics: Lab/Hw Reading
  • SPRING BREAK


 

 




 


Week 8 Mar 23    


Topics: Lab/Hw Reading
  • Monday: 3/23
  • Review of Loops and Booleans
  • Robustness of input
  • While True loops
  • break and continue
  • Lecture notes

  • Wednesday: 3/25

  • Friday: 3/27
  • Review Lab 8
  • Man in Hole stories.
  • An introduction by Kurt Vonnegut
  • We're reviewing Chapter 8 in Zelle this week.




 


Week 9 Mar 30    


Topics: Lab/Hw Reading
TaxiCabCSC111.png
  • Monday: 3/30

  • Wednesday: 4/1
  • Creating a Cat class
  • Default string representation: __str__()
  • A list of cats
  • Reading cats from a CSV file
  • Searching a list of objects




 


Week 10 Apr 6    


Topics: Lab/Hw Reading
  • Monday 4/6

  • Wednesday 4/8

  • Friday 4/10
  • Guest lecture: Helene Visentin, French literature. Mapping Paris.
  • Homework
  • Lab
  •  




 


Week 11 Apr 13    


Topics: Lab/Hw Reading
  • Monday 4/13
  • Wednesday 4/15
  • Friday 4/17: Guest lecture
  • Homework
  • Lab
  •  




 


Week 12 Apr 20    


Topics: Lab/Hw Reading
  •  
  • Homework
  • Lab
  •  




 


Week 13 Apr 27    


Topics: Lab/Hw Reading
  • Monday 4/27
  • Guest Lecture: Prof. Dana Leibsohn, Art Dept.

  • Wednesday 4/29

  • Friday 5/1
  • Homework
  • Lab
  •  


Links and Resources


Graphics


  • Zelle's graphic library can be found here
  • A page with color names supported by the graphics library.


On-Line Python books


  • disocovermagazine.com blog. Check out the answers posted by many readers. They contain some interesting links that you may find useful!


Python keywords


The list of all the reserved words of the Python language
and del for is raise assert elif from lambda return break else global not try class except if or while continue exec import pass yield def finally in print.


Python Programs in Textbook


  • All the programs of Zelle's Python textbook


Misc


  • If you decide to work in pairs for the homework assignments, you need to follow the protocol for 'pair programming' as discussed in this article.