Search Resources

599 Results

View
Selected filters:
  • Computer Science
Advanced Algorithms, Fall 2008
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating

" 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."

Subject:
Computer Science
Material Type:
Full Course
Provider:
MIT
Provider Set:
MIT OpenCourseWare
Author:
Goemans, Michel
Date Added:
01/01/2008
Advanced Circuit Techniques, Spring 2002
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating

Following a brief classroom discussion of relevant principles, each student completes the paper design of several advanced circuits such as multiplexers, sample-and-holds, gain-controlled amplifiers, analog multipliers, digital-to-analog or analog-to-digital converters, and power amplifiers. One of each student's designs is presented to the class, and one may be built and evaluated. Associated laboratory emphasizing the use of modern analog building blocks. Alternate years.

Subject:
Computer Science
Material Type:
Full Course
Provider:
MIT
Provider Set:
MIT OpenCourseWare
Author:
Roberge, Jim
Date Added:
01/01/2002
Advanced Topics in Cryptography, Spring 2003
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating

Recent results in cryptography and interactive proofs. Lectures by instructor, invited speakers, and students. Alternate years. The topics covered in this course include interactive proofs, zero-knowledge proofs, zero-knowledge proofs of knowledge, non-interactive zero-knowledge proofs, secure protocols, two-party secure computation, multiparty secure computation, and chosen-ciphertext security.

Subject:
Computer Science
Material Type:
Full Course
Provider:
MIT
Provider Set:
MIT OpenCourseWare
Author:
Micali, Silvio
Date Added:
01/01/2003
Adventures in Advanced Symbolic Programming, Spring 2009
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating

" This course covers concepts and techniques for the design and implementation of large software systems that can be adapted to uses not anticipated by the designer. Applications include compilers, computer-algebra systems, deductive systems, and some artificial intelligence applications. Topics include combinators, generic operations, pattern matching, pattern-directed invocation, rule systems, backtracking, dependencies, indeterminacy, memoization, constraint propagation, and incremental refinement. Substantial weekly programming Assignments and Labs are an integral part of the subject. There will be extensive programming Assignments and Labs, using MIT/GNU Scheme. Students should have significant programming experience in Scheme, Common Lisp, Haskell, CAML or some other "functional" language."

Subject:
Computer Science
Material Type:
Full Course
Provider:
MIT
Provider Set:
MIT OpenCourseWare
Author:
Sussman, Gerald
Date Added:
01/01/2009
Algorithms for Computer Animation, Fall 2002
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating

In-depth study of an active research topic in computer graphics. Topics change each term. Readings from the literature, student presentations, short assignments, and a programming project. Animation is a compelling and effective form of expression; it engages viewers and makes difficult concepts easier to grasp. Today's animation industry creates films, special effects, and games with stunning visual detail and quality. This graduate class will investigate the algorithms that make these animations possible: keyframing, inverse kinematics, physical simulation, optimization, optimal control, motion capture, and data-driven methods. Our study will also reveal the shortcomings of these sophisticated tools. The students will propose improvements and explore new methods for computer animation in semester-long research projects. The course should appeal to both students with general interest in computer graphics and students interested in new applications of machine learning, robotics, biomechanics, physics, applied mathematics and scientific computing.

Subject:
Computer Science
Literature
Material Type:
Full Course
Provider:
MIT
Provider Set:
MIT OpenCourseWare
Author:
Popovic, Jovan
Date Added:
01/01/2002
Ambient Intelligence, Spring 2005
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating

This course will provide an overview of a new vision for Human-Computer Interaction (HCI) in which people are surrounded by intelligent and intuitive interfaces embedded in the everyday objects around them. It will focus on understanding enabling technologies and studying applications and experiments, and, to a lesser extent, it will address the socio-cultural impact. Students will read and discuss the most relevant articles in related areas: smart environments, smart networked objects, augmented and mixed realities, ubiquitous computing, pervasive computing, tangible computing, intelligent interfaces and wearable computing. Finally, they will be asked to come up with new ideas and start innovative projects in this area.

Subject:
Computer Science
Material Type:
Full Course
Provider:
MIT
Provider Set:
MIT OpenCourseWare
Author:
Maes, Patricia
Date Added:
01/01/2005
Animated Division Stories (Problem-Based Interactive Learning)
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating

Students will work with a partner to write, solve, check, and animate a division story problem based on a division expression using a sharing model.

Subject:
Computer Science
English Language Arts
Composition and Rhetoric
Speaking and Listening
Mathematics
Numbers and Operations
Material Type:
Lesson Plan
Author:
Jody Walker
Date Added:
03/24/2019
App Inventor Maker Cards
Conditional Remix & Share Permitted
CC BY-SA
Rating

This set of cards can be used in a workshop or a "Maker Faire" type of event. They give quick tidbits of code for building mini-apps with App Inventor. Use them in exhibits, parent nights, STEM fairs, after-school clubs, or anywhere that you need to get people jump-started using App Inventor.

Subject:
Computer Science
Material Type:
Activity/Lab
Author:
MIT
Date Added:
04/10/2020
Artificial Intelligence, Fall 2010
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating

This course introduces students to the basic knowledge representation, problem solving, and learning methods of artificial intelligence. Upon completion of 6.034, students should be able to develop intelligent systems by assembling solutions to concrete computational problems, understand the role of knowledge representation, problem solving, and learning in intelligent-system engineering, and appreciate the role of problem solving, vision, and language in understanding human intelligence from a computational perspective.

Subject:
Computer Science
Information Science
Material Type:
Full Course
Provider:
MIT
Provider Set:
MIT OpenCourseWare
Author:
Winston, Patrick Henry
Date Added:
01/01/2010
Automata, Computability, and Complexity, Spring 2011
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating

This course provides a challenging introduction to some of the central ideas of theoretical computer science. Beginning in antiquity, the course will progress through finite automata, circuits and decision trees, Turing machines and computability, efficient algorithms and reducibility, the P versus NP problem, NP-completeness, the power of randomness, cryptography and one-way functions, computational learning theory, and quantum computing. It examines the classes of problems that can and cannot be solved by various kinds of machines. It tries to explain the key differences between computational models that affect their power.

Subject:
Computer Science
Information Science
Material Type:
Full Course
Provider:
MIT
Provider Set:
MIT OpenCourseWare
Author:
Aaronson, Scott
Date Added:
01/01/2011
Automatic Speech Recognition, Spring 2003
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating

Graduate-level introduction to automatic speech recognition. Provides relevant background in acoustic theory of speech production, properties of speech sounds, signal representation, acoustic modeling, pattern classification, search algorithms, stochastic modeling techniques (including hidden Markov modeling), and language modeling. Examines approaches of state-of-the-art speech recognition systems. Introduces students to the rapidly developing field of automatic speech recognition. Its content is divided into three parts. Part I deals with background material in the acoustic theory of speech production, acoustic-phonetics, and signal representation. Part II describes algorithmic aspects of speech recognition systems including pattern classification, search algorithms, stochastic modelling, and language modelling techniques. Part III compares and contrasts the various approaches to speech recognition, and describes advanced techniques used for acoustic-phonetic modelling, robust speech recognition, speaker adaptation, processing paralinguistic information, speech understanding, and multimodal processing.

Subject:
Computer Science
Material Type:
Full Course
Provider:
MIT
Provider Set:
MIT OpenCourseWare
Author:
Glass, James Robert
Date Added:
01/01/2003
Beats Empire
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating

The PFACS game engages students in playing the role of a music producer who must use data and computational thinking to promote their artist’s careers. “Data and Analysis” is one of five strands in the CS K-12 Framework — and it is a strand that readily bridges to mathematics and science content that you already teach. By giving students time to play the game and then having related classroom discussions, you can gain insight into your students’ progress in understanding these concepts.

This game does NOT require any coding skills nor knowledge of any programming language. It is about making choices using computational thinking concepts, not about writing code.

Beats Empire was designed for teachers:

In middle schools classrooms
That integrate data science, computational thinking and related concepts
For about an hour of use spread over 2-3 class periods
Where students have access to any computer, laptop or desktop, with Chrome or Firefox browser (not recommended for tablets or phones).
The key goals of Beats Empire are:

Students explore how their data skills addresses a real world challenge
Students gain career awareness of attractive data science jobs
Teachers increase their understanding of what students know and can do

Subject:
Applied Science
Computer Science
Mathematics
Social Science
Material Type:
Activity/Lab
Author:
Beats Empire
Date Added:
04/21/2020
Beginning Excel
Unrestricted Use
CC BY
Rating

This textbook was written for a community college introductory course in spreadsheets utilizing Microsoft Excel. While the figures shown utilize Excel 2016, the textbook was written to be applicable to other versions of Excel as well. The book introduces new users to the basics of spreadsheets and is appropriate for students in any major who have not used Excel before.

Subject:
Computer Science
Material Type:
Textbook
Provider:
OpenOregon
Author:
Barbara Lave
Diane Shingledecker
Julie Romey
Mary Schatz
Noreen Brown
Date Added:
01/01/2017
Behavior of Algorithms, Spring 2002
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating

Study of an area of current interest in theoretical computer science. Topic varies from term to term. This course is a study of Behavior of Algorithms and covers an area of current interest in theoretical computer science. The topics vary from term to term. During this term, we discuss rigorous approaches to explaining the typical performance of algorithms with a focus on the following approaches: smoothed analysis, condition numbers/parametric analysis, and subclassing inputs.

Subject:
Computer Science
Material Type:
Full Course
Provider:
MIT
Provider Set:
MIT OpenCourseWare
Author:
Spielman, Daniel
Date Added:
01/01/2002
Bot or not? How fake social media accounts influence voting.
Conditional Remix & Share Permitted
CC BY-NC
Rating

Social media is an important tool for learning about current events and practicing active and informed citizenship. However, fake Twitter accounts called ‘bots’ have been used to try to influence public opinion—and not always for the better.About 30 percent of social media users have been deceived by a computer-generated bot at one point or another. Students will watch the PBS NewsHour video, ‘Cracking the stealth political influence of bots,’ which examines how bots play a role in influencing public opinion and design their own bot to help spread awareness about an issue they care about.   

Subject:
Computer Science
Material Type:
Lesson Plan
Author:
Duncan deBruin
Date Added:
07/11/2019
Bringing Algorithms into the Classroom
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating

Students will take a sequence of events or steps for some process and create an algorithm. This could apply to any content area. They will display the algorithm in flowchart form. This activity can be modified for all grade levels and content areas.

Subject:
Computer Science
Arts and Humanities
English Language Arts
Life Science
Mathematics
Physical Science
Material Type:
Activity/Lab
Author:
Cheryl Wilson
Date Added:
08/28/2020
Building Cryptosystems
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating

This video module presents an introduction to cryptography - the method of sending messages in such a way that only the intended recipients can understand them. In this very interactive lesson, students will build three different devices for cryptography and will learn how to encrypt and decrypt messages. There are no prerequisites for this lesson, and it has intentionally been designed in a way that can be adapted to many audiences. It is fully appropriate in a high school level math or computer science class where the teacher can use it to motivate probability/statistics or programming exercises. nteractive lesson, students will learn to build the cryptography devices and will learn how to send and ''crack'' secret messages.

Subject:
Computer Science
Material Type:
Lecture
Provider:
M.I.T.
Provider Set:
M.I.T. Blossoms
Author:
Daniel J. Sturtevant
Date Added:
02/15/2018
Building Cryptosystems
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating

This video module presents an introduction to cryptography - the method of sending messages in such a way that only the intended recipients can understand them. In this very interactive lesson, students will build three different devices for cryptography and will learn how to encrypt and decrypt messages. There are no prerequisites for this lesson, and it has intentionally been designed in a way that can be adapted to many audiences. It is fully appropriate in a high school level math or computer science class where the teacher can use it to motivate probability/statistics or programming exercises. nteractive lesson, students will learn to build the cryptography devices and will learn how to send and ''crack'' secret messages.

Subject:
Computer Science
Material Type:
Lecture
Provider:
MIT
Provider Set:
MIT Blossoms
Author:
Daniel J. Sturtevant
Date Added:
04/07/2020
CS Discoveries 2019-2020: Data and Society Lesson 5.11: Structuring Data
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating

In this lesson, students go further into the collection and interpretation of data, including cleaning and visualizing data. Students first look at the how presenting data in different ways can help people to understand it better, and they then create visualizations of their own data. Using a the results of a preferred pizza topping survey, students must decide what to do with data that does not easily fit into the visualization scheme that they have chosen. Finally, students look at which parts of this process can be automated by a computer and which need a human to make decisions.

Subject:
Computer Science
Material Type:
Lesson Plan
Provider:
Code.org
Provider Set:
CS Discoveries 2019-2020
Date Added:
12/11/2019
CS Discoveries 2019-2020: Data and Society Lesson 5.12: Making Decisions with Data
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating

In this lesson students get practice making decisions with data based on some problems designed to be familiar to middle school students. Students work in groups discussing how they would use the data presented to make a decision before the class discusses their final choices. Not all questions have right answers and in some cases students can and should decide that they should collect more data. The lesson concludes with a discussion of how different people could draw different conclusions from the same data, or how collecting different data might have affected the decisions they made.

Subject:
Computer Science
Material Type:
Lesson Plan
Provider:
Code.org
Provider Set:
CS Discoveries 2019-2020
Date Added:
12/11/2019
CS Discoveries 2019-2020: Data and Society Lesson 5.13: Interpreting Data
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating

Students begin the lesson by looking at a cake preference survey that allows respondents to specify both a cake and an icing flavor. They discuss how knowing the relationship between cake and icing preference helps them better decide which combination to recommend. They are then introduced to cross tabulation, which allows them to graph relationships to different preferences. They use this technique to find relationships in a preference survey, then brainstorm the different types of problems that this process could help solve.

Subject:
Computer Science
Material Type:
Lesson Plan
Provider:
Code.org
Provider Set:
CS Discoveries 2019-2020
Date Added:
12/11/2019
CS Discoveries 2019-2020: Data and Society Lesson 5.14: Automating Data Decisions
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating

In this lesson students look at a simple example of how a computer could be used to complete the decision making step of the data problem solving process. Students are given the task of creating an algorithm that could suggest a vacation spot. Students then create rules, or an algorithm, that a computer could use to make this decision automatically. Students share their rules and what choices their rules would make with the class data. They then use their rules on data from their classmates to test whether their rules would make the same decision that a person would. The lesson concludes with a discussion about the benefits and drawbacks of using computers to automate the data problem solving process.

Subject:
Computer Science
Material Type:
Lesson Plan
Provider:
Code.org
Provider Set:
CS Discoveries 2019-2020
Date Added:
12/11/2019
CS Discoveries 2019-2020: Data and Society Lesson 5.15: Project - Make a Recommendation
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating

To conclude this unit, students design a recommendation engine based on data that they collect and analyze from their classmates. After looking at an example of a recommendation app, students follow a project guide to complete this multi-day activity. In the first several steps, students choose what choice they want to help the user to make, what data they need to give the recommendation, create a survey, and collect information about their classmates' choices. They then interpret the data and use what they have learned to create the recommendation algorithm. Last, they use their algorithms to make recommendations to a few classmates. Students perform a peer review and make any necessary updates to their projects before preparing a presentation to the class.

Subject:
Computer Science
Material Type:
Lesson Plan
Provider:
Code.org
Provider Set:
CS Discoveries 2019-2020
Date Added:
12/11/2019
CS Discoveries 2019-2020: Data and Society Lesson 5.1: Problem Solving with Big Data
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating

In this lesson, students look at how data is collected and used by organizations to solve problems in the real world. The lesson begins with a quick review of the data problem solving process they explored in the last lesson. Then students are presented three scenarios that could be solved using data and brainstorm the types of data they would want to solve them and how they could collect the data. Each problem is designed to reflect a real-world service that exists. After brainstorming, students watch a video about a real-world service and record notes about what data is collected by the real-world service and how it is used. At the end of the lesson, students record whether data was provided actively by a user, was recorded passively, or is collected by sensors.

Subject:
Computer Science
Material Type:
Lesson Plan
Provider:
Code.org
Provider Set:
CS Discoveries 2019-2020
Date Added:
12/11/2019
CS Discoveries 2019-2020: Data and Society Lesson 5.1: Representation Matters
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating

In the first lesson of the data unit, students get an overview of what data is and how it is used to solve problems. Students start off with a brief discussion to come to a common understanding of data. They then split into groups and use a data set to make a series of meal recommendations for people with various criteria. Each group has the choices of meal represented in a different way (pictures, recipes, menu, nutrition) that gives an advantage for one of the recommendations. Afterwards, groups compare their responses and discuss how the different representations of the meal data affected how the students were able to solve the different problems.

Subject:
Computer Science
Material Type:
Lesson Plan
Provider:
Code.org
Provider Set:
CS Discoveries 2019-2020
Date Added:
12/11/2019
CS Discoveries 2019-2020: Data and Society Lesson 5.2: Patterns and Representation
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating

In this lesson students create their own system for representing information. They begin by brainstorming all the different systems they already use to represent yes-no responses. They then work in small groups to create a system that can represent any letter in the alphabet using only a single stack of cards. The cards used have one of 6 different possible drawings (6 animals, 6 colors, etc.) and so to represent the entire alphabet students will need to use patterns of multiple cards to represent each letter. Students create messages with their systems and exchange with other groups to ensure the system worked as intended. In the wrap-up discussion the class reviews any pros and cons of the different systems. They discuss commonalities between working systems and recognize that there are many possible solutions to this problem and what's important is that everyone use the same arbitrary system to communicate.

Subject:
Computer Science
Material Type:
Lesson Plan
Provider:
Code.org
Provider Set:
CS Discoveries 2019-2020
Date Added:
12/11/2019
CS Discoveries 2019-2020: Data and Society Lesson 5.3: ASCII and Binary Representation
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating

In this lesson students learn to use their first binary system for encoding information, the ASCII system for representing letters and other characters. At the beginning of the lesson the teacher introduces the fact that computers must represent information using either "on" or "off". Then students are introduced to the ASCII system for representing text using binary symbols. Students practice using this system before encoding their own message using ASCII. At the end of the lesson a debrief conversation helps synthesize the key learning objectives of the activity.

Subject:
Computer Science
Material Type:
Lesson Plan
Provider:
Code.org
Provider Set:
CS Discoveries 2019-2020
Date Added:
12/11/2019
CS Discoveries 2019-2020: Data and Society Lesson 5.4: Representing Images
Conditional Remix & Share Permitted
CC BY-NC-SA
Rating

In this lesson students learn how computers represent images. To begin the lesson they consider the challenge of turning all the complexity of vision into a binary pattern. Through a series of images showing how this transformation is made students are introduced to the concept of splitting images into squares or "pixels" which can then be turned on or off individually to make the entire image. Students then do a short set of challenges using the Pixelation Widget in order to draw black and white images. Puzzles are designed to call out some of the challenges of representing images in this way. In the wrap up students make connections between the system for representing images and the system for representing text they learned in the previous lesson.

Subject:
Computer Science
Material Type:
Lesson Plan
Provider:
Code.org
Provider Set:
CS Discoveries 2019-2020
Date Added:
12/11/2019