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.
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.
|1||VideoLecture 01: Goals of the course; what is computation; introduction to data types, operators, and variables||--||4/8/2015||Free||View in iTunes|
|2||VideoLecture 02: Operators and operands; statements; branching, conditionals, and iteration||--||4/8/2015||Free||View in iTunes|
|3||VideoLecture 03: Common code patterns: iterative programs||--||8/5/2016||Free||View in iTunes|
|4||VideoLecture 04: Decomposition and abstraction through functions; introduction to recursion||--||4/8/2015||Free||View in iTunes|
|5||VideoLecture 05: Floating point numbers, successive refinement, finding roots||--||4/8/2015||Free||View in iTunes|
|6||VideoLecture 06: Bisection methods, Newton/Raphson, introduction to lists||--||4/8/2015||Free||View in iTunes|
|7||VideoLecture 07: Lists and mutability, dictionaries, pseudocode, introduction to efficiency||--||4/8/2015||Free||View in iTunes|
|8||VideoLecture 08: Complexity; log, linear, quadratic, exponential algorithms||--||4/8/2015||Free||View in iTunes|
|9||VideoLecture 09: Binary search, bubble and selection sorts||--||4/8/2015||Free||View in iTunes|
|10||VideoLecture 10: Divide and conquer methods, merge sort, exceptions||--||8/5/2016||Free||View in iTunes|
|11||VideoLecture 11: Testing and debugging||--||4/8/2015||Free||View in iTunes|
|12||VideoLecture 12: More about debugging, knapsack problem, introduction to dynamic programming||--||4/8/2015||Free||View in iTunes|
|13||VideoLecture 13: Dynamic programming: overlapping subproblems, optimal substructure||--||4/8/2015||Free||View in iTunes|
|14||VideoLecture 14: Analysis of knapsack problem, introduction to object-oriented programming||--||4/8/2015||Free||View in iTunes|
|15||VideoLecture 15: Abstract data types, classes and methods||--||4/8/2015||Free||View in iTunes|
|16||VideoLecture 16: Encapsulation, inheritance, shadowing||--||4/8/2015||Free||View in iTunes|
|17||VideoLecture 17: Computational models: random walk simulation||--||4/8/2015||Free||View in iTunes|
|18||VideoLecture 18: Presenting simulation results, Pylab, plotting||--||4/8/2015||Free||View in iTunes|
|19||VideoLecture 19: Biased random walks, distributions||--||4/8/2015||Free||View in iTunes|
|20||VideoLecture 20: Monte Carlo simulations, estimating pi||--||4/8/2015||Free||View in iTunes|
|21||VideoLecture 21: Validating simulation results, curve fitting, linear regression||--||4/8/2015||Free||View in iTunes|
|22||VideoLecture 22: Normal, uniform, and exponential distributions; misuse of statistics||--||4/8/2015||Free||View in iTunes|
|23||VideoLecture 23: Stock market simulation||--||4/8/2015||Free||View in iTunes|
|24||VideoLecture 24: Course overview; what do computer scientists do?||--||4/8/2015||Free||View in iTunes|
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.
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.
Regarding the video being washed out, this is probably an artifact of the compression used by Apple for the version that's posted here. If you stream it from MIT's site, it's much clearer. In general, you're much better off watching these lectures through their OCW site, which is where you can also get the problem sets, classroom handouts, quizzes, etc. I'd only use the iTunes downloadable ones for when you'll need to watch them offline.
Viewers also subscribed to
- Category: Computer Science
- Language: English
- http://ocw.mit.edu; Creative Commons Attribution-NonCommercial-ShareAlike 3.0; http://ocw.mit.edu/terms; Image by MIT OpenCourseWare.