Slide 1

Slide 1 text

Khan Academy Programming ! [email protected]

Slide 2

Slide 2 text

What we teach Languages Uses Java Python C++ Haskell JavaScript Ruby Scheme Games Animation Hardware Robotics Data Science Simulation Mobile Websites Lua No Installation Needed Shareable Fun for Anyone Gateway Drug

Slide 3

Slide 3 text

ACE editor JSHint ! BabyHint ! Loop Checker ProcessingJS How students program

Slide 4

Slide 4 text

Curriculum

Slide 5

Slide 5 text

What we cover Drawing Variables Animation Text Functions Logic Looping Arrays Objects

Slide 6

Slide 6 text

How we teach: “Talk-throughs” Uses same environment they program in Making passive instruction interactive! https://www.khanacademy.org/cs/programming/drawing-basics/p/intro-to-drawing

Slide 7

Slide 7 text

How we improve talk-throughs Analytics

Slide 8

Slide 8 text

How we improve talk-throughs BEFORE AFTER

Slide 9

Slide 9 text

How we assess learning: challenges staticTest StructuredJS Esprima

Slide 10

Slide 10 text

How we improve challenges Challenges Attempted: 244,168 ! Challenges Completed: 162,858 ! Challenge Completion Rate: 67% Overall Analytics

Slide 11

Slide 11 text

How we improve challenges Manual Feedback

Slide 12

Slide 12 text

Giving more opportunity for practice: Projects

Slide 13

Slide 13 text

(Upcoming) Project peer evaluation

Slide 14

Slide 14 text

Advanced curriculum Natural Simulations Games & Visualizations

Slide 15

Slide 15 text

Translated curriculum Mostly translated in Spanish, partially in Portuguese/Hebrew (talk-throughs are subtitled, not dubbed)

Slide 16

Slide 16 text

Community & Cult(ure)

Slide 17

Slide 17 text

Questions & Answers

Slide 18

Slide 18 text

Votes and Spin-offs!

Slide 19

Slide 19 text

The Hot Programs

Slide 20

Slide 20 text

The Characters Hopper (...is a HER!) Winston Oh Noes Guy, the Error Buddy

Slide 21

Slide 21 text

...The Avatars!

Slide 22

Slide 22 text

Classroom Use

Slide 23

Slide 23 text

Self-paced + Paired projects https://www.khanacademy.org/coach-res/reference-for-coaches/teaching-computing/a/pair-programming-in-the-classroom

Slide 24

Slide 24 text

Monitoring progress https://www.khanacademy.org/coach-res/reference-for-coaches/teaching-computing/a/tracking-progress-of-programming-students

Slide 25

Slide 25 text

Case Study: Lowell Additional projects: TRON, Pong, Hangman, Book https://www.khanacademy.org/teaching-computing/a/programming-case-study-lowell-high-school “Now, I spend much of my time thinking about how to bring out the power of us all coming together in the same room to learn to program.”

Slide 26

Slide 26 text

Case Study: Thailand “What’s in the News” ! “Technology Spot” ! CryptoCat for Chat ! Additional projects: Rock-Paper-Lizard-Spock Caesar Cipher Encryption ! https://www.khanacademy.org/teaching-computing/a/programming-case-study-going-beyond-the-ka-curriculum

Slide 27

Slide 27 text

Increasing Diversity

Slide 28

Slide 28 text

Completion per gender For the first challenge: ! Of the people who start it, 34% are female 66% are male ! 86.2% of males complete it (20762/23940) 86.7 of females complete it (10770/12494). http://cs-blog.khanacademy.org/2014/03/challenge-completion-across-gender-and_4.html

Slide 29

Slide 29 text

DonorsChoose program khanacademy.org/donors-choose Teachers get $100 codes for each female student, and $500 if 4 complete Experiment groups: $500 code for 4 completing, $500 cash for 4 completing, $0 for 4 completing 1544 teachers signed up ~2000 females completed ~2000 males completed

Slide 30

Slide 30 text

The Hard Parts

Slide 31

Slide 31 text

Reducing cheating SELECT user_key.name, stashed_code, backup_timestamp from [UserScratchpad]! WHERE stashed_code CONTAINS '"Shawshank Redemption”,'! ORDER BY backup_timestamp DESC; 1) Disable copy/paste 2) De-index solutions

Slide 32

Slide 32 text

Moderating the community

Slide 33

Slide 33 text

Future Plans

Slide 34

Slide 34 text

Algorithms 101

Slide 35

Slide 35 text

More languages HTML/CSS ? Blockly?

Slide 36

Slide 36 text

How can we help you? [email protected]