Upgrade to Pro — share decks privately, control downloads, hide ads and more …

EduPsych Theory for Python Hackers v.2.0 (Mel Chua)

EduPsych Theory for Python Hackers v.2.0 (Mel Chua)

I've taken two years of graduate courses in pedagogical design, educational psychology, and community development. I save you $50k in tuition and hundreds of hours of reading and give you the short version for Pythonistas who care about education and outreach. You'll learn how to critically analyze and describe your Python learning/teaching methods and progress to other hackers and/or educators. This is a revised and expanded version of a talk given at the last PyCon in Santa Clara, with insights from the current batch at Hacker School.

3b085ba94fee217d7656971b0cb4cf00?s=128

PyCon Canada

August 11, 2013
Tweet

Transcript

  1. edupsych theory edupsych theory for python hackers for python hackers

    v.2.0 v.2.0 (mel chua, pycon toronto 2013) (mel chua, pycon toronto 2013) follow along at bit.ly/pycon-toronto-edupsych follow along at bit.ly/pycon-toronto-edupsych
  2. MEL CHUA academic hacker academic

  3. WAT

  4. None
  5. ure doin it rite ure doin it rite CC-BY-SA from

    http://www.flickr.com/photos/ykjc9/4143179870
  6. 3 big ideas 1. learning is designable like code 2.

    our brains are snowflakes 3. we do not function standalone
  7. 1 Design your learning the same way you design your

    code Design your learning the same way you design your code
  8. think-pair-share

  9. Which comes first? A. (vague) specification B. (occasionally-functional) prototype C.

    (rough) test(s)
  10. Example: test-driven development def factorial(n): """Return the factorial of n,

    an exact integer >= 0. >>> [factorial(n) for n in range(6)] [1, 1, 2, 6, 24, 120]""" result = 1 factor = 2 while factor <= n: (shamelessly stolen from result *= factor http://docs.python.org/2/library/doctest.html) factor += 1 return result
  11. Example: test-driven development def factorial(n): """Return the factorial of n,

    an exact integer >= 0. >>> [factorial(n) for n in range(6)] [1, 1, 2, 6, 24, 120]""" result = 1 factor = 2 while factor <= n: (shamelessly stolen from result *= factor http://docs.python.org/2/library/doctest.html) factor += 1 return result what should it do? how will I know if it works? ok, now how do I make it work?
  12. Example: test-driven development def learn_tdd(student): """Students should be able to

    analyze the relationship between a doctest, the function under test, and the test output. >>> [learn_tdd(student) for student in class] [True, True, True, True, True]""" fun_activity_thing() student.doctestability = True return student.doctestability
  13. Example: test-driven development def learn_tdd(student): """Students should be able to

    analyze the relationship between a doctest, the function under test, and the test output. >>> [learn_tdd(student) for student in class] [True, True, True, True, True]""" fun_activity_thing() student.doctestability = True return student.doctestability content (goal) assessment pedagogy (activity) Further reading: Understanding By Design
  14. dependency: articulate clear and assessible goals

  15. Example: test-driven development def curriculum(student): """Students should be able to

    analyze the relationship between a doctest, the function under test, and the test output. >>> [curriculum(student) for student in class] [True, True, True, True, True]""" fun_activity_thing() student.doctestability = True return student.doctestability Bloom's taxonomy
  16. Bloom's Taxonomy Cognitive Affective create evaluate analyze apply understand remember

    characterize organize value respond receive
  17. Example: test-driven development def curriculum(student): """Students should be able to

    analyze the relationship between a doctest, the function under test, and the test output. >>> [curriculum(student) for student in class] [True, True, True, True, True]""" fun_activity_thing() student.doctestability = True return student.doctestability behaviorism
  18. None
  19. bostonpythonworkshop.com

  20. CC-BY http://www.flickr.com/photos/katrzyna/69324073 assessment assessment Formative: cooking Formative: cooking Summative: serving

    Summative: serving
  21. None
  22. bit.ly/pycon-eduhistory bit.ly/pycon-eduhistory

  23. Cognitive

  24. ure doin it rite ure doin it rite CC-BY-SA from

    http://www.flickr.com/photos/ykjc9/4143179870
  25. 3 big ideas 1. learning is designable like code 2.

    our brains are snowflakes 3. we do not function standalone
  26. 2 Our brains are like snowflakes. Everyone learns differently.

  27. think-pair-share

  28. ACTIVE SENSING VISUAL SEQUENTIAL REFLECTIVE INTUITIVE VERBAL GLOBAL

  29. ACTIVE: Let's try it out! ACTIVE: Let's try it out!

    REFLECTIVE: Let's think it through! REFLECTIVE: Let's think it through!
  30. Example: test-driven development def factorial(n): """Return the factorial of n,

    an exact integer >= 0. >>> [factorial(n) for n in range(6)] [1, 1, 2, 6, 24, 120]""" result = 1 factor = 2 while factor <= n: (shamelessly stolen from result *= factor http://docs.python.org/2/library/doctest.html) factor += 1 return result
  31. This sucks. This sucks. This sucks. This sucks.

  32. ACTIVE: explainey-groups! ACTIVE: explainey-groups! REFLECTIVE: claim your pauses. REFLECTIVE: claim

    your pauses.
  33. think-pair-share

  34. ACTIVE SENSING VISUAL SEQUENTIAL REFLECTIVE INTUITIVE VERBAL GLOBAL

  35. SENSING INTUITIVE

  36. (details) (concepts)

  37. (established methods) (new shiny techniques)

  38. (speed up) (slow down)

  39. How does this connect with the world I know? How

    can this abstract more generally?
  40. think-pair-share

  41. ACTIVE SENSING VISUAL SEQUENTIAL REFLECTIVE INTUITIVE VERBAL GLOBAL

  42. bit.ly/pycon-eduhistory bit.ly/pycon-eduhistory VISUAL VISUAL

  43. bit.ly/pycon-eduparadigms bit.ly/pycon-eduparadigms VERBAL VERBAL

  44. cc-by http://larjona.files.wordpress.com/2011/09/eclipse-pydev.png environments matter environments matter

  45. think-pair-share

  46. ACTIVE SENSING VISUAL SEQUENTIAL REFLECTIVE INTUITIVE VERBAL GLOBAL

  47. None
  48. newcoder.io/dataviz

  49. learnpythonthehardway.org/book

  50. think-pair-share

  51. ACTIVE SENSING VISUAL SEQUENTIAL REFLECTIVE INTUITIVE VERBAL GLOBAL

  52. We teach the way we learn. more: bit.ly/hackerschool-learningstylestories (Felder &

    Silverman)
  53. the world is socially constructed

  54. the world is socially constructed (of course it is)

  55. Watch those assumptions. If it's hard, something's wrong with me

  56. Watch those assumptions. If it's hard, something's wrong with the

    learning strategy I'm using (I can fix that!)
  57. Motivation

  58. Motivation (Deci, Ryan) 1. amotivation 2. external regulation 3. identified

    regulation 4. intrinsic motivation autonomy relatedness competence (thanks to Jon Stolk, Rob Martello, Mark Somerville, and the Olin College I2E2 crew)
  59. Attribution theory (Dweck) Fixed vs Growth mindsets aka Nature vs

    Nurture
  60. Self-efficacy (Bandura) 1. doing it 2. seeing people (like me)

    do it 3. social persuasion 4. your own body (Bandura also did social learning, which is a lot of fun – look it up!)
  61. None
  62. Learning Over Time (Fullan)

  63. Piaget In One Slide assimilation: adding another module accommodation: REFACTOR

    EVERYTHING
  64. assimilation ------------accommodation------------------------------------------------ assimilation

  65. Situative

  66. ure doin it rite ure doin it rite CC-BY-SA from

    http://www.flickr.com/photos/ykjc9/4143179870
  67. 3 big ideas 1. learning is designable like code 2.

    our brains are snowflakes 3. we do not function standalone
  68. 3 We do not learn standalone. Importing is important.

  69. None
  70. WARNING: POLYSYLLABIC WORDS IMMINENT

  71. accidental learning in cognitive apprenticeships within authentic communities of practice

    with metacognition models and formative feedback to develop self-efficacy and self- determination
  72. Accidental learning.

  73. Cognitive apprenticeship. model model coach coach scaffold scaffold fade fade

    bit.ly/pycon-cogapp
  74. Dreyfus Model of Skill Acquisition expert proficient competent advanced beginner

    novice
  75. CC-BY-SA by woodleywonderworks (http://www.flickr.com/photos/wwworks/2985216277/) context? context?

  76. CC-BY-SA by eschipul (http://www.flickr.com/photos/eschipul/278768722/) context! context!

  77. clarity clarity constraint constraint freedom freedom frustration frustration CC-BY-SA by

    ginnerobot (http://www.flickr.com/photos/ginnerobot/4487647471/) CC-BY by NatalieMaynor (http://www.flickr.com/photos/nataliemaynor/2539937014/)
  78. Community of practice. Community of practice. domain domain community community

    practice practice
  79. In a cognitive apprenticeship within a community of practice... zone

    of proximal development legitimate peripheral participation
  80. Zone of proximal development: learning to bike 1. watching 2.

    somebody pushes you 3. wheeeeeeeeeeeeeeeeeeeeeeee
  81. Zone of proximal development: learning to program 1. watching 2.

    somebody pushes you 3. wheeeeeeeeeeeeeeeeeeeeeeee
  82. Zone of proximal development: learning to program 1. watching 2.

    pair programming, code review, etc... 3. wheeeeeeeeeeeeeeeeeeeeeeee
  83. MYTHS: not skilled enough not skilled enough not technical enough

    not technical enough (perhaps later but surely not now) (perhaps later but surely not now)
  84. Legitimate Peripheral Participation Task Criteria 1. mission critical 3. nobody

    really cares
  85. Legitimate Peripheral Participation Task Criteria 1. mission critical 2. we

    have no time 3. nobody really cares
  86. accidental learning in cognitive apprenticeships within authentic communities of practice

    with metacognition models and formative feedback to develop self-efficacy and self- determination
  87. Why? Because this.

  88. ''...the first steps on this journey do not feel like

    progress. ...the first steps on this journey do not feel like progress. The The voice diminishes in volume; it lacks... even the derived authority voice diminishes in volume; it lacks... even the derived authority of those who... can assume as they parrot... they speak the of those who... can assume as they parrot... they speak the truth... The inner voice turns critical; it tells them their ideas truth... The inner voice turns critical; it tells them their ideas may be stupid. Women at this position think before they speak; may be stupid. Women at this position think before they speak; and, because their ideas must measure up to certain objective and, because their ideas must measure up to certain objective standards, they speak in measured tones. standards, they speak in measured tones. Often, they do not speak at all. Often, they do not speak at all. But this is not a passive silence; on the other side of this silence, But this is not a passive silence; on the other side of this silence, reason is stirring reason is stirring.' --Women's Ways of Knowing .' --Women's Ways of Knowing
  89. '...confirmation and community are prerequisites rather than '...confirmation and community

    are prerequisites rather than consequences of development.' consequences of development.' --Women's Ways of Knowing --Women's Ways of Knowing
  90. ure doin it rite ure doin it rite CC-BY-SA from

    http://www.flickr.com/photos/ykjc9/4143179870
  91. 1. learning is designable like code 2. our brains are

    snowflakes 3. we do not function standalone 3 big ideas
  92. 1. learning is designable like code 2. our brains are

    snowflakes 3. we do not function standalone process empathy vocabulary 3 big ideas
  93. that's all, folks. questions? that's all, folks. questions? this talk

    this talk my work my work bit.ly/pycon-toronto-edupsych bit.ly/pycon-toronto-edupsych melchua.com/contact melchua.com/contact