📉
teacher-curriculum
  • Introduction
  • Tips and Tricks
  • References
  • Topics
    • Asking questions
    • Assessing class performance
    • Cognitive load
    • Flipped classroom
    • Learning styles
    • Lesson plans
    • Lesson plans extra
    • Live coding
    • Mental models
    • Misconceptions
    • Pedagogical Content Knowledge
    • Motivating students
    • Notional machines
    • Pair programming
    • Pedagogy
    • Peer instruction
    • Problem based learning
  • Exercises
    • Asking questions
    • Assessing class performance
    • Cognitive load
    • Flipped classroom
    • Learning styles
    • Live coding
    • Mental models
    • motivating students
    • Pair programming
    • Pedagogy
    • Peer instruction
    • Problem based learning
  • Learning Paths
    • Groundwork for student learning
    • Teaching the Class
  • Code of Conduct
  • Contributing
Powered by GitBook
On this page
  • Lesson Plans for Programming
  • Lesson Plans at HYF
  • References
  • Exercises
  • Learning Paths

Was this helpful?

  1. Topics

Lesson plans

PreviousLearning stylesNextLesson plans extra

Last updated 4 years ago

Was this helpful?

  1. Remember that no lesson survives first contact with learners…

  2. …that every lesson is too short for the teacher and too long for the learner…

  3. …and that nobody will be more excited about the lesson than you are.

    • The Rules, from

Lesson Plans for Programming

A general recipe for a successful lesson:

  1. Motivate

  2. Isolate

  3. Practice

  4. Integrate

Lesson Plans at HYF

At HYF our students have an especially wide range of skill & experience levels, this makes it very challenging to effectively teach a subject to all students at once. Approaching your Sunday lessons more like a focused workshop with a general introduction to all topics for the week will help reach all students. When working in small groups, they can adjust the pace to their own levels, and the scope of the lesson can be kept realistic.

One of the most helpful things you can do for students is to be very clear about what they are expected to learn in class with your guidance, and what they are expected to learn on their own afterwards. ie. are you talking about static methods right now because you expect students to be able to use them by the end of class, or because they should know it's important for when they study at home?

Being very clear about what is expected before vs. during vs. after class will help you prepare, and help students concentrate their efforts (and manage their stress ;)

this list intentionally refers to what a student can do instead of what they know.

  • What can students do before the lesson starts?

  • What are the learning objectives for class time?

  • What does a student need to do after the lesson?

  • What are your practical constraints?

References

  • Motivate, Isolate, Practice, Integrate:

Learning Paths

(the talk about paradigms is not relevant to this topic)

a lesson plan based on this pattern -

teachtogether.tech
A Lesson Design Process
https://files.eric.ed.gov/fulltext/ED566953.pdf
https://www.youtube.com/watch?v=GEmuEWjHr5c
https://www.codementor.io/@npostolovski/how-to-teach-programming-pvgpdtoed#setting-up-the-teaching-environment
the original paper
async programming week 1
Exercises
Teaching the class