The following courses have been selected to help you explore Computers and Electronics at MIT.
This course is designed to be an aggressively gentle introduction to programming, and the main focus of the subject will be acquiring programming experience: Instruction in programming fundamentals coupled with lots of practice problems. Programming in the course is done using the MIT Scheme programming language, and the course includes lecture notes, assignments, and a wealth of related tools and resources.
Benjamin Vandiver
None
Lecture Notes
Back to Top
This course introduces students to the principles of computation. Upon completion of 6.001, students should be able to explain and apply the basic methods from programming languages to analyze computational systems, and to generate computational solutions to abstract problems. Included in the course is an online textbook, lecture notes, assignments, projects, and an online tutoring system complete with audio lectures.
Professor Eric Grimson, Professor Trevor Darrell, Professor Peter Szolovits
None
Lecture Notes or the Related Resources page for a link to the online tutoring system
Back to Top
6.002 introduces the fundamentals of the lumped circuit abstraction. Topics covered include: resistive elements and networks; independent and dependent sources; switches and MOS transistors; digital abstraction; amplifiers; energy storage elements; dynamics of first- and second-order networks; design in the time and frequency domains; and analog and digital circuits and applications. Included are a complete set of video lectures, lecture notes, and descriptions of the labs completed in the course.
Professor Anant Agarwal
Differential Equations, Electricity and Magnetism
Video Lectures
Back to Top
This course provides an introduction to the language, libraries, tools and concepts of Java™. Topics covered in the course include: object-oriented programming, primitives, arrays, objects, inheritance, interfaces, polymorphism, hashing, data structures, collections, nested classes, floating point precision, defensive programming, and depth-first search algorithm. Included are lecture notes and other study materials, as well as descriptions and files for the labs and projects in the course, including a MadLibs generator and a simple instant messaging client.
Ray He, Corey McCaffrey, Lucy Mendel, Scott Ostler, Justin Mazzola Paluska, Robert Toscano
None
Lecture Notes and Labs
Back to Top
This course teaches fundamental software development and computational methods for engineering, scientific and managerial applications. Emphasis is focused on object-oriented software design and development. Assignments cover programming concepts, graphical user interfaces, numerical methods, data structures, sorting and searching, computer graphics and selected advanced topics. The Java™ programming language is used. Includes lecture notes, Java™ tutorials, assignments, and exams.
Professor Judson Harward, Professor Steven Lerman
None
Lecture Notes
Back to Top
This course introduces programming languages and techniques used by physical scientists: FORTRAN, C, C++, MATLAB®, and Mathematica®. Emphasis is placed on program design, algorithm development and verification, and comparative advantages and disadvantages of different languages. Includes a full set of lecture notes for the course.
Professor Thomas Herring, Professor Chris Hill
None
Lecture Notes
Back to Top
This course is designed to provide a practical - hands on - introduction to electronics with a focus on measurement and signals. The aim of the course is to provide students with the practical knowledge necessary to work in a modern science or engineering setting. Included are a full set of lecture notes and descriptions of the labs completed in the course.
Professor Manos Chaniotakis, Professor David Cory, Professor Ian Hutchinson
Differential Equations
Lecture Notes
Back to Top
6.111 covers digital design topics such as digital logic, flipflops, PALs, CPLDs, FPGAs, counters, timing, synchronization, and finite-state machines. The semester begins with lectures and problem sets, to introduce fundamental topics before students embark on lab assignments and ultimately, a digital design project. The students design and implement a final digital project of their choice, in areas such as games, music, digital filters, wireless communications, and graphics. Features a collection of pictures, videos, presentations, and reports describing student projects.
Professor Anantha Chandrakasan
Introductory Electronics
The Projects page for pictures, videos, presentations, and reports describing student projects
Back to Top