+ Computer Science Principles: A New AP Concept Marie desJardins Google CS4HS Professional...

22
+ Computer Science Principles: A New AP Concept Marie desJardins Google CS4HS Professional Development Workshop UMBC, August 6, 2012

Transcript of + Computer Science Principles: A New AP Concept Marie desJardins Google CS4HS Professional...

Page 1: + Computer Science Principles: A New AP Concept Marie desJardins Google CS4HS Professional Development Workshop UMBC, August 6, 2012.

+

Computer Science Principles:A New AP Concept

Marie desJardinsGoogle CS4HS Professional Development WorkshopUMBC, August 6, 2012

Page 2: + Computer Science Principles: A New AP Concept Marie desJardins Google CS4HS Professional Development Workshop UMBC, August 6, 2012.

+Overview

What is “CS Principles?? Goals and motivation Six Computational Thinking Practices Seven Big Ideas of Computer Science

Status Phase I pilot courses (2011-2012) Phase II pilot courses (2012-2013) Implementation/adoption timeline

Resources

Hands-on time! Example active learning activities from pilot courses / UMBC

Page 3: + Computer Science Principles: A New AP Concept Marie desJardins Google CS4HS Professional Development Workshop UMBC, August 6, 2012.

+

What is CS Principles?

Page 4: + Computer Science Principles: A New AP Concept Marie desJardins Google CS4HS Professional Development Workshop UMBC, August 6, 2012.

+What’s Wrong with AP CS? AP CS A(B)

AP CS is the only AP course whose numbers have declined in recent years

The College Board dropped AP CS B after 2009 Completely counterintuitive given the job demand!! Gender balance of current AP CS A is the lowest of any exam

(below 20%)

Why is this the case?

AP CS A(B) = Java programming Not what computer science is really all about Not appealing to many students (especially girls and

minorities) Not tied to real problems Not related to bigger ideas in computer science

Page 5: + Computer Science Principles: A New AP Concept Marie desJardins Google CS4HS Professional Development Workshop UMBC, August 6, 2012.

+AP CS Principles:Goals and Motivation

Only 9 states (not Maryland...) allow CS to fulfill a math or science requirement at the HS level (none have a CS requirement) Difficult for students to gain enough experience to make it

into AP CS; students need intrinsic interest to try CS as an elective

Idea: Develop an AP class focused on getting students excited about computer science Especially: appeal to female and minority students Not just a programming class Relevant to the real world Broad view of the discipline of computer science

Page 6: + Computer Science Principles: A New AP Concept Marie desJardins Google CS4HS Professional Development Workshop UMBC, August 6, 2012.

+Computational Thinking Practices1. Connecting computing...

to applications and problems that matter to students and society

2. Developing computational artifacts...that require creativity and problem solving

3. Abstracting...at multiple levels, from logic gates to the human genome

4. Analyzing problems and artifacts...to understand tradeoffs, strategies, and alternative solutions

5. Communicating...about problems, designs, solutions, and behaviors

6. Collaborating...to combine diverse viewpoints and skills to solve problems

Page 7: + Computer Science Principles: A New AP Concept Marie desJardins Google CS4HS Professional Development Workshop UMBC, August 6, 2012.

+Big Ideas of Computer Science1. Computing is a creative activity.

2. Abstraction reduces information and detail to facilitate focus on relevant concepts.

3. Data and information facilitate the creation of knowledge.

4. Algorithms are used to develop and express solutions to computational problems.

5. Programming enables problem solving, human expression, and creation of knowledge.

6. The Internet pervades modern computing.

7. Computing has global impacts.

Page 8: + Computer Science Principles: A New AP Concept Marie desJardins Google CS4HS Professional Development Workshop UMBC, August 6, 2012.

+

AP CS Principles:Status and Timeline

Page 9: + Computer Science Principles: A New AP Concept Marie desJardins Google CS4HS Professional Development Workshop UMBC, August 6, 2012.

+Phase I Pilot Courses

Five pilot sites in 2010-2011: Metropolitan State College of Denver: Living in a Computing

World UC Berkeley: The Beauty and Joy of Computing UC San Diego: Fluency with Information Technology UNC Charlotte: The Beauty and Joy of Computing University of Washington: Computer Science Principles

Ten high schools paired with ten colleges in 2011-2012

Pilot efforts included: Recruitment plan for increasing enrollment of women and

underrepresented minorities Detailed, fine-grained course evaluation

Page 10: + Computer Science Principles: A New AP Concept Marie desJardins Google CS4HS Professional Development Workshop UMBC, August 6, 2012.

+Phase II Pilot Courses

Phase II pilots include: Portfolio component for assessment (may be used as part

of the AP exam)

Nine(?) Phase II paired university/high school pilots:http://www.csprinciples.org/home/pilot-sites None in Maryland U Penn (South Philadelphia High School) Virginia Tech (Patrick Henry High School)

Page 11: + Computer Science Principles: A New AP Concept Marie desJardins Google CS4HS Professional Development Workshop UMBC, August 6, 2012.

+

AP CS Principles:Topics and Resources

Page 12: + Computer Science Principles: A New AP Concept Marie desJardins Google CS4HS Professional Development Workshop UMBC, August 6, 2012.

+UC BerkeleyBeauty and Joy of Computing

Abstraction

3D graphics and computer games

Algorithms

Programming in Scratch

Concurrency, complexity, and recursion

Social implications of computing

Artificial intelligence

Distributed computing

Limitations and future of computing

http://inst.eecs.berkeley.edu/~cs10/

Page 13: + Computer Science Principles: A New AP Concept Marie desJardins Google CS4HS Professional Development Workshop UMBC, August 6, 2012.

+University of WashingtonComputer Science Principles

Lightbot 2.0 (programming game environment)

“Digitization” (binary representations)

Social networking

Programming in Processing

Networks and digital communication

Image representations

CPU / instruction execution

Universal computation

Algorithm design and recursion

The Internet/World Wide Web

HTML and XML

Databases

http://www.cs.washington.edu/education/courses/cse120/

Page 14: + Computer Science Principles: A New AP Concept Marie desJardins Google CS4HS Professional Development Workshop UMBC, August 6, 2012.

+UMBCIntro. to Computers and Programming

Grand challenges for CS

Deconstructing Google

Deconstructing a computer

Binary representations and digital encoding

Programming with Scratch

Problem solving with algorithms

Networks and the Internet

Databases and data abstraction

Computer security and privacy

Artificial intelligence

Computer graphics and digital entertainment

Ethical and social implications of computing

The future of computing

http://www.csee.umbc.edu/courses/undergraduate/100/Fall12/

Page 15: + Computer Science Principles: A New AP Concept Marie desJardins Google CS4HS Professional Development Workshop UMBC, August 6, 2012.

+Resources

ACM Inroads, volume 3, number 2, June 2012(special sections on CS Principles)

http://csprinciples.org Curriculum, pilot sites Attesting schools:

http://www.csprinciples.org/home/about-the-project/attestation(UMBC was the second school to sign up...)

http://collegeboard.org/csprinciples

Page 16: + Computer Science Principles: A New AP Concept Marie desJardins Google CS4HS Professional Development Workshop UMBC, August 6, 2012.

+

Active Learning Activities

Page 17: + Computer Science Principles: A New AP Concept Marie desJardins Google CS4HS Professional Development Workshop UMBC, August 6, 2012.

+Exercise #1: Google

Computational thinking practices: Connecting computing; analyzing problems and artifacts

Big ideas: Internet; data and information; global impacts

Activity: Googlewhack, Googlefights, PageRank, Googlefail Create your own googlefail!

Discussion: What happens when we post the googlefail to our site? How long until it shows up in google? What’s happening in between? How does PageRank work?

Followup lab/project: Bonus points to the first student who spots the googlefail results; compute PageRank for a simple example network; implement PageRank on a graph

Page 18: + Computer Science Principles: A New AP Concept Marie desJardins Google CS4HS Professional Development Workshop UMBC, August 6, 2012.

+Exercise #2: Huffman Coding

Computational practices: Abstracting; developing computational artifacts

Big ideas: Abstraction; data and information

Activity: Encode a passage from “Sam I Am” using a Huffman encoding (preliminary exercise: translate from Huffman code)

Discussion: Why are frequency-based encodings useful? How much space could one potentially save? What are some practical applications? Is Morse code a Huffman (optimal) encoding? Does gzip use Huffman encoding?

Followup lab/project: Implement a Huffman encoding and print out length statistics for non-encoded and Huffman-encoded text. Find text sources that would compress a lot, and text sources that wouldn’t compress very much.

Page 19: + Computer Science Principles: A New AP Concept Marie desJardins Google CS4HS Professional Development Workshop UMBC, August 6, 2012.

a oSPC

tl w

c! pm us

y

re

Decode the Message: 0111110010100101011011100011110111110110 010 00111111110 010

0110001110 010 0110001110 010 0110001110 010

0001100000100100000000110 010 011111001000000 01110

Page 20: + Computer Science Principles: A New AP Concept Marie desJardins Google CS4HS Professional Development Workshop UMBC, August 6, 2012.

+Green Eggs and Ham

I am Sam

I am Sam

Sam I am

That Sam-I-am!

That Sam-I-am!

I do not like

that Sam-I-am!

Do you like

green eggs and ham?

I do not like them,

Sam-I-am.

I do not like

green eggs and ham.

Page 21: + Computer Science Principles: A New AP Concept Marie desJardins Google CS4HS Professional Development Workshop UMBC, August 6, 2012.

+Exercise #3: Map Coloring Computational thinking practices: Abstracting and

collaborating

Big ideas: Creativity; algorithms

Activity: Find a way to color each map region (person) so that no neighbors have the same color

Discussion: Why is this a hard problem? How many colors do you really need? What are some strategies? What are some real-world problems that might require similar strategies?

Lab/project: Implement a backtracking search algorithm to color a map; optionally integrate into drawing tool to let students create their own map

Page 22: + Computer Science Principles: A New AP Concept Marie desJardins Google CS4HS Professional Development Workshop UMBC, August 6, 2012.

1 2 3

4

5 6

7 89 10

11 1213

14 15

1617 18 19

20

21 22