MIT OCW High School

Introductory Courses Computers and Electronic
  • Autonomous Robot Design Competition 6-270-january-iap-2005
    Description:6.270 is a student-run robotics competition in which students design and build autonomous robots using LEGOs® which compete head-to-head in some form of competition. In this 2005 version of the course, the competition is called Attack of the Drones, and the goal is for students to create robots that will influence the outcome of a Gedi Council election by influencing voters, i.e. pushing colored balls into designated scoring areas. Included is a video of the final rounds of the competition, as well as extensive documentation and lecture notes on the competition and the skills needed to build a robot. Find video of the final competition in the Video section.
  • Building Programming Experience A Lead-In to 6.001 6-090-january-iap-2005
    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.
  • Circuits and Electronics 6-002-spring-2007
    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.
  • Computational Methods of Scientific Programming 12-010-fall-2008
    Description: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.
  • Design and Manufacturing I 2-007-spring-2009
    Description:This course is designed to help students develop skills as design engineers by designing and building mechanical robots that will compete head-to-head in the mother of all robot contests. In this Spring 2005 version of the course the competition was called Tic Tech Toe and required students to build robots that would pick up foam blocks and place them in a scoring grid that resembles a tic tac toe board as well as Simmons Hall, the newest MIT undergraduate dormitory. Included in the course are documentation and lecture notes, as well as full video of the competition on the Projects page.
  • Introduction to Computers and Engineering Problem Solving1-00-fall-2005
    Description: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.
  • Introduction to Electronics, Signals, and Measurement 6-071j-spring-2006
    Description: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.
  • Introductory Digital Systems Laboratory 6-111-spring-2006
    Description: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.
  • Java Preparation for 6.170 6-092-january-iap-2006
    Description: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.
  • Mobile Autonomous Systems Laboratory 6-186-january-iap-2005
    Description:MASLab is a student-run robotics competition in which teams of three or four students design and build sophisticated robots which must explore an unknown playing field and perform a series of tasks. These robots are completely autonomous, meaning they operate, calculate, and plan without any human intervention. Included in this course is extensive documentation of the details of the contest, as well as pictures of the robots and the final reports of each team in the competition. Go to the Lecture Notes to get information about the competition, then check out the students" designs on the Projects page.
  • Robocraft Programming Competition 6-370-january-iap-2005
    Description:As a student-run competition held during MIT's Independent Activities Period (IAP) month, 6.370 offers teams of students the opportunity to engage in head-to-head video game battles by designing and programming their own virtual robots using Java™. Players implement their own strategies and artificial intelligence in Capture-the-Flag matches that utilize four different classes of robots in a quest for dominance. Go to the Projects page to see more details about the competition and the software used in the course. Having some experience with JAVA™ programming is beneficial for understanding this material.
  • Structure and Interpretation of Computer Programs 6-001-spring-2005
    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.