Introduction to Computer Science and Programming
by Eric Grimson, John Guttag
To listen to an audio podcast, mouse over the title and click Play. Open iTunes to download and subscribe to iTunes U collections.
Description
This subject is aimed at students with little or no programming experience. It aims to provide students with an understanding of the role computation can play in solving problems. It also aims to help students, regardless of their major, to feel justifiably confident of their ability to write small programs that allow them to accomplish useful goals. The class will use the Python™ programming language.
| Name | Description | Released | Price | ||
|---|---|---|---|---|---|
| 1 | VideoLecture 01: Goals of the course; what is computation; introduction to data types, operators, and variables | This subject is aimed at students with little or no programming experience. It aims to provide students with an understanding of the role computation can play in solving problems. It also aims to help students, regardless of their major, to feel justifiably confident of their ability to write small programs that allow them to accomplish useful goals. The class will use the Python™ programming language. | 8/20/09 | Free | View In iTunes |
| 2 | VideoLecture 02: Operators and operands; statements; branching, conditionals, and iteration | This subject is aimed at students with little or no programming experience. It aims to provide students with an understanding of the role computation can play in solving problems. It also aims to help students, regardless of their major, to feel justifiably confident of their ability to write small programs that allow them to accomplish useful goals. The class will use the Python™ programming language. | 8/20/09 | Free | View In iTunes |
| 3 | VideoLecture 03: Common code patterns: iterative programs | This subject is aimed at students with little or no programming experience. It aims to provide students with an understanding of the role computation can play in solving problems. It also aims to help students, regardless of their major, to feel justifiably confident of their ability to write small programs that allow them to accomplish useful goals. The class will use the Python™ programming language. | 8/20/09 | Free | View In iTunes |
| 4 | VideoLecture 04: Decomposition and abstraction through functions; introduction to recursion | This subject is aimed at students with little or no programming experience. It aims to provide students with an understanding of the role computation can play in solving problems. It also aims to help students, regardless of their major, to feel justifiably confident of their ability to write small programs that allow them to accomplish useful goals. The class will use the Python™ programming language. | 8/20/09 | Free | View In iTunes |
| 5 | VideoLecture 05: Floating point numbers, successive refinement, finding roots | This subject is aimed at students with little or no programming experience. It aims to provide students with an understanding of the role computation can play in solving problems. It also aims to help students, regardless of their major, to feel justifiably confident of their ability to write small programs that allow them to accomplish useful goals. The class will use the Python™ programming language. | 8/20/09 | Free | View In iTunes |
| 6 | VideoLecture 06: Bisection methods, Newton/Raphson, introduction to lists | This subject is aimed at students with little or no programming experience. It aims to provide students with an understanding of the role computation can play in solving problems. It also aims to help students, regardless of their major, to feel justifiably confident of their ability to write small programs that allow them to accomplish useful goals. The class will use the Python™ programming language. | 8/20/09 | Free | View In iTunes |
| 7 | VideoLecture 07: Lists and mutability, dictionaries, pseudocode, introduction to efficiency | This subject is aimed at students with little or no programming experience. It aims to provide students with an understanding of the role computation can play in solving problems. It also aims to help students, regardless of their major, to feel justifiably confident of their ability to write small programs that allow them to accomplish useful goals. The class will use the Python™ programming language. | 8/20/09 | Free | View In iTunes |
| 8 | VideoLecture 08: Complexity; log, linear, quadratic, exponential algorithms | This subject is aimed at students with little or no programming experience. It aims to provide students with an understanding of the role computation can play in solving problems. It also aims to help students, regardless of their major, to feel justifiably confident of their ability to write small programs that allow them to accomplish useful goals. The class will use the Python™ programming language. | 8/20/09 | Free | View In iTunes |
| 9 | VideoLecture 09: Binary search, bubble and selection sorts | This subject is aimed at students with little or no programming experience. It aims to provide students with an understanding of the role computation can play in solving problems. It also aims to help students, regardless of their major, to feel justifiably confident of their ability to write small programs that allow them to accomplish useful goals. The class will use the Python™ programming language. | 8/20/09 | Free | View In iTunes |
| 10 | VideoLecture 10: Divide and conquer methods, merge sort, exceptions | This subject is aimed at students with little or no programming experience. It aims to provide students with an understanding of the role computation can play in solving problems. It also aims to help students, regardless of their major, to feel justifiably confident of their ability to write small programs that allow them to accomplish useful goals. The class will use the Python™ programming language. | 8/20/09 | Free | View In iTunes |
| 11 | VideoLecture 11: Testing and debugging | This subject is aimed at students with little or no programming experience. It aims to provide students with an understanding of the role computation can play in solving problems. It also aims to help students, regardless of their major, to feel justifiably confident of their ability to write small programs that allow them to accomplish useful goals. The class will use the Python™ programming language. | 8/20/09 | Free | View In iTunes |
| 12 | VideoLecture 12: More about debugging, knapsack problem, introduction to dynamic programming | This subject is aimed at students with little or no programming experience. It aims to provide students with an understanding of the role computation can play in solving problems. It also aims to help students, regardless of their major, to feel justifiably confident of their ability to write small programs that allow them to accomplish useful goals. The class will use the Python™ programming language. | 8/20/09 | Free | View In iTunes |
| 13 | VideoLecture 13: Dynamic programming: overlapping subproblems, optimal substructure | This subject is aimed at students with little or no programming experience. It aims to provide students with an understanding of the role computation can play in solving problems. It also aims to help students, regardless of their major, to feel justifiably confident of their ability to write small programs that allow them to accomplish useful goals. The class will use the Python™ programming language. | 8/20/09 | Free | View In iTunes |
| 14 | VideoLecture 14: Analysis of knapsack problem, introduction to object-oriented programming | This subject is aimed at students with little or no programming experience. It aims to provide students with an understanding of the role computation can play in solving problems. It also aims to help students, regardless of their major, to feel justifiably confident of their ability to write small programs that allow them to accomplish useful goals. The class will use the Python™ programming language. | 8/20/09 | Free | View In iTunes |
| 15 | VideoLecture 15: Abstract data types, classes and methods | This subject is aimed at students with little or no programming experience. It aims to provide students with an understanding of the role computation can play in solving problems. It also aims to help students, regardless of their major, to feel justifiably confident of their ability to write small programs that allow them to accomplish useful goals. The class will use the Python™ programming language. | 8/20/09 | Free | View In iTunes |
| 16 | VideoLecture 16: Encapsulation, inheritance, shadowing | This subject is aimed at students with little or no programming experience. It aims to provide students with an understanding of the role computation can play in solving problems. It also aims to help students, regardless of their major, to feel justifiably confident of their ability to write small programs that allow them to accomplish useful goals. The class will use the Python™ programming language. | 8/20/09 | Free | View In iTunes |
| 17 | VideoLecture 17: Computational models: random walk simulation | This subject is aimed at students with little or no programming experience. It aims to provide students with an understanding of the role computation can play in solving problems. It also aims to help students, regardless of their major, to feel justifiably confident of their ability to write small programs that allow them to accomplish useful goals. The class will use the Python™ programming language. | 8/20/09 | Free | View In iTunes |
| 18 | VideoLecture 18: Presenting simulation results, Pylab, plotting | This subject is aimed at students with little or no programming experience. It aims to provide students with an understanding of the role computation can play in solving problems. It also aims to help students, regardless of their major, to feel justifiably confident of their ability to write small programs that allow them to accomplish useful goals. The class will use the Python™ programming language. | 8/20/09 | Free | View In iTunes |
| 19 | VideoLecture 19: Biased random walks, distributions | This subject is aimed at students with little or no programming experience. It aims to provide students with an understanding of the role computation can play in solving problems. It also aims to help students, regardless of their major, to feel justifiably confident of their ability to write small programs that allow them to accomplish useful goals. The class will use the Python™ programming language. | 8/20/09 | Free | View In iTunes |
| 20 | VideoLecture 20: Monte Carlo simulations, estimating pi | This subject is aimed at students with little or no programming experience. It aims to provide students with an understanding of the role computation can play in solving problems. It also aims to help students, regardless of their major, to feel justifiably confident of their ability to write small programs that allow them to accomplish useful goals. The class will use the Python™ programming language. | 8/20/09 | Free | View In iTunes |
| 21 | VideoLecture 21: Validating simulation results, curve fitting, linear regression | This subject is aimed at students with little or no programming experience. It aims to provide students with an understanding of the role computation can play in solving problems. It also aims to help students, regardless of their major, to feel justifiably confident of their ability to write small programs that allow them to accomplish useful goals. The class will use the Python™ programming language. | 8/20/09 | Free | View In iTunes |
| 22 | VideoLecture 22: Normal, uniform, and exponential distributions; misuse of statistics | This subject is aimed at students with little or no programming experience. It aims to provide students with an understanding of the role computation can play in solving problems. It also aims to help students, regardless of their major, to feel justifiably confident of their ability to write small programs that allow them to accomplish useful goals. The class will use the Python™ programming language. | 8/20/09 | Free | View In iTunes |
| 23 | VideoLecture 23: Stock market simulation | This subject is aimed at students with little or no programming experience. It aims to provide students with an understanding of the role computation can play in solving problems. It also aims to help students, regardless of their major, to feel justifiably confident of their ability to write small programs that allow them to accomplish useful goals. The class will use the Python™ programming language. | 8/20/09 | Free | View In iTunes |
| 24 | VideoLecture 24: Course overview; what do computer scientists do? | This subject is aimed at students with little or no programming experience. It aims to provide students with an understanding of the role computation can play in solving problems. It also aims to help students, regardless of their major, to feel justifiably confident of their ability to write small programs that allow them to accomplish useful goals. The class will use the Python™ programming language. | 8/20/09 | Free | View In iTunes |
| Total: 24 Episodes |
Customer Reviews
lecture review
Good explanations, but when the instructor starts to do examples using a projector, the screen is to washed out to see what he is typing.
Amazing resource
Well-organized, great professors, challenging but not too difficult -- this course has been an amazing experience. I have been programming a little bit for many years (a small amount of PHP and Perl), but I had never officially taken a course in programming. I wanted to learn Python for a new project I was thinking about doing, and so I figured I would give this course a chance since it is taught in Python. Very glad I did it. The professors explain everything very clearly (and in a casual, fun way), and the homework is very well thought out. It has changed the way I think about programming, and I am looking forward to taking the Algorithms course next. One note: people have complained about the video quality (in particular, the computer projection), but it is not a big deal. The first lecture has some issues, but they are basically ironed out after that.
Display
The fact python colors commands like print plus the low picture quality make for hard to see examples. Five stars for simply allowing me the opportunity to learn from such a great school. Minus one personal star for projector recording fail in a class about computer programming.










