with The Intentional Method
By Lynn Langit & Llewellyn Falco
What is TKP?O FREE & Fun Courseware (for ages
10+)O 8 units covering introductory
programming conceptsO Modular (up to 120 minutes per
module)O Tested on over 2,000 kids
O Repository of best teaching practicesO Written recommendationsO Video-based unit teacher training
Where is TKP?
SetupTeaching Programming
Traditional
Long Setup Manual Deploy
Agile Immediate Setup Single Click Deploy
Experience Areas
1) Setup – 0-15 minutes for 30 students
2) Recipe – 15-20 minutes3) Recap – 5-10 minutes4) Variation – 10-15 minutes5) Quiz – 10-15 minutes6) Enrichment– 30-45 minutes!
Experience 1: Recipe
Demo
Experience 1:RecipeExecuting their 1st program within 2 minutes
Teaching Programming
Traditional
Conceptual Lecture Full-blown Product
Agile Engage & See Minimum Marketable Feature
Experience 1:RecipeExecuting their 1st program within 2 minutes
Experience 1: RecipeCollaborative Learning
Teaching Programming
Traditional
Individual Learning Isolated Working
Agile Pairing Pairing
Experience 1:RecipeCollaborative Learning
5 Rules of Accelerated Learning
O KEEP IT ALIVEO HUNT FLUENCYO START OBVIOUSO STAY FOCUSEDO ADAPT THE SETTING
Types of learningO ExplicitO ExperienceO FluencyO AwarenessO InspirationO ConfidenceO AbstractionO Problem Solving
Experience 1: Recipe1 line English = 1 verifiable line code
i.e. lines 1,5,3, NOT 1, 2, 3
Teaching Programming
Traditional
Big Exercises Test After
Agile Small Feedback Loop
Test First
Experience 1:Recipe1 line English = 1 verifiable line code
i.e. lines 1,5,3, NOT 1, 2, 3
Experience 1: RecipeVirtual Proctor
Teaching Programming
Traditional
Turn in your Project Feedback Releases
Agile Rapid Feedback Onsite Costumer
Experience 1:RecipeVirtual Proctor
Experience 2: Recap
Demo
Experience 2: Recap
Exploring what we did
Teaching Programming
Traditional
Conceptual First Expert Staff
Agile Recap Retrospectives
Experience 2:RecapExploring what we did
Experience 2: Recap
Exploring Mistakes
Teaching Programming
Traditional
Follow Directions Don’t Make Mistakes
Agile Explore Learn from your Mistakes
Experience 2:RecapExploring Mistakes
Experience 2: Recap
Discovering Patterns
Teaching Programming
Traditional
Lecture & Listen Architecture
Agile Emergent Concepts Emergent Design
Experience 2:RecapDiscovering Patterns
Experience 2: Recap
Learning to use your IDE
Teaching Programming
Traditional
Don’t use calculators
Tool is powerful
Agile Master your tools Craftsmanship
Experience 2:RecapLearning to use your IDE
Experience 3: Variation
Demo
Experience 3: Variation
You can do the same thing with different code
Teaching Programming
Traditional
There is 1 right way Repurposing
Agile Refactoring Refactoring
Experience 2:VariationYou can do the same thing with different code
Experience 3: Variations
Joy, ownership
Teaching Programming
Traditional
Learning is Serious Resources
Agile Learning is Joyful People
Joy, ownership
Experience 2:Variation
Experience 3: Variation
Teaching Programming
Traditional
Teach whole concept Big Upfront Design
Agile Iterative Learning Incremental & Iterative
Experience 3:VariationVariations
Experience 3: VariationCoding is Joy
Experience 4: Quiz
Demo
Experience 4: QuizTeaching from the back of the room
Teaching Programming
Traditional
Lecture, Lab Assist, Grader
Specialist
Agile Facilitator & Teacher Cross Functional Team
Experience 4:QuizTeaching from the back of the room
Experience 4: Quiz½ way done
Teaching Programming
Traditional
Grades tomorrow QA
Agile Red…Green Red…Green
Experience 4:Quiz½ way done
Experience 4: Quiz
100% of pairs get 100% right
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
Experience 4: QuizQuizzes are rewards
Teaching Programming
Traditional
Quizzes suck! Death March
Agile Learning rocks! Happiness Matters
Experience 4:QuizQuizzes are rewards
Experience 5: Enrichment
Demo
Experience 5: Enrichment
Group learning
Teaching Programming
Traditional
Solo Solo
Agile Randori Mobbing
Experience 5: Enrichment
Group Learning
Experience 5: EnrichmentExperiment, run and try (again) good hacking!
Teaching Programming
Traditional
Time is fixed, mastery will vary
Fixed Scope
Agile Mastery is fixed, time will vary
Potentially Shippable
Experience 5: Enrichment
Experiment, run and try (again) good hacking!
Experience 5: XtrasO Mini recipesO Warm-ups or fill-ins if pairs finish early
Next Steps For TeachersTry out the content – do the recipes
GitHub
lfal.co/tkpjava
Lessons1.Using Objects, Methods & For Loops2.Creating Methods3.If statements4.Mastery5.Recursion6.Model View Controller7.Events8.Test Driven Development
Next Steps - Teach
www.TeachingKidsProgramming.org
@Llewellyn Falcowww.ApprovalTests.com
@LynnLangitwww.lynnlangit.com