Difference between revisions of "CSC111 Class Page 2014"

From dftwiki3
Jump to: navigation, search
(First Half)
(First Half)
Line 105: Line 105:
 
[[Image:CollegeHallSnow02052014.jpg|right|150px]]
 
[[Image:CollegeHallSnow02052014.jpg|right|150px]]
 
** <font color="magenta">THERE '''WILL BE''' CLASS AND LAB TODAY!  I AM ALREADY IN FORD HALL --DT</font>
 
** <font color="magenta">THERE '''WILL BE''' CLASS AND LAB TODAY!  I AM ALREADY IN FORD HALL --DT</font>
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 +
<br />
 
[[Image:FulghumAllINeedToKnow.png|right|150px]]
 
[[Image:FulghumAllINeedToKnow.png|right|150px]]
 
** Discussion of the  [http://maven.smith.edu/~jfrankli/111s08/pairProgramming2000.pdf pair-programming article] in class.<br /><videoflash>DbNoNoHyfDc</videoflash><br />
 
** Discussion of the  [http://maven.smith.edu/~jfrankli/111s08/pairProgramming2000.pdf pair-programming article] in class.<br /><videoflash>DbNoNoHyfDc</videoflash><br />

Revision as of 10:54, 5 February 2014

--D. Thiebaut (talk) 09:58, 7 January 2014 (EST)


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




Prof and TAs

Dominique Thiébaut email
Dept. Computer Science
Ford Hall, 356.
Telephone: 3854
Office hours Monday, 2-4 p.m., Tuesday 1-3 p.m., and by appointments

 



To see when and where TAs are available this week, click here.


...


Weekly Schedule


First Half


Week Topics Reading
Week 1
1/27
  • Monday
    • A look at the syllabus
    • The Python integrated environment, named Idle
    • Python is free and can be downloaded from the Python download page
    • Example of a Python program

    • What is a programming language? The idea of a Syntax
    • Python keywords
    • A simple "Hello World!" program in Python
    • Errors
  • Wednesday
    • Computer architecture: Processor and memory. Their different roles.
    • The concept of an imperative language.
    • Python is a language. Difference between interpreted languages and compiled languages.
    • Getting into the logic of programming. This week we'll "program as an exercise in logic intuition," rather than learning the basics.
    • Playing with Python.
      • variables
 x = 3
 name = "hello"
      • keywords: and del from not while as elif global or with assert else if pass yield break except import print class exec in raise continue finally is return def for lambda try
      • Printing strings. What's a string?
      • Printing numbers. What's a number? What is the difference between "3" and 3?
      • Understanding the difference between an editor and the shell (console) windows
      • Looping through a list and outputting formated information
  • Friday
    • Comments on Lab 1
    • 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
      • Types of values: int, float, string, char
    • The concept of an algorithm (Section 1.7 in textbook)
      • Must be unambiguous, executable, and terminating.
      • Example: calculating the return on a bank account with a yearly interest rate.
    • Review of the week: some of the concepts covered: variables, literals, integers, reals, strings, functions, statements, comments




  • Reading
    • This week, you should read Chapter 1 in Python for Everyone, up to Section 1.6, included.
    • Read the article on pair programming. We will discuss it in class during the second week of class.
Week 2
2/3
  • Saturday/Sunday: Moodle Quiz on Chapter 1. Go to Moodle, select CSC111, and locate the Quiz in the "Week 1-Chapter 1" section. (If I have let you in the class, but you are not officially registered yet, please send me an email (dthiebaut@smith.edu) so that I can add you to the moodle roster. )
  • Monday
    • Message from student liaisons
    • The two-letter Id needed to submit your program is available here!
    • Meet Guido van Rossum

    • Variables:
      • They are labels for boxes containing information. Boxes in memory.
      • Different types. Can be combined together.
      • Values can be assigned to them with =
      • Operators: + - * / //  %
      • Teller Machine example: given some amount of $ to withdraw from the machine, figure out the number of $20-, $10-, $5- and $1-bills. Here's the program we finished with in class.


  • Wednesday:
CollegeHallSnow02052014.jpg
    • THERE WILL BE CLASS AND LAB TODAY! I AM ALREADY IN FORD HALL --DT









FulghumAllINeedToKnow.png
    • Discussion of the pair-programming article in class.

    • Continue with ATM/Teller machine example: The importance of pseudo-code, and going one step at a time.
    • Changing a float into an int, and vice versa
    • Functions: print(), abs(), trunc() (predefined)
    • Strings and string methods (documentation)
    • User input with input(). Revisiting the ATM program

</br />

  • Friday



  • Reading
    • Read the article on pair programming. We will discuss it in class on Wednesday.
    • Finish reading Chapter 2 by the end of this week.
    • Read Chapter 3 up to Section 3.6 (not included) before Monday 2/10.
Week 3
2/10
  • Monday
  • Wednesday
  • Friday



  • Reading
Week 4
2/17
  • Monday
  • Wednesday: RALLY DAY
  • Friday



  • Reading
Week 5
2/24
  • Monday
  • Wednesday
  • Friday



  • Reading
Week 6
3/3
  • Monday
  • Wednesday
  • Friday



  • Reading
Week 7
3/10
  • Monday
  • Wednesday
    • in-class MIDTERM EXAM
  • Friday



  • Reading


Spring Break



Second Half


Week Topics Reading
Week 9
3/24
  • Monday
  • Wednesday
  • Friday



  • Reading
Week 10
3/31
  • Monday
  • Wednesday
  • Friday



  • Reading
Week 11
4/7
  • Monday
  • Wednesday
  • Friday



  • Reading
Week 12
4/14
  • Monday
  • Wednesday
  • Friday



  • Reading
Week 13
4/21
  • Monday
  • Wednesday
  • Friday



  • Reading
Week 14
4/28
  • Monday
  • Wednesday
  • Friday: Final Take-Home EXAM



  • Reading

Links and Resources



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

Linux

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.
  • All the programs of Zelle's Python textbook

Software

  • Using SSH on Windows, Linux, or on a Mac with OS X

Useful Math









Back To Main Page