This course is an introduction to Java programming and software engineering. It …
This course is an introduction to Java programming and software engineering. It is designed for those who have little or no programming experience in Java and covers concepts useful to 6.005. The focus is on developing high quality, working software that solves real problems. Students will learn the fundamentals of Java, and how to use 3rd party libraries to get more done with less work. Each session includes one hour of lecture and one hour of assisted lab work. Short labs are assigned with each lecture. This course is offered during the Independent Activities Period (IAP), which is a special 4-week term at MIT that runs from the first week of January until the end of the month.
This course offers an introduction to the interdisciplinary study of videogames as …
This course offers an introduction to the interdisciplinary study of videogames as texts through an examination of their cultural, educational, and social functions in contemporary settings. Students play and analyze videogames while reading current research and theory from a variety of sources in the sciences, social sciences, humanities, and industry. Assignments focus on game analysis in the context of the theories discussed in class. Class meetings involve regular reading, writing, and presentation exercises. No prior programming experience required. Students taking the graduate version complete additional assignments.
Introduction to the Modeling and Analysis of Complex Systems introduces students to …
Introduction to the Modeling and Analysis of Complex Systems introduces students to mathematical/computational modeling and analysis developed in the emerging interdisciplinary field of Complex Systems Science. Complex systems are systems made of a large number of microscopic components interacting with each other in nontrivial ways. Many real-world systems can be understood as complex systems, where critically important information resides in the relationships between the parts and not necessarily within the parts themselves. This textbook offers an accessible yet technically-oriented introduction to the modeling and analysis of complex systems. The topics covered include: fundamentals of modeling, basics of dynamical systems, discrete-time models, continuous-time models, bifurcations, chaos, cellular automata, continuous field models, static networks, dynamic networks, and agent-based models. Most of these topics are discussed in two chapters, one focusing on computational modeling and the other on mathematical analysis. This unique approach provides a comprehensive view of related concepts and techniques, and allows readers and instructors to flexibly choose relevant materials based on their objectives and needs. Python sample codes are provided for each modeling example.
The aim of this video lesson is to teach students about the …
The aim of this video lesson is to teach students about the different topologies of computer networks and how they function. The approach that is used is highly correlated with common knowledge about weddings and the local Malay culture associated with weddings. Students should be able to relate the act of delivering food to a large crowd of people to the basic principles of network topologies and the method of data transfer within each type of topology. The lesson will begin in a classroom with students working in small groups, answering assigned questions. Teaching aids such as color cards will be used. One student from each group will be appointed as the wedding event manager, and she/he will have to discuss and act out with group members in order to answer more challenging questions. At the end of the lesson, students will be asked to come up with their own version of a hybrid computer network topology. The lesson concept taught here not only educates students on computer topologies, but also introduces students to an important cultural perspective of Malaysia. Above all, this video is designed to assist students with their study of Computer Literacy in schools. The lesson will take up to 60 minutes to complete. Materials needed include: 10 red cards representing waitresses; 10 green cards representing waiters; 10 blue cards representing tables in the hall; a sketch book; and classroom tables and chairs.
This course focuses on introducing the language, libraries, tools and concepts of …
This course focuses on introducing the language, libraries, tools and concepts of Java®. The course is specifically targeted at students who intend to take 6.170 in the following term and feel they would struggle because they lack the necessary background. Topics 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.
This book is a guide to JavaScript, a scripting language widely used …
This book is a guide to JavaScript, a scripting language widely used in web pages and web applications such as email applications. JavaScript is not to be confused with Java, which is quite a separate language for creating stand-alone applications.
Development of programs containing a significant amount of knowledge about their application …
Development of programs containing a significant amount of knowledge about their application domain. Outline: brief review of relevant AI techniques; case studies from a number of application domains, chosen to illustrate principles of system development; discussion of technical issues encountered in building a system, including selection of knowledge representation, knowledge acquisition, etc.; and discussion of current and future research. Hands-on experience in building an expert system (term project).
This course is a core electrical engineering computer science subject at MIT. …
This course is a core electrical engineering computer science subject at MIT. It introduces concepts and techniques relevant to the production of large software systems. Students are taught a programming method based on the recognition and description of useful abstractions. Topics include: modularity; specification; data abstraction; object modeling; design patterns; and testing. Several programming projects of varying size undertaken by students working individually and in groups.
Experimental investigations of speech processes. Topics: measurement of articulatory movements; measurements of …
Experimental investigations of speech processes. Topics: measurement of articulatory movements; measurements of pressures and airflows in speech production; computer-aided waveform analysis and spectral analysis of speech; synthesis of speech; perception and discrimination of speechlike sounds; speech prosody; models for speech recognition; speech disorders; and other topics. Recommended prerequisites: 6.002 or 18.03. Alternate years.
This case study analyzes the reasoning processes and types of information that …
This case study analyzes the reasoning processes and types of information that we need to embed in collaborative software systems in order for these systems to demonstrate intelligent behavior and allow us to interact with them in a natural way. The central character of the case, Kate, is a college student who lives in an "intelligent" dorm room that converses with her as a friend would. Developed to introduce the ideas of collaboration and natural language understanding in an upper-division course in artificial intelligence, the case can be adapted for non-technical audiences for use in developing critical thinking skills.
Principles, techniques, and algorithms in machine learning from the point of view …
Principles, techniques, and algorithms in machine learning from the point of view of statistical inference; representation, generalization, and model selection; and methods such as linear/additive models, active learning, boosting, support vector machines, hidden Markov models, and Bayesian networks.
Deriving a symbolic description of the environment from an image. Understanding physics …
Deriving a symbolic description of the environment from an image. Understanding physics of image formation. Image analysis as an inversion problem. Binary image processing and filtering of images as preprocessing steps. Recovering shape, lightness, orientation, and motion. Using constraints to reduce the ambiguity. Photometric stereo and extended Gaussian sphere. Applications to robotics; intelligent interaction of machines with their environment. Machine Vision provides an intensive introduction to the process of generating a symbolic description of an environment from an image. Lectures describe the physics of image formation, motion vision, and recovering shapes from shading. Binary image processing and filtering are presented as preprocessing steps. Further topics include photogrammetry, object representation alignment, analog VLSI and computational vision. Applications to robotics and intelligent machine interaction are discussed.
Based on their experience exploring the Mars rover Curiosity and learning about …
Based on their experience exploring the Mars rover Curiosity and learning about what engineers must go through to develop a vehicle like Curiosity, students create Android apps that can control LEGO MINDSTORMS(TM) NXT robots, simulating the difficulties the Curiosity rover could encounter. The activity goal is to teach students programming design and programming skills using MIT's App Inventor software as the vehicle for the learning. The (free to download) App Inventor program enables Android apps to be created using building blocks without having to actually know a programming language. At activity end, students are ready to apply what they learn to write other applications for Android devices.
Topics vary from year to year. Topic for Fall: Eigenvalues of random …
Topics vary from year to year. Topic for Fall: Eigenvalues of random matrices. How many are real? Why are the spacings so important? Subject covers the mathematics and applications in physics, engineering, computation, and computer science. This course covers algebraic approaches to electromagnetism and nano-photonics. Topics include photonic crystals, waveguides, perturbation theory, diffraction, computational methods, applications to integrated optical devices, and fiber-optic systems. Emphasis is placed on abstract algebraic approaches rather than detailed solutions of partial differential equations, the latter being done by computers.
This course covers elementary discrete mathematics for computer science and engineering. It …
This course covers elementary discrete mathematics for computer science and engineering. It emphasizes mathematical definitions and proofs as well as applicable methods. Topics include formal logic notation, proof methods; induction, well-ordering; sets, relations; elementary graph theory; integer congruences; asymptotic notation and growth of functions; permutations and combinations, counting principles; discrete probability. Further selected topics may also be covered, such as recursive definition and structural induction; state machines and invariants; recurrences; generating functions.
The focus of the course is on medical science and practice in …
The focus of the course is on medical science and practice in the age of automation and the genome, both present and future. It includes an analysis of the computational needs of clinical medicine, a review systems and approaches that have been used to support those needs, and an examination of new technologies.
Presents the main concepts of decision analysis, artificial intelligence, and predictive model …
Presents the main concepts of decision analysis, artificial intelligence, and predictive model construction and evaluation in the specific context of medical applications. Emphasizes the advantages and disadvantages of using these methods in real-world systems and provides hands-on experience. Technical focus on decision analysis, knowledge-based systems (qualitative and quantitative), learning systems (including logistic regression, classification trees, neural networks), and techniques to evaluate the performance of such systems. Students produce a final project using the methods learned in the subject, based on actual clinical data. (Required for students in the Master's Program in Medical Informatics, but open to other graduate students and advanced undergraduates.)
Modeling of microelectronic devices, and basic microelectronic circuit analysis and design. Physical …
Modeling of microelectronic devices, and basic microelectronic circuit analysis and design. Physical electronics of semiconductor junction and MOS devices. Relation of electrical behavior to internal physical processes; development of circuit models; and understanding the uses and limitations of various models. Use of incremental and large-signal techniques to analyze and design bipolar and field effect transistor circuits, with examples chosen from digital circuits, single-ended and differential linear amplifiers, and other integrated circuits. Design project. 6.012 is the header course for the department's "Devices, Circuits and Systems" concentration. The topics covered include: modeling of microelectronic devices, basic microelectronic circuit analysis and design, physical electronics of semiconductor junction and MOS devices, relation of electrical behavior to internal physical processes, development of circuit models, and understanding the uses and limitations of various models. The course uses incremental and large-signal techniques to analyze and design bipolar and field effect transistor circuits, with examples chosen from digital circuits, single-ended and differential linear amplifiers, and other integrated circuits.
Web development is an evolving amalgamation of languages that work in concert …
Web development is an evolving amalgamation of languages that work in concert to receive, modify, and deliver information between parties using the Internet as a mechanism of delivery.
While it is easy to describe conceptually, implementation is accompanied by an overwhelming variety of languages, platforms, templates, frameworks, guidelines, and standards. Navigating a project from concept to completion often requires more than mastery of one or two complementing languages, meaning today’s developers need both breadth, and depth, of knowledge to be effective.
This text provides the developer with an understanding of the various elements of web development by focusing on the concepts and fundamentals through the examples within, providing a foundation that allows easier transition to other languages and a better understanding of how to approach their work. The reader will be introduced to topics in a manner that follows most project development methods, from initial conceptualization and design through front end development, back end development, and introducing additional concepts like accessibility and security, while focusing on responsive design techniques. Each section of the text includes opportunities to practice the material and assess increased knowledge after examining the topics.
Detailed study of trends in the development of applications for mobile devices, …
Detailed study of trends in the development of applications for mobile devices, focusing on the unique design and deployment issues that must be taken into consideration when developing applications for mobile devices.
No restrictions on your remixing, redistributing, or making derivative works. Give credit to the author, as required.
Your remixing, redistributing, or making derivatives works comes with some restrictions, including how it is shared.
Your redistributing comes with some restrictions. Do not remix or make derivative works.
Most restrictive license type. Prohibits most uses, sharing, and any changes.
Copyrighted materials, available under Fair Use and the TEACH Act for US-based educators, or other custom arrangements. Go to the resource provider to see their individual restrictions.