NanomakerThis course links clean energy sources and storage technology to energy consumption case studies to give students a concept of the full circle of production and consumption.
Computer GraphicsThis course provides introduction to computer graphics algorithms, software and hardware.
Database SystemsThis course relies on primary readings from the database community to introduce graduate students to the foundations of database systems, focusing on basics such as the relational algebra and data model, schema normalization, query optimization, and transactions.
Fundamentals of Program AnalysisThis course offers a comprehensive introduction to the field of program analysis.
Principles and Practice of Assistive Technology6.811: Principles and Practice of Assistive Technology (PPAT) is an interdisciplinary, project-based course,
Ethics and the Law on the Electronic FrontierThis course considers the interaction between law, policy, and technology as they relate to the evolving controversies over control of the Internet.
Machine VisionMachine Vision provides an intensive introduction to the process of generating a symbolic description of an environment from an image.
Machine VisionThis course is an introduction to the process of generating a symbolic description of the environment from an image.
The Battlecode Programming CompetitionThis course is conducted as an artificial intelligence programming contest in Java.
Autonomous Robot Design Competition6.270 is a hands-on, learn-by-doing class, in which participants design and build a robot that will play in a competition at the end of January
Multicore Programming PrimerThe course serves as an introductory course in parallel programming.
A Gentle Introduction to Programming Using PythonThis course will provide a gentle introduction to programming using Python™ for highly motivated students with little or no prior experience in programming computers.
A Gentle Introduction to Programming Using PythonThis course will provide a gentle, yet intense, introduction to programming using Python for highly motivated students with little or no prior experience in programming.
Mobile Autonomous Systems LaboratoryMASLab (Mobile Autonomous System Laboratory), also known as 6.186, is a robotics contest.
Performance Engineering of Software Systems6.172 is an 18-unit class that provides a hands-on, project-based introduction to building scalable and high-performance software systems.
Software StudioThis course on software engineering covers design and implementation of medium-scale software systems, using web applications as a platform.
Laboratory in Software EngineeringThis course introduces concepts and techniques relevant to the production of large software systems.
Strobe Project LaboratoryThis is a laboratory experience course with a focus on photography, electronic imaging, and light measurement, much of it at short duration.
Micro/Nano Processing TechnologyThis course introduces the theory and technology of micro/nano fabrication.
Introductory Digital Systems Laboratory6.111 is reputed to be one of the most demanding classes at MIT, exhausting many students’ time and creativity.
Introductory Digital Systems Laboratory6.111 consists of lectures and labs on digital logic, flipflops, PALs, counters, timing, synchronization, finite-state machines, and microprogrammed systems.
Introductory Analog Electronics Laboratory6.101 is an introductory experimental laboratory that explores the design, construction, and debugging of analog electronic circuits.
Algorithms for Computational BiologyThis course is offered to undergraduates and addresses several algorithmic challenges in computational biology.
Introduction to C++This is a fast-paced introductory course to the C++ programming language.