enabling independent learning of programming concepts
play

Enabling Independent Learning of Programming Concepts through - PowerPoint PPT Presentation

Enabling Independent Learning of Programming Concepts through Programming Completion Puzzles Kyle J. Harms , Noah Rowlett, Caitlin Kelleher Novices Learning Programming - Classroom 2 ACM Computer Science Teachers Association. Running On


  1. Enabling Independent Learning of Programming Concepts through Programming Completion Puzzles Kyle J. Harms , Noah Rowlett, Caitlin Kelleher

  2. Novices Learning Programming - Classroom 2 ACM Computer Science Teachers Association. “Running On Empty: The Failure to Teach K-12 Computer Science in the Digital Age.” http://runningonempty.acm.org/ Microsoft. “A National Talent Strategy” http://www.microsoft.com/en-us/news/download/presskits/citizenship/MSNTS.pdf

  3. Learning Programming Independently - Tutorials Scratch 3 “Scratch,” Scratch. [Online]. Available: https://scratch.mit.edu/.

  4. Learning Programming Independently - Puzzle-Like Systems code.org – Hour of Code Gidget 4 “Hour of Code,” CSEd Week. [Online]. Available: http://csedweek.org/. [Accessed: 18-Mar-2014]. M. J. Lee, F. Bahmani, I. Kwan, J. LaFerte, P. Charters, A. Horvath, F. Luor, J. Cao, C. Law, M. Beswetherick, S. Long, M. Burnett, and A. J. Ko, “Principles of a debugging-first puzzle game for computing education,” in 2014 IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC), 2014, pp. 57–64.

  5. More Puzzles... Parson's Programming Puzzles 5 D. Parsons and P. Haden, “Parson’s Programming Puzzles: A Fun and Effective Learning Tool for First Programming Courses,” in Proceedings of the 8th Australasian Conference on Computing Education - Volume 52, Darlinghurst, Australia, Australia, 2006, pp. 157–163.

  6. Learning Programming Independently - Completion Problems ● Generation – Write programs from scratch ● Completion – Complete partially written programs 6 J. J. G. Van Merrienboer and M. B. M. De Croock, “Strategies for Computer-Based Programming Instruction: Program Completion Vs. Program Generation,” Journal of Educational Computing Research, vol. 8, no. 3, pp. 365–394, Jan. 1992.

  7. Learning Programming Independently Picture Completion Problems Puzzle-like Tutorials 7

  8. How do we effectively use puzzles to support novices learning programming independently? 8

  9. Cognitive Load Theory ● Completion Problems ● Extraneous Cognitive Load Working Memory 9 J. Sweller and P. Chandler, “Why Some Material Is Difficult to Learn,” Cognition and Instruction, vol. 12, no. 3, pp. 185–233, 1994.

  10. Extraneous Cognitive Load What is angle ACB? What is angle ACB? High Extraneous Cognitive Load Low Extraneous Cognitive Load 10 Sweller, P. Ayres, and S. Kalyuga, Cognitive Load Theory. Springer, 2011.

  11. Example: CS1 First Program High Extraneous Cognitive Load Low Extraneous Cognitive Load 11

  12. Example: Drag 'n Drop High Extraneous Cognitive Load Low Extraneous Cognitive Load 12

  13. Completion Problems ● Generation (write from scratch) – High extraneous cognitive load ● Completion (complete partial program) – More working memory resources available for learning 13

  14. Can we use completion problems and also leverage the strengths of puzzle-like systems to provide an effective way to help novices learn programming independently? 14

  15. → Completion Problems Programming Completion Puzzles 15

  16. Puzzle Curriculum Easy Challenging 1. Sequential 2. Repeated 3. Parallel 4. Repeated & 5. Parallel { 6. Repeated { Parallel Repeated Parallel 16 } }

  17. • Lessons Learned • Programming Completion Puzzle Effectiveness 18

  18. • Lessons Learned • Programming Completion Puzzle Effectiveness 19

  19. Formative Evaluations ● Completion Problem → Puzzle Format & Interface – 10 iterations – 23 participants - St. Louis Science Center – 30 minutes ● Puzzle Curriculum – 8 iterations – 21 participants - St. Louis Academy of Science – 90 minutes 20

  20. Lessons Learned: 1) Limit the editable dimensions of the puzzle. 2) When executing the program, limit distractions and focus the user's attention on the program's output. 3) Author puzzle programs with memorable segments. 4) Provide a challenge without being tricky. … 21

  21. 1) Limit the editable dimensions of the puzzle. 22

  22. Editable Dimensions Change Values Moves Insertions Deletions 23

  23. Limit the Possibilities Statement Bin 24

  24. 2) When executing the program, limit distractions and focus the user's attention on the program's output. 25

  25. Play Window 26

  26. Play Overlay 27

  27. 3) Author puzzle programs with memorable segments. 28

  28. Hard to Remember Output

  29. Memorable Segments Segment II – The flying Segment I – The alien saucer starts up. repairs the flying saucer. Segment III - Alien 30 drives flying saucer.

  30. Memorable Segments Segment I Segment II Segment III 31

  31. 4) Provide a challenge without being tricky. 32

  32. Tricky & Challenging “It was tricky, but not harder.” “I thought this one was a little challenging, but I liked it!” 33

  33. Tricky Nearly Identical Statements 34

  34. Challenging 35

  35. • Lessons Learned • Programming Completion Puzzle Effectiveness 36

  36. Summative Evaluation ● 27 participants – 12 Female, 15 Male – Average Age: 11.59 – Minimal Programming Experience (< 3 hours) ● 2 hours 37

  37. Independent Learning: Tutorials 38

  38. Study Design 39

  39. Study Design 40

  40. Training Phase 1. Sequential 2. Repeated 3. Parallel 4. Repeated & 5. Parallel { 6. Repeated { Parallel Repeated Parallel } } 41

  41. Training Task Tutorial Puzzle 42

  42. Study Design 43

  43. Transfer Phase Parallel Repeated Parallel { Repeated { Repeated Parallel 44 } }

  44. Transfer Task 45

  45. Completed Transfer Task Initial Completed 46

  46. Research Questions: 1) Do puzzles require a different time and mental investment compared to tutorials? 2) Do puzzle users show more evidence of learning compared to tutorial users? 3) Are puzzles more motivating than tutorials? 47

  47. 1) Do puzzles require a different time and mental investment compared to tutorials? 48

  48. Study Design 49

  49. Percent of Users Exposed to Programming Concept 50

  50. Average Training Task Time p < .001 7 6 Average Training Task Time (min) 5 4 3 Tutorial Puzzle 2 1 0 4. Repeated & Parallel 1. Sequential 3. Parallel 51 Training Task

  51. Average Training Task Mental Effort p < .05 9 Average Mental Effort (low - high) 8 7 6 5 Tutorial 4 Puzzle 3 2 1 2. Repeated 6. Repeated{Parallel} 3. Parallel 5. Parallel{Repeated} 52 Training Task

  52. 2) Do puzzle users show more evidence of learning compared to tutorial users? 53

  53. Study Design 54

  54. Average Transfer Task Time p = .06 6 5 Average Task Time (min) 4 3 Tutorial Puzzle 2 1 0 Repeated Repeated{Parallel} 55 Transfer Task

  55. Average Transfer Task Performance p < .05 100% 90% Average Task Performance 80% 70% 60% 50% Tutorial 40% Puzzle 30% 20% 10% 0% Repeated Parallel{Repeated} 56 Transfer Task

  56. Summary Puzzle users performed 26% better on transfer tasks while requiring 23% less training time. 57

  57. Future Work ● Completion Problems – Paired with worked examples ● Distractors – Common in puzzle-like systems – Impact on completion problem effect 58

  58. Questions Kyle J. Harms Washington University in St. Louis kyle.harms@wustl.edu https://lookingglass.wustl.edu 59

Recommend


More recommend