Hacker School talk - Learning for Hackers

Post on 16-Jul-2015

254 views 0 download

Tags:

Transcript of Hacker School talk - Learning for Hackers

Learning Learning researchresearchfor hackersfor hackers

(hacker school w2015)(hacker school w2015)

school

hacking

ProductivelyProductivelyLostLost

uredoin

itrite

CC-BY-SA from http://www.flickr.com/photos/ykjc9/4143179870

This talk's big ideas1. A member of the hacking community is a hacker.2. Design learning like code.3. The Chipotle Coding Menu4. How learning works (we think)

1A HackerA Hackeris someoneis someonethat other that other hackershackers

call a hacker.call a hacker.

Community of Community of practice.practice.

domaindomaincommunitycommunitypracticepractice

In a cognitive In a cognitive apprenticeship within a apprenticeship within a community of practice...community of practice... zone of zone of proximal developmentproximal development

legitimate peripheral legitimate peripheral participationparticipation

Zone of proximal development:

learning to bike

Zone of proximal development:

learning to bike1. watching2. somebody pushes you3.wheeeeeeeeeeeeeeeeeeeeeeee

Zone of proximal development:

learning to program

Zone of proximal development:

learning to program1. watching2. pairing, code review, etc3.wheeeeeeeeeeeeeeeeeeeeeeee

MYTHS:not skilled enoughnot skilled enough

not technical enoughnot technical enough(perhaps later but (perhaps later but

surely not now)surely not now)

CC-BY http://www.flickr.com/photos/pasukaru76/5060447506

Legitimate Peripheral Legitimate Peripheral ParticipationParticipation

Legitimate Peripheral Legitimate Peripheral ParticipationParticipation

these are the jobs these are the jobs you're looking foryou're looking forthese are the jobs these are the jobs you're looking foryou're looking for

LPP Task CriteriaLPP Task Criteria

1. mission critical (no)2. we have no time (YES)3. nobody really cares (no)

Situative

bit.ly/pycon-eduhistorybit.ly/pycon-eduhistorybit.ly/pycon-eduparadigmsbit.ly/pycon-eduparadigms

2Design your Design your learning learning

the way you the way you design your design your

code.code.

Example 1: This project is a text editor, mail and news reader,

debugger, project planner, calendar, and natural language

processing demo for simulating a human.

Example 2: This project is a distributed version control system

designed to handle everything from small to very large projects with

speed and efficiency.

Example: test-driven development

(shamelessly stolen from http://docs.python.org/2/library/doctest.html)

Example: test-driven development

(shamelessly stolen from http://docs.python.org/2/library/doctest.html)

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:

factor += 1

return result

Example: test-driven development

(shamelessly stolen from http://docs.python.org/2/library/doctest.html)

Example: test-driven development

(shamelessly stolen from http://docs.python.org/2/library/doctest.html)

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:

factor += 1

return result

What should it do?What should it do?

How will I knowif it's done?

How will I knowif it's done?

Okay, let's do it.Okay, let's do it.

Example: test-driven learning

bit.ly/test-driven-learning

Example: test-driven learning

bit.ly/test-driven-learningdef learn_factorial(n):

"""Be able to implement a factorial function with doctests.

>>> is_blog_post_with_git_commit_done()

True"""

read_tutorial(fa)

pair_program(Mary)

push(code, github)

ask_for_help(Julia, blogging)

ContentContent

AssessmentAssessment

PedagogyPedagogy

Content you care aboutMotivation (Deci, Ryan)

Content you care aboutMotivation (Deci, Ryan)

1. amotivation2. external regulation3. identified regulation4. intrinsic motivation

autonomyrelatedness

competence

(thanks to Jon Stolk, Rob Martello, Mark Somerville, and the Olin College I2E2 crew)

(thanks to Jon Stolk, Rob Martello, Mark Somerville, and the Olin College I2E2 crew)

CC-BY http://www.flickr.com/photos/katrzyna/69324073

assessmentassessmentassessmentassessment

Formative: cookingFormative: cookingSummative: servingSummative: serving

3The ChipotleThe ChipotleCoding MenuCoding Menu

RelationshipRelationshipProduct Diagnostic Collaborative

Confrontational

ContentContent

[Test Driven Learning goal goes here]

TechniqueTechniqueModeling

ScaffoldingCoaching

Yes-AndingRubber-Ducking

ExtrasExtrasLearning style?Motivation type?

Skill level?

4How learning How learning worksworks

(as far as we (as far as we know)know)

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

novice

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

expert

Dreyfus Model of Skill Acquisition

Dreyfus Model of Skill Acquisition

Novice – Competent – Proficient – Expert

clarityclarity constraintconstraint

freedomfreedom frustrationfrustration

clarityclarity constraintconstraint

freedomfreedom frustrationfrustrationCC-BY-SA by ginnerobot (http://www.flickr.com/photos/ginnerobot/4487647471/) CC-BY by NatalieMaynor (http://www.flickr.com/photos/nataliemaynor/2539937014/)

Why?Why?

Because Piaget.

Piaget In One SlidePiaget In One Slide

assimilation: adding another moduleaccommodation: REFACTOR

EVERYTHING

assimilation

---------accommodation------------------------

assimilation

Piaget + Dreyfus = Spiral learning

Piaget + Dreyfus = Spiral learning

Learning Over Time (Fullan)

Learning Over Time (Fullan)

Cognitive

Interleave (related stuff)Separate (in time)Struggle (like a muscle)

Interleave (related stuff)Separate (in time)Struggle (like a muscle)

How to learn deeply

Build habits by reflecting.

Attribution theory (Dweck)

Attribution theory (Dweck)

Fixed vs Growth mindsetsaka

Nature vs Nurture

FAIL #1: Assumption of privilege

FAIL #1: Assumption of privilege

If it's hard, something's wrong with me

vsIf it's hard, something's wrong

with it (I can fix that!)

I (think I) canSelf-efficacy (Bandura)

I (think I) canSelf-efficacy (Bandura)

1. doing it2. seeing people (like me) do it3. social persuasion4. your own body

(Bandura also did social learning, which is a lot of fun – look it up!)

(Bandura also did social learning, which is a lot of fun – look it up!)

Daphne's QuestionsDaphne's Questions● What are you trying to do and how will you

tell that it’s working?● What does this part do? What happens

when you take it out?● What does this function do? What would

you use it for somewhere else? Where is it called?

● Why are you taking this approach?● Why are you working on this?

http://blackfemalecoders.tumblr.com/post/63601111261/on-becoming-a-confident-hacker

http://blackfemalecoders.tumblr.com/post/63601111261/on-becoming-a-confident-hacker

uredoin

itrite

CC-BY-SA from http://www.flickr.com/photos/ykjc9/4143179870

ProductivelyProductivelyLostLost