String kata in 20 minutes
-
Upload
brendonpage -
Category
Software
-
view
12 -
download
0
Transcript of String kata in 20 minutes
![Page 1: String kata in 20 minutes](https://reader036.fdocuments.in/reader036/viewer/2022062420/55d044cebb61eb60328b459d/html5/thumbnails/1.jpg)
String Kata
Brendon Page
How it made me a better developer
![Page 2: String kata in 20 minutes](https://reader036.fdocuments.in/reader036/viewer/2022062420/55d044cebb61eb60328b459d/html5/thumbnails/2.jpg)
Me
twitter @brendonpaginate
blog http://geekswithblogs.com/brendonpage
Software Developer @ Chillisoft
![Page 3: String kata in 20 minutes](https://reader036.fdocuments.in/reader036/viewer/2022062420/55d044cebb61eb60328b459d/html5/thumbnails/3.jpg)
Term Keeping
TDDKata
![Page 4: String kata in 20 minutes](https://reader036.fdocuments.in/reader036/viewer/2022062420/55d044cebb61eb60328b459d/html5/thumbnails/4.jpg)
30 minutesevery
morning
Story
Start@
Chillisoft
Stringcalculator
kata 3 months
to get it<=
20 minutes
![Page 5: String kata in 20 minutes](https://reader036.fdocuments.in/reader036/viewer/2022062420/55d044cebb61eb60328b459d/html5/thumbnails/5.jpg)
String Calculator Kata?
Codekata
Practice
working
incrementally
TDDcadence
Roy
Osherove
![Page 6: String kata in 20 minutes](https://reader036.fdocuments.in/reader036/viewer/2022062420/55d044cebb61eb60328b459d/html5/thumbnails/6.jpg)
String Calculator Kata
Step 1“” 0“1” 1“1,2” 3
//[***][%%]\n1***2%%3 6Step 9
…
![Page 7: String kata in 20 minutes](https://reader036.fdocuments.in/reader036/viewer/2022062420/55d044cebb61eb60328b459d/html5/thumbnails/7.jpg)
Chillisoft RulesStrictTDD Intent
revealingnames
Smallmethodsno side effects
DRYcode
Nodebugger
!!!!
Nomouse
!!!!!
Assessment @
< 30 minutes
You’redoing itwrong!
![Page 8: String kata in 20 minutes](https://reader036.fdocuments.in/reader036/viewer/2022062420/55d044cebb61eb60328b459d/html5/thumbnails/8.jpg)
![Page 9: String kata in 20 minutes](https://reader036.fdocuments.in/reader036/viewer/2022062420/55d044cebb61eb60328b459d/html5/thumbnails/9.jpg)
This should be easy
Let’s do this thing
![Page 10: String kata in 20 minutes](https://reader036.fdocuments.in/reader036/viewer/2022062420/55d044cebb61eb60328b459d/html5/thumbnails/10.jpg)
Oh noes this is hard!
First Attempt
![Page 11: String kata in 20 minutes](https://reader036.fdocuments.in/reader036/viewer/2022062420/55d044cebb61eb60328b459d/html5/thumbnails/11.jpg)
Slow improvement
Slowly growing confidence
![Page 12: String kata in 20 minutes](https://reader036.fdocuments.in/reader036/viewer/2022062420/55d044cebb61eb60328b459d/html5/thumbnails/12.jpg)
Light bulb moments
Bursts of improvement
![Page 13: String kata in 20 minutes](https://reader036.fdocuments.in/reader036/viewer/2022062420/55d044cebb61eb60328b459d/html5/thumbnails/13.jpg)
Oh yea!
< 30 minutes
![Page 14: String kata in 20 minutes](https://reader036.fdocuments.in/reader036/viewer/2022062420/55d044cebb61eb60328b459d/html5/thumbnails/14.jpg)
You’re doing it wrong!
First assessment
![Page 15: String kata in 20 minutes](https://reader036.fdocuments.in/reader036/viewer/2022062420/55d044cebb61eb60328b459d/html5/thumbnails/15.jpg)
More improvement
Struggle to go from 30 -> 20
![Page 16: String kata in 20 minutes](https://reader036.fdocuments.in/reader036/viewer/2022062420/55d044cebb61eb60328b459d/html5/thumbnails/16.jpg)
Oh yea!
< 20 minutes
![Page 17: String kata in 20 minutes](https://reader036.fdocuments.in/reader036/viewer/2022062420/55d044cebb61eb60328b459d/html5/thumbnails/17.jpg)
Grrrr …
Okay now record it
![Page 18: String kata in 20 minutes](https://reader036.fdocuments.in/reader036/viewer/2022062420/55d044cebb61eb60328b459d/html5/thumbnails/18.jpg)
Oh yea!
Recorded run in < 20 minutes
![Page 19: String kata in 20 minutes](https://reader036.fdocuments.in/reader036/viewer/2022062420/55d044cebb61eb60328b459d/html5/thumbnails/19.jpg)
Fail
Refactored while under the red
![Page 20: String kata in 20 minutes](https://reader036.fdocuments.in/reader036/viewer/2022062420/55d044cebb61eb60328b459d/html5/thumbnails/20.jpg)
Profit!
Perfect recorded run in < 20 minutes
![Page 21: String kata in 20 minutes](https://reader036.fdocuments.in/reader036/viewer/2022062420/55d044cebb61eb60328b459d/html5/thumbnails/21.jpg)
How Many Times?
30
![Page 22: String kata in 20 minutes](https://reader036.fdocuments.in/reader036/viewer/2022062420/55d044cebb61eb60328b459d/html5/thumbnails/22.jpg)
Well doneyou are now so damn awesome
at writing a string calculator!
I Know What You’re Thinking
![Page 23: String kata in 20 minutes](https://reader036.fdocuments.in/reader036/viewer/2022062420/55d044cebb61eb60328b459d/html5/thumbnails/23.jpg)
But Consider
Keyboard
shortcuts
Tools & techniques
Nomouse
Time
limit
Made me
faster
Made me
faster
CustomSnippets
Resharper VIM
![Page 24: String kata in 20 minutes](https://reader036.fdocuments.in/reader036/viewer/2022062420/55d044cebb61eb60328b459d/html5/thumbnails/24.jpg)
And …
Maintainableunit
tests
Meaningful
failuresfor
unit tests
TDDcadence(red, green, REFACTOR!!)
Assessment&
time limit
Nodebugger
Assessment&
time limit
Made me
faster
Made me
faster
Made me
faster
![Page 25: String kata in 20 minutes](https://reader036.fdocuments.in/reader036/viewer/2022062420/55d044cebb61eb60328b459d/html5/thumbnails/25.jpg)
And …
Discussionwith
peers
Shared
experience
Assessment&
desperation
Requirement
I can bebetter
Everyoneelse
has done it
Helpedme gel
Motivatedme
Helpedme gel
![Page 26: String kata in 20 minutes](https://reader036.fdocuments.in/reader036/viewer/2022062420/55d044cebb61eb60328b459d/html5/thumbnails/26.jpg)
Summary
Helpedme gel
Motivatedme
Made me
faster
I could stop now …
Mind-setof
continuousimprovement
Reduced cognitive
load
Sharedunderstanding
![Page 27: String kata in 20 minutes](https://reader036.fdocuments.in/reader036/viewer/2022062420/55d044cebb61eb60328b459d/html5/thumbnails/27.jpg)
PatternString
katain 20
minutes
Do it everymorning
for 30minutes
How amI going toget this
under 20 minutes?
Take learning forward
![Page 28: String kata in 20 minutes](https://reader036.fdocuments.in/reader036/viewer/2022062420/55d044cebb61eb60328b459d/html5/thumbnails/28.jpg)
Deliberate Practice Model
Pick a
target
Reach for target
Evaluate gap
between reach and
target
Start again
Super
Important
![Page 29: String kata in 20 minutes](https://reader036.fdocuments.in/reader036/viewer/2022062420/55d044cebb61eb60328b459d/html5/thumbnails/29.jpg)
PDCA Cycle
Plan
Do
CheckAct
![Page 30: String kata in 20 minutes](https://reader036.fdocuments.in/reader036/viewer/2022062420/55d044cebb61eb60328b459d/html5/thumbnails/30.jpg)
Why Deliberate Practice?
Myelin
Substance that
insulates neural
pathways Muscle memory
Insulated pathways are more effective
![Page 31: String kata in 20 minutes](https://reader036.fdocuments.in/reader036/viewer/2022062420/55d044cebb61eb60328b459d/html5/thumbnails/31.jpg)
Why Deliberate Practice?
Skills are insulated
neural pathways
Myelin only grows around
pathways when they fire
And it grows slowly!!!
Fire!!!
Fire!!!
Fire!!!
![Page 32: String kata in 20 minutes](https://reader036.fdocuments.in/reader036/viewer/2022062420/55d044cebb61eb60328b459d/html5/thumbnails/32.jpg)
How?
Learning to touch type
example
![Page 33: String kata in 20 minutes](https://reader036.fdocuments.in/reader036/viewer/2022062420/55d044cebb61eb60328b459d/html5/thumbnails/33.jpg)
Apply the Model
Pick a
target
Reach for target
Evaluate gap
between reach and
target
Start again
![Page 34: String kata in 20 minutes](https://reader036.fdocuments.in/reader036/viewer/2022062420/55d044cebb61eb60328b459d/html5/thumbnails/34.jpg)
First Attempt
Learn to
touch type
Facebook typing
speed test
:( 20 words per minuteStart again
This is not working
now what?????
![Page 35: String kata in 20 minutes](https://reader036.fdocuments.in/reader036/viewer/2022062420/55d044cebb61eb60328b459d/html5/thumbnails/35.jpg)
Chunk it up
![Page 36: String kata in 20 minutes](https://reader036.fdocuments.in/reader036/viewer/2022062420/55d044cebb61eb60328b459d/html5/thumbnails/36.jpg)
Second Attempt
Learn key
positions
Typing tutor
beginning lessons
:( 15 words per minuteStart again
Boo
Slower?????
Only letters
![Page 37: String kata in 20 minutes](https://reader036.fdocuments.in/reader036/viewer/2022062420/55d044cebb61eb60328b459d/html5/thumbnails/37.jpg)
Don’t worry slow accurate repetition
is good.
Slow
![Page 38: String kata in 20 minutes](https://reader036.fdocuments.in/reader036/viewer/2022062420/55d044cebb61eb60328b459d/html5/thumbnails/38.jpg)
Repeat it
Learn key
positions
:| 20 words per minuteStart again
Better
Typing tutor
beginning lessons
![Page 39: String kata in 20 minutes](https://reader036.fdocuments.in/reader036/viewer/2022062420/55d044cebb61eb60328b459d/html5/thumbnails/39.jpg)
Repeat it more
Learn key
positions
:) 40 words per minuteStart again
w00t!
Easy
Typing tutor
beginning lessons
?????
![Page 40: String kata in 20 minutes](https://reader036.fdocuments.in/reader036/viewer/2022062420/55d044cebb61eb60328b459d/html5/thumbnails/40.jpg)
Struggle
Try stay in the space just beyond your current abilities
![Page 41: String kata in 20 minutes](https://reader036.fdocuments.in/reader036/viewer/2022062420/55d044cebb61eb60328b459d/html5/thumbnails/41.jpg)
Bigger chunksLearn
touch
typing
words
Typing tutor later lessons
:) X words per minuteStart again
Words then sentences
Remember
you might
slow down
at first
![Page 42: String kata in 20 minutes](https://reader036.fdocuments.in/reader036/viewer/2022062420/55d044cebb61eb60328b459d/html5/thumbnails/42.jpg)
Choice
Haphazardly build skills while you
work
Choose the
skills you
build and
leverage while
you work
![Page 43: String kata in 20 minutes](https://reader036.fdocuments.in/reader036/viewer/2022062420/55d044cebb61eb60328b459d/html5/thumbnails/43.jpg)
Summary
Become betterby deliberately developing the
skills you want
![Page 44: String kata in 20 minutes](https://reader036.fdocuments.in/reader036/viewer/2022062420/55d044cebb61eb60328b459d/html5/thumbnails/44.jpg)
Thank you!Questions?