Lesson 1.1: What is Computer Science?

Learning Objective
• Discover how Computer Science helps people solve big problems.

Do Now:

Watch: What is Computer Science?

Explore:

Computer Science is a Science of Problem Solving

Have you heard the expression "necessity is the mother of invention?" What that means is that when the need for something becomes imperative, you are forced to find ways to achieve it. Computers were invented to make complex mathematical calculations possible and make tasks easier for humans. Even modern computers perform calculations in addition to the many other tasks they perform. While the first computers were simple devices, modern computers use cutting-edge technology and advanced materials to perform calculations at an incredible rate. As you learned in Unit 0, computer scientists are interested in finding the most efficient way to solve problems. They want to find the best solution that solves a problem correctly in the fastest way and using the least amount of resources (time / space).

The questions Computer Scientists ask when they are trying to solve big problems are often framed like this:
• Is this the most efficient way to solve the problem?
• Is this the fastest way?
• Does it require the least amount of resources?
• Does it solve the problem and give the right answer?
• Can it be used to solve other problems?

Activity Part 2:
How Does Computer Science Help Solve Big Problems?

Computer science is more than just the study of different programming languages or hardware parts. In most computer science careers, specialists use computer science thinking techniques to solve problems and puzzles and achieve specific goals.

In this activity, students are presented with a set of real-world problems and goals that computer programmers, computer animators challenge themselves with each day. For each problem, the students are asked to discuss it, brainstorm ideas for addressing it, and then watch a video that presents one possible solution.

Using this organizer, examine examples of how Computer Science helps people solve big problems.
1. Choose one problem from problem options A-F below.
3. In column #1 in your organizer, write at least one possible solution to the problem. It's ok to guess.
4. Watch the video to learn about some real world solutions
5. In column #2 in your organizer, write at least one real world solution that you learned from watching the video.
6. In column #3 in your organizer, write at least one thing you learned about how people use computer science to solve the problem   ...When you finish one problem (A-F), choose another problem and repeat steps 1-6.

Problem Options:

Problem A) ANIMATING RAPUNZEL'S HAIR
Read: Movie animations were once hand-drawn by artists called animators, but now most of these animators have have switched to using computers instead of drawing by hand. This works well for most animated items, but it's difficult to use computers to create more complicated dynamics, such as hair movement. In Disney's Tangled, animators were asked to create the main character Rapunzel's unusually long golden hair, which was more complicated than any animated hair ever created before.
Think: If you were going to animate long flowing hair using a computer, how could you get started?

Problem B) IMPROVING CAR SAFETY
Read: Most car accidents are caused by mistakes people make while they are driving, which is also called human error. To try and combat the problem of human error in transportation, the United States's Defense Advance Research Projects Agency (DARPA) created a competition called the DARPA Grand Challenge, where any group could win \$2 million if they could create a self-driving vehicle that can drive across a desert by itself.
Think: How do you think could someone teach a self-driving car to drive using computer science?

Problem C) UNDERSTANDING HUMAN LANGUAGE
Read: Computers are great at understanding instructions written in their own programming or coding languages, but not so great at understanding the languages that humans speak every day. People working in computer science call this Natural Language Processing or NLP. These people want to reduce the gap between what humans say in their own natural language and what the computer understands, using NLP. IBM, a computer science and technology company, decided to put their NLP work to the test when they challenged some of the best players from a popular game show called "Jeopardy" to a match with a computer named Watson.
Think: How could you teach a computer to listen to or understand human speech?
Watch: Watson and the Jeopardy Challenge

Problem D) DETECTING TINY MOVEMENTS
Read: Tiny and hardly noticeable movements such as breathing, heartbeat-caused skin color changes, or the swaying of tall structures are important for doctors and scientists to notice, but are invisible to the human eye.
Think: How could someone use computer science technology to detect very tiny motions?
Watch: MIT Computer Program Reveals Invisible Motion

Problem E) REDUCING POLLUTION AND GRAFFITI
Read: As the amount of people in an urban area increases, things like litter and graffiti increase too. Cleanup efforts have been only partly successful in the past. Many environmentally friendly organizations have been reaching for other solutions, including using technology and computer science to solve these problems.
Think: How could you use computer science and coding to coordinate a community to help keep your neighborhood clean?

F) BIONIC LIMBS
Read: People who have lost an arm or a leg are called amputees. There are a surprising amount of people missing at least one limb worldwide, and the US alone contains nearly 2 million amputees. The simple artificial arms, legs, hands or feet that amputees use often lack some of the performance they need for their day-to-day lives.
Think: How could someone make replacement legs/arms/hands/feet more effective using computer science?

Lesson 1.1 Wrap Up

Brainstorm with your class about what you learned about how Computer Science helps people solve big problems.
ĉ
twarekb@sfusd.edu,
18/03/2016, 00:21