Outline for April 1, 2014

Reading: §1

  1. About the class
    1. Instructors and TAs
    2. Class web site, handouts
    3. Smartsite and submitting homework
    4. Homework, grading, and extra credit
  2. What is a computer?
    1. Computer programs
    2. Execution
  3. Software and hardware
    1. Functional description of a computer
    2. How the software controls the hardware
    3. How the hardware limits the software
  4. Algorithms
    1. Precision and completeness
    2. What is computable
    3. What is intractable
  5. Programming languages
    1. High-level languages: semantics and syntax
    2. Low-level languages: assembly language, machine language
    3. Compilers, assemblers, interpreters
    4. Source code, object code
    5. Libraries
  6. Python
    1. What is Python?
    2. Why Python for this class?
  7. How to write a program; example is making change
    1. Goal and general algorithm idea
    2. Representing data and basic program structure
    3. Translating this into a programming-like language
    4. Translating that into Python

You can also obtain a PDF version of this. Version of March 31, 2014 at 4:07PM