20
Practice makes perfect? How to develop your technical skills the effective way @Ellen_Koenig

Deliberate practice hackership

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: Deliberate practice   hackership

Practice makes perfect?

How to develop your technical skills the effective way

@Ellen_Koenig

Page 2: Deliberate practice   hackership

Challenge

Clear objectives

Feedback

Repetition

Concentration

PRINCIPLES

Page 3: Deliberate practice   hackership

Examples Ruby Rails Scrum

Objective ? ? ?

Feedback ? ? ?

Repetition ? ? ?

Page 4: Deliberate practice   hackership

measurable verbcriterion of acceptable

performance+

LEARNING OBJECTIVES

Page 5: Deliberate practice   hackership

Predefined objectives: books, courses, ... Gather: Input or

feedback from experts

Define: Decomposition with selection

FINDING AND DEFINING OBJECTIVES

Precision: Substitution of vague words

Page 6: Deliberate practice   hackership

DEVELOPING AN OBJECTIVE

I want to learn some advanced Ruby features.

Page 7: Deliberate practice   hackership

DEVELOPING AN OBJECTIVE

Decomposition: I want to learn something about either: closures, meta programming,

methods as objects.

Page 8: Deliberate practice   hackership

DEVELOPING AN OBJECTIVE

Selection: I want to learn something about closures.

Page 9: Deliberate practice   hackership

DEVELOPING AN OBJECTIVE

Precision: I want to learn how closures interact with array methods.

Page 10: Deliberate practice   hackership

DEVELOPING AN OBJECTIVE

Measurable: I want to be able to apply closures to the three array methods

„each“, „collect“ and map“ in a short Ruby demo.

Page 11: Deliberate practice   hackership

Examples Ruby Rails Scrum

ObjectiveApply closures

to „each“, „map“, „collect“

Identify differences in

routing between Rails 3 and 4

Planning poker estimations no more than 50%

off

Feedback ? ? ?

Repetition ? ? ?

Page 12: Deliberate practice   hackership

FEEDBACK

Evaluate

Plan

Act

Observe

Page 13: Deliberate practice   hackership

Examples Ruby Rails Scrum

ObjectiveApply closures

to „each“, „map“, „collect“

Identify differences in

routing between Rails 3 and 4

Planning poker estimations no more than 50%

off

FeedbackDirect feedback: Exploration in

irb

Migrate R3 routing file to R4 with code review

from expert

Compare estimates with

real results

Repetition ? ? ?

Page 14: Deliberate practice   hackership

100%

80%

60%

40%

20%

0%0 mins 20 mins 60 mins 9 hrs 24 hrs 48 hrs 6 days 31 days

EBBINGHAUS‘ RETENTION CURVE

Page 15: Deliberate practice   hackership

Rehearsals

REPETITION STRATEGIES

Foundation skill building

Scenario learningSimulations

Page 16: Deliberate practice   hackership

Examples Ruby Rails Scrum

ObjectiveApply closures

to „each“, „map“, „collect“

Identify differences in

routing between Rails 3 and 4

Planning poker estimations no more than 50%

off

FeedbackDirect feedback: Exploration in

irb

Migrate R3 routing file to R4 with code review

from expert

Compare estimates with

real results

Repetition Different coding challenges

Migrate multiple files with

different features

Perform estimation each week for two

months

Page 17: Deliberate practice   hackership

Clear objectives

• verb + criterion of successful performance

• Sources: Predefined, experts, own

• Refinement: decomposition and substitution

Feedback

• Can you tell if you hit your goal?

• built-in vs. explicit

• positive vs. negativeRepetition

• For how much variation do you need to plan?

• Rehearsals

• Foundational skills + simulation

DEFINE YOUR OWN APPROACH

Page 18: Deliberate practice   hackership

DEFINE YOUR OWN APPROACH

Challenge

Pick something that scares you, but does

not paralyze you

Concentration

Experiment!

Eliminate external distractions,

take breaks, maybe meditate, …

Page 19: Deliberate practice   hackership

Have fun learning! :)

Page 20: Deliberate practice   hackership

Image Source

Slide 15: Ebbinghaus‘ curve:

Wikipedia: http://commons.wikimedia.org/wiki/File:Vergessenskurve.png

(modified to translate from German to English and fit design)