Take Charge of Your Career
J a r e d R i c h a r d s o n A g i l e A r t i s a n s
@ J a r e d R i c h a r d s o n
A g i l e A r t i s a n s . c o m g r o w s m e t h o d . c o m
1
Who am I?
2
Jared RichardsonCofounder of GROWS Methodology
Author Ship It! and Career 2.0
Screencast editor PragProg.com
Started AgileRTP in 2007 (>1,800 members)
Coach, trainer, speaker
AgileArtisans.com
GROWSMethod.com
EffectiveAgileTeams.com
3
Jared Richardson
Backyard chicken farmer
4
Jared Richardson
Backyard chicken farmer
5
Jared Richardson
Backyard chicken farmer
6
Jared Richardson
Backyard chicken farmer
7
Learning to Ride a Bike
Remember how excited you were?
Parents bought you a book
Took a 2 day course
Got a bike masters certification
Entered your first race
Sat on the bike for the first time!flickr.com/photos/tandemracer/32465379
8
Of Course Not!
Study can’t teach you to ride a bike
Only a bike can teach you that
flickr.com/photos/chaimzvi/169878386
flickr.com/photos/49024304@N00/4105131927
9
Learning a New Scripting Tool
Do you study or try?
Both!
Read this bit…
Then type “Hello World!”
flickr.com/photos/isipeoria/6691167811
10
Experiments
lead to
experience
11
The only source of knowledge is experience
-Albert Einstein
flickr.com/photos/13964815@N00/145646478
12
Only two ways to gain experience
Accidentally
Intentionally
13
Start
Familiar
Working
Smooth
Teaching
Dreyfus Model
ofSkills
Acquisition
Steps
Recipes
Intuition
Stuck
Principles
en.wikipedia.org/wiki/Dreyfus_model_of_skill_acquisition
14
Dreyfus Lessons
Beginners need steps
Experts need freedom
Expertise doesn’t transfer
flickr.com/photos/thehoneybunny/101746482
X15
Expertise
Expert brain surgeon
Horrible cook
Excellent exploratory tester
Novice performance tester
Can be an expert here…
… and clueless thereflickr.com/photos/gemsling/589275040
16
That’s OK
17
Our Expertise
We became experts…
On the ~last~ project
flickr.com/photos/ofernandezberrios/2719764089
18
Today is a New Project
New OS (Windows 10? El Capitan? Sierra? Pangolin?)
New toolkits (Selenium? Cucumber? te52.com?)
New versions from Mercury, HP… and who else knows?
It’s all new!
Slightly different
flickr.com/photos/ofernandezberrios/2720569216
19
Expertise Graph
Skill
Project 1 Project 2
20
Expertise Graph (Expectation)
Skill
Project 1 Project 2
21
Expertise Graph (Reality)
Skill
Project 1 Project 2
22
We’re Not Experts Anymore!
Dunning-Kruger Effect
If you think you’re an expert…
You’re at risk!
flickr.com/photos/ronbennetts/5516621911
23
Are You Sure?
mountaingoatsoftware.com/blog/agile-succeeds-three-times-more-often-than-waterfall
24
Are You Sure?
mountaingoatsoftware.com/blog/agile-succeeds-three-times-more-often-than-waterfall
Waterfall failure > 80%
Agile is 3X safer!
Agile is only 40/60
Russian roulette has better odds
25
Embrace It
We stink
26
More Politely
Our industry is young
Bridge builders have had thousands of years
We’ve had decades
We’re still learning
Still discovering what works
27
Let’s Assume…
Past experience is of less value than we’d hoped
The ability to learn is invaluable
Intentional experimentation is the best way to learn
Ever project is suboptimal and has learning opportunities
flickr.com/photos/katerha/7071545621
28
How?
Let’s focus on a few areas
Requirements
Architecture
Languages & Librariesflickr.com/photos/toolstop/4546017269
29
Requirements
The Expert vs The Learner
30
Requirements: The Expert
I already know what the customer needs
I’ll go write all the requirements for the next release
Leave me alone
Feedback slows me down
You slow me down!
I’ll tell you when I’m done.
flickr.com/photos/skeletalmess/7519959272 flickr.com/photos/fumigraphik/14556518130
31
Requirements: The LearnerI’m not sure
I have a few ideas
I’ll write one down
Discuss with a customer
Review with developers and testers
Let’s implement one
Verify it
Show a customer
Adjust and try againflickr.com/photos/skeletalmess/7519959272
32
Implement
Requirements
Rewrite
Before significant time and $$ is
invested
Discuss
Include the Triad
Dev QA
Customer
Requirement Experiments
Verify
33
Architects: The ExpertI’m an Architect!
The last 5 projects? Development’s fault.
The cloud is just like the mainframe
Tweak a few slides…
Here’s your slide deck architecture
Go implement it.
POOF! (The Disappearing Architect!)
34
Architect: The Learner
Tracer Bullet Development
Walking skeleton
Thin, vertical slices
Validate the technologies interact cleanly
Executable architecture
Engaged partner, working alongside the team
Learning, and changing, as we progress
35
Tech Choices: The ExpertThis worked last time
Shut up and code
I know what I’m doing
It’s what I already know, so it’s what we’ll use again.
And again
And again
And again
flickr.com/photos/dmitry-baranovskiy/2378867408
36
Tech Choices: The Learner
Let’s try it
Let’s code a proof of concept first
How about 2 or 3 experiments?
Spend a few days… then let’s regroup to discuss
37
Why No Testers?
Rumor has it…
It’s easier to see faults in others
flickr.com/photos/dharder9475/16191943997
38
Tester: The Expert
I don’t have time to learn
My company will tell me what to learn
Automate? When?
I’m busy clicking through my tests
Why don’t you help me click?
WHY AREN’T YOU CLICKING TOO??
flickr.com/photos/mvjantzen/8077516249
39
Tester: The LearnerI’ve done this by hand too many times
Can this be automated?
What’s being talked about? (articles, blogs, ???)
Here’s a tool I learned about at a user group.
Can I test it from a different direction?
Can I test at a different level?
Can I automate the automation?
flickr.com/photos/crashmaster/3262933193
40
In Industry Today
Work hard
Long hours
Get certificate of appreciation
Then you’re laid off
Jobs move elsewhere
41
Change is DifficultDont’ change
Experiment
Attempt
Learn
Adopt
Thrive
42
Why Doesn’t Everyone Work This Way?
43
Why Don’t We Work This Way?
44
White Rabbit Projects
I’m late! I’m late!
No time to sharpen the axe
Don’t have time to learn
Shut up and code
Shut up and test
Too busy walking to learn to ride a bike
flickr.com/photos/tearstone/5028273685
45
Learn From History?Repeat the same
mistakes…
Too busy to look up and realize we’re in a rut
flickr.com/photos/lauritopias/15594799343
46
THE KEY TO BIKE RIDING
Is to ride a bike
flickr.com/photos/beatkueng/5182116596
47
THE KEY TO BUILDING SOFTWARE
Is to build software
flickr.com/photos/beatkueng/5182116596
48
THE KEY TO LEARNING
Is to learn
flickr.com/photos/beatkueng/5182116596
49
Get on a bike
50
51
52
Guidelines for Habitual Experimenters (from GROWS)
Intentional (setup loop before starting any activity)
Short (approaching real-time)
Real-world (e.g., “as deployed”, not theoretical)
Iterative (steady, cyclical rhythm)
Incremental (growing small piece at a time)
53
Source of TruthBooks mislead
Friends overstate
Internet lies
Experiments strip away bias, prejudice, and assumption
Experiments reveal reality
flickr.com/photos/jonastana/15624042964
54
ExperimentsThis IS how it works
Not what I thought
Not what I expected
It’s easy to start
Difficult to start
Too slow
It’s great
Truthflickr.com/photos/sandwichgirl/5109314424
55
Stages of Learning
Initial learning
GrowsMethod.com
Improvement
56
Stages of Learning
Initial learning
Improvement
GrowsMethod.com
Unconscious Incompetence
Not aware you suck
57
Stages of Learning
Unconscious Incompetence
Not aware you suck
Initial learning
Improvement
GrowsMethod.com
Conscious Incompetence
Aware you suck
58
Stages of Learning
Unconscious Incompetence
Not aware you suck
Conscious Incompetence
Aware you suck
Initial learning
Improvement
GrowsMethod.com
Conscious Competence
Suck less when you
focus
59
Stages of Learning
Unconscious Incompetence
Not aware you suck
Conscious Incompetence
Aware you suck
Conscious Competence
Suck less when you
focus
Unconscious Competence
You no longer suck
Initial learning
Improvement
GrowsMethod.com
60
Stages of Learning
Unconscious Incompetence
Not aware you suck
Conscious Incompetence
Aware you suck
Conscious Competence
Suck less when you
focus
Unconscious Competence
You no longer suck
Initial learning
Improvement
GrowsMethod.com
61
Stages of Learning
Unconscious Incompetence
Not aware you suck
Conscious Incompetence
Aware you suck
Conscious Competence
Suck less when you
focus
Unconscious Competence
You no longer suck
Initial learning
Improvement
GrowsMethod.com
62
No Pain? No Gain.Get comfortable being uncomfortable
If it’s not hurting, you’re probably doing it wrong
flickr.com/photos/aandaphotography/8703788718
63
Now What?
Intentional experimentation is good
Deliberate learning advances our career
What to learn?
A few samples…
64
Your Roadmap?
The College Journey and Academic Engagement: How Metaphor Use Enhances Identity-Based Motivation
Journal of Personality and Social Psychology 2014, Vol. 106, No. 5, 679–698
65
Continuous Integration
Builds stay clean
Provides code change visibility
Encourages project hygiene
Jenkins is open source
Nice UI
Easy set up
Watch
Build
Unit Tests
PublishContinuous Integration
66
Read Docs
Read Use-cases
Install locally
Monitor anythingDemo
Enlist help Share
with your team
Visit http://jenkins.io
1
2
3
4
56
7
8
67
Virtualization
Run multiple operating systems on your computer
Run a safe testing environment
Pause it
Back it up
Wreck it!
Restore it
68
Visit http://docker.com
What is Docker?
Get Started Tutorial
Install locally
docker run hello-world
Visit hub.docker.com
docker pull jenkins
Share with your
team
1
2
65 3
4
6
7
69
Behavior Driven Development
Describe project features in english
Executable documentation
Write “tests” during planning meeting
Stories are done when the tests pass
Create a common language for dev, test, and PO
70
Visit http://cucumber.io
Read Docs
Read Installation
Watch 3 YouTube tutorials!
Run locallyPartner w/dev to
get basic test running
Write variations of the original test Share
with your team
1
2
3
4
5
6
7
8
71
Web Browser Automation
Verify your product via the web browser
Use free, open source tools to test
Avoid licensing fees for users or servers
Use the bundled IDE to record your actions
72
Visit docs.seleniumhq.org
Read Documentation
Select your team’s
language
Read Introduction
Install IDE & Selenium 2
Record a use case w/IDE
Add a few validations
Demo for your
team
1
2
3
4
56
7
8
73
Remember
Assume what you just learned still works and you’ll be a statistic
Question constantly
Prove every assumption
Validate choices before they’re permanent or expensive
Short, time-boxed experiments drive learning
Knowledge is power
74
Road Map Your Path
Lay out a roadmap for where you want to go
Make it visual
Follow your plan…
Until it’s time for a new plan!
75
This is the end
Of the conference
What have you learned?
What will you do?
76
This is the beginning
Of your next steps
Where will you go?
Write it down
77
Let me remind youBob Galen Mary Thorn
Paul Merrill
Arylee McSweaneyCheezy
Michael Bolton
Lee Copeland
Melanie Drake
Jim Holmes
Jennifer BonineStacy Kirk
Scott Miles
78
They Started in These Seats
They listened and learned too!
What will you do?
What choices will you make?
Will you make intentional experimentation work for you?
79
You don't have to though…This can just be another event in a cool location
I love southern California!
Low humidity
Great temperatures
Bars on the windows; bad traffic
Okay, love the temperatures!
You can just go home
Keep treading water
80
Stages of Learning
Unconscious Incompetence
Not aware you suck
Conscious Incompetence
Aware you suck
Conscious Competence
Suck less when you
focus
Unconscious Competence
You no longer suck
Initial learning
Improvement
GrowsMethod.com
81
Intentional Experimentation
82
Your Roadmap
83
84
Andy HuntOne of the 17 authors of Agile ManifestoAuthor of nine books on tech and agilePublisher, Pragmatic Bookshelf
Jared RichardsonCoach, author and speaker
Founder, Agile Artisans
Experience the 2-day GROWS workshop with
Andy Hunt and
Jared Richardson
GrowsMethod.comEffectiveAgileTeams.com
85