Khan Academy Programming Curriculum (for CSHS)

Khan Academy Programming Curriculum (for CSHS)

An overview of how we teach computer programming on Khan Academy, both via curriculum and community, plus how classrooms use it and our future plans.
Presented at CS4HS@Cal conference.

92dfeb863138a5a9c0453ed80f9c8c75?s=128

Pamela Fox

June 20, 2014
Tweet

Transcript

  1. Khan Academy Programming ! compsci-feedback@khanacademy.org

  2. 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
  3. ACE editor JSHint ! BabyHint ! Loop Checker ProcessingJS How

    students program
  4. Curriculum

  5. What we cover Drawing Variables Animation Text Functions Logic Looping

    Arrays Objects
  6. 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
  7. How we improve talk-throughs Analytics

  8. How we improve talk-throughs BEFORE AFTER

  9. How we assess learning: challenges staticTest StructuredJS Esprima

  10. How we improve challenges Challenges Attempted: 244,168 ! Challenges Completed:

    162,858 ! Challenge Completion Rate: 67% Overall Analytics
  11. How we improve challenges Manual Feedback

  12. Giving more opportunity for practice: Projects

  13. (Upcoming) Project peer evaluation

  14. Advanced curriculum Natural Simulations Games & Visualizations

  15. Translated curriculum Mostly translated in Spanish, partially in Portuguese/Hebrew (talk-throughs

    are subtitled, not dubbed)
  16. Community & Cult(ure)

  17. Questions & Answers

  18. Votes and Spin-offs!

  19. The Hot Programs

  20. The Characters Hopper (...is a HER!) Winston Oh Noes Guy,

    the Error Buddy
  21. ...The Avatars!

  22. Classroom Use

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

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

  25. 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.”
  26. 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
  27. Increasing Diversity

  28. 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
  29. 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
  30. The Hard Parts

  31. 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
  32. Moderating the community

  33. Future Plans

  34. Algorithms 101

  35. More languages HTML/CSS ? Blockly?

  36. How can we help you? compsci-feedback@khanacademy.org