Teaching Kids Programming using the Intentional Method

  • 310 views
Uploaded on

Curriculum design for TKP Java courseware

Curriculum design for TKP Java courseware

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
310
On Slideshare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
5
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide
  • 6:20 in Houses recap
  • Both

Transcript

  • 1. with The Intentional Method By Lynn Langit & Llewellyn Falco
  • 2. What is TKP? • US-based non-profit run by volunteer professional developers • Co-founders have been teaching kids for 7 years • Offers free and open-source courseware and teacher- training materials in Java • Designed for kids ages 11-17 • Introduces core programming concepts • Used throughout the US and also world-wide
  • 3. Core Principals Free & Open Source Fun for Girls and Boys Java with a customized IDE Implements XP technical practices
  • 4. Where is TKP? Co-founders have personally taught more than 2,000 kids
  • 5. Setup Teaching Programming Traditional Long Setup Manual Deploy Agile Immediate Setup Single Click Deploy
  • 6. Experience Areas 1) Setup – 0-15 minutes for 30 students 2) Recipe – 15-20 minutes 3) Recap – 5-10 minutes 4) Variation – 10-15 minutes 5) Quiz – 10-15 minutes 6) Enrichment– 30-45 minutes 7) Worksheet – 15 minutes
  • 7. Experience 1:Recipe Executing their 1st program within 2 minutes
  • 8. Teaching Programming Traditional Conceptual Lecture Full-blown Product Agile Engage & See Minimum Marketable Feature Experience 1:Recipe Executing their 1st program within 2 minutes
  • 9. Experience 1: Recipe Collaborative Learning
  • 10. Teaching Programming Traditional Individual Learning Isolated Working Agile Pairing Pairing Experience 1:Recipe Collaborative Learning
  • 11. 5 Rules of Accelerated Learning O KEEP IT ALIVE O HUNT FLUENCY O START OBVIOUS O STAY FOCUSED O ADAPT THE SETTING
  • 12. Types of learning Explicit Experience Fluency Awareness Inspiration Confidence Abstraction Problem Solving
  • 13. Experience 1: Recipe 1 line English = 1 verifiable line code i.e. lines 1,5,3, NOT 1, 2, 3
  • 14. Teaching Programming Traditional Big Exercises Test After Agile Small Feedback Loop Test First Experience 1:Recipe 1 line English = 1 verifiable line code i.e. lines 1,5,3, NOT 1, 2, 3
  • 15. Experience 1: Recipe Virtual Proctor
  • 16. Teaching Programming Traditional Turn in your Project Feedback Releases Agile Rapid Feedback Onsite Costumer Experience 1:Recipe Virtual Proctor
  • 17. Experience 2: Recap Exploring what we did
  • 18. Teaching Programming Traditional Conceptual First Expert Staff Agile Recap Retrospectives Experience 2:Recap Exploring what we did
  • 19. Experience 2: Recap Exploring Mistakes
  • 20. Teaching Programming Traditional Follow Directions Don’t Make Mistakes Agile Explore Learn from your Mistakes Experience 2:Recap Exploring Mistakes
  • 21. Experience 2: Recap Discovering Patterns
  • 22. Teaching Programming Traditional Lecture & Listen Architecture Agile Emergent Concepts Emergent Design Experience 2:Recap Discovering Patterns
  • 23. Experience 2: Recap Learning to use your IDE
  • 24. Teaching Programming Traditional Don’t use calculators Tool is powerful Agile Master your tools Craftsmanship Experience 2:Recap Learning to use your IDE
  • 25. Experience 3: Variation You can do the same thing with different code
  • 26. Teaching Programming Traditional There is 1 right way Repurposing Agile Refactoring Refactoring Experience 2:Variation You can do the same thing with different code
  • 27. Experience 3: Variations Joy, ownership
  • 28. Teaching Programming Traditional Learning is Serious Resources Agile Learning is Joyful People Joy, ownership Experience 2:Variation
  • 29. Experience 3: Variation
  • 30. Teaching Programming Traditional Teach whole concept Big Upfront Design Agile Iterative Learning Incremental & Iterative Experience 3:Variation Variations
  • 31. Experience 3: Variation Coding is Joy
  • 32. Experience 4: Quiz Teaching from the back of the room
  • 33. Teaching Programming Traditional Lecture, Lab Assist, Grader Specialist Agile Facilitator & Teacher Cross Functional Team Experience 4:Quiz Teaching from the back of the room
  • 34. Experience 4: Quiz ½ way done
  • 35. Teaching Programming Traditional Grades tomorrow QA Agile Red…Green Red…Green Experience 4:Quiz ½ way done
  • 36. Experience 4: Quiz 100% of pairs get 100% right
  • 37. Teaching Programming Traditional Quizzes show what you didn’t learn Release Criteria Agile Quizzes show what you did learn Continuous Intergration Experience 4:Quiz 100% pass rate
  • 38. Experience 4: Quiz Quizzes are rewards
  • 39. Teaching Programming Traditional Quizzes suck! Death March Agile Learning rocks! Happiness Matters Experience 4:Quiz Quizzes are rewards
  • 40. Experience 5: Deep Dive Group learning
  • 41. Teaching Programming Traditional Solo Solo Agile Randori Mobbing Experience 5: Deep Dive Group Learning
  • 42. Experience 5: Deep Dive Experiment, run and try (again)  good hacking!
  • 43. Teaching Programming Traditional Time is fixed, mastery will vary Fixed Scope Agile Mastery is fixed, time will vary Potentially Shippable Experience 5: Deep Dive Experiment, run and try (again)  good hacking!
  • 44. Teaching Programming Traditional Lecture on concepts before hands-on labs Read all requirements then design, then code Agile Experiential learning with conceptual understanding AFTER labs Code one story at a time, retrospect after coding Experience 6: Worksheet Written exercise to verify conceptual understanding
  • 45. Worksheet example
  • 46. Experience 7: Extras O Mini recipes O Warm-ups or fill-ins if pairs finish early O Could also be done alone to verify mastery of concepts
  • 47. Next Steps For Teachers Try out the content – do the recipes
  • 48. GitHub lfal.co/tkpjava
  • 49. TKP Java Courses Using Objects, Methods & For Loops Creating Methods If statements Code Mastery Recursion Model View Controller Events Test Driven Development
  • 50. Get started teaching Go to the Teachers section of the TKP site Download the free lesson plans
  • 51. @Llewellyn Falco www.ApprovalTests.com @LynnLangit www.lynnlangit.com