MITx
Software Construction in Java
Learn how to write programs that are safe from bugs, easy to understand, and ready for change.
- MIT
- 14 weeks, 15 hours/week
- Self-paced
- Free course
- Advanced
MITx
Learn how to write programs that are safe from bugs, easy to understand, and ready for change.
MITx
Learn how to write programs that are safe from bugs, easy to understand, and ready for change.
MITx
Machine learning methods are commonly used across engineering and sciences, from computer systems to physics. Moreover, commercial sites such as search engines, recommender systems (e.g., Netflix, Amazon), advertisers, and financial institutions employ machine learning algorithms for content recomm…
MITx
Learn how COVID-19 has impacted the world’s most vulnerable populations, across the Global South, and understand the varied responses and governance issues in self-organized, self-built urban poor communities.
MITx
Data and learning should be at the front and center of healthcare. In this course, we bring together computer scientists, health providers and social scientists collaborating to derive knowledge from data routinely collected in the process of care.
MIT OpenCourseWare
The goal of this course is to investigate with students backgrounds on some of the pivotal events that have shaped our understanding and approach to architecture. Emphasis of discussion will be primarily on buildings and works of individual architects. Canonical architects, buildings and movements…
MIT OpenCourseWare
This project-based course explores new design strategies for social interaction in the computer mediated world. Through weekly readings and design assignments we will examine topics such as: Data-based portraiture Depicting growth, change and the passage of time Visualizing conversations, crowds, a…
MIT OpenCourseWare
Prediction is at the heart of almost every scientific discipline, and the study of generalization (that is, prediction) from data is the central topic of machine learning and statistics, and more generally, data mining. Machine learning and statistical methods are used throughout the scientific wor…
MIT OpenCourseWare
This course is a graduate introduction to natural language processing - the study of human language from a computational perspective. It covers syntactic, semantic and discourse processing models, emphasizing machine learning or corpus-based methods and algorithms. It also covers applications of th…
MIT OpenCourseWare
This course focuses on the algorithms for analyzing and designing geometric foldings. Topics include reconfiguration of foldable structures, linkages made from one-dimensional rods connected by hinges, folding two-dimensional paper (origami), and unfolding and folding three-dimensional polyhedra. A…
MIT OpenCourseWare
Artificial Intelligence (AI), and the algorithmic judgment at its core, is developing at breakneck speed. This version of the popular Ethics for Engineers course focuses on the ethics issues involved in the latest developments of computer science.
MIT OpenCourseWare
This is an accelerated introduction to MATLAB® and its popular toolboxes. Lectures are interactive, with students conducting sample MATLAB problems in real time. The course includes problem-based MATLAB assignments. Students must provide their own laptop and software. This is great preparation for…
MIT OpenCourseWare
This course will highlight common principles that permeate the functioning of networks and how the same issues related to robustness, fragility and interlinkages arise in several different types of networks. It will both introduce conceptual tools from dynamical systems, random graph models, optimi…
MIT OpenCourseWare
This course uses scale models to design environments that orchestrate contrasting material properties and conventional constructional systems to create places that foster specific ways of inhabiting space. It also demonstrates how architecture differs from other forms of design. Intended for studen…
MIT OpenCourseWare
6.858 Computer Systems Security is a class about the design and implementation of secure computer systems. Lectures cover threat models, attacks that compromise security, and techniques for achieving security, based on recent research papers. Topics include operating system (OS) security, capabilit…
MIT OpenCourseWare
This subject explores the varied nature and practice of computation in design. We will view computation and design broadly. Computation will include both work done on the computer (digital computing) and by-hand. Design will include both the process of making designs and artifacts, as well as the d…
MIT OpenCourseWare
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 programmi…
MIT OpenCourseWare
This subject introduces skills needed to build within a landscape establishing continuities between the built and natural world. Students learn to build appropriately through analysis of landscape and climate for a chosen site, and to conceptualize design decisions through drawings and models. This…
MIT OpenCourseWare
This is a graduate course on the design and analysis of algorithms, covering several advanced topics not studied in typical introductory courses on algorithms. It is especially designed for doctoral students interested in theoretical computer science.
MIT OpenCourseWare
Robots today move far too conservatively, using control systems that attempt to maintain full control authority at all times. Humans and animals move much more aggressively by routinely executing motions which involve a loss of instantaneous control authority. Controlling nonlinear systems without…