[Human history has been slightly simplified.]![Timeline is not to scale.]
1764 Spinning Jenny
Washing Machine 1858
1941 Electromechanical Computer
Chef 2012
It’s not just me.
@holly_cummins#automationconfessions
[Human history has been slightly simplified.]![Timeline is not to scale.]
1764 Spinning Jenny
Washing Machine 1858
1941 Electromechanical Computer
Chef 2012
It’s not just me.
More and more is automated.
@holly_cummins#automationconfessions
So are we living the dream?
@holly_cummins#automationconfessions
So are we living the dream?
Well. Not quite.
@holly_cummins#automationconfessions
Fixing a classpath
@holly_cummins#automationconfessions
@holly_cummins#automationconfessions
Fixing 26 classpaths
@holly_cummins#automationconfessions
Fixing 26 classpaths
@holly_cummins#automationconfessions
Why automate?
Automate because we are lazy
@holly_cummins#automationconfessions
@holly_cummins#automationconfessions
@holly_cummins#automationconfessions
@holly_cummins#automationconfessions
“Sustainable”
@holly_cummins#automationconfessions
Automate for sustainability!Automate for efficiency
“Sustainable”
@holly_cummins#automationconfessions
!Do a task once.!
Do it a second time and take notes.!Do it a third time, automate.!
@holly_cummins#automationconfessions
Scale
The more of you there are, the more it is worth investing in automation
@holly_cummins#automationconfessions
Treat your servers like cattle, not like pets.
@holly_cummins#automationconfessions
Treat your servers like cattle, not like pets.
@holly_cummins#automationconfessions
Why Automate?
@holly_cummins#automationconfessions
Why Automate?
@holly_cummins#automationconfessions
Automate because you
care
Why Automate?
@holly_cummins#automationconfessions
If you care about it, automate it.
@holly_cummins#automationconfessions
Why Automate?
@holly_cummins#automationconfessions
Automate because you care that it
happens at all
Why Automate?
@holly_cummins#automationconfessions
Marvin
@holly_cummins#automationconfessions
Marvin• Build breaks (including
test failures) should be reverted from the stream
@holly_cummins#automationconfessions
Marvin• Build breaks (including
test failures) should be reverted from the stream
• No one wanted to be the one who did it
@holly_cummins#automationconfessions
Marvin• Build breaks (including
test failures) should be reverted from the stream
• No one wanted to be the one who did it
• It didn’t happen
@holly_cummins#automationconfessions
Marvin• Build breaks (including
test failures) should be reverted from the stream
• No one wanted to be the one who did it
• It didn’t happen
• Solution: Automate!
@holly_cummins#automationconfessions
Marvin• Build breaks (including
test failures) should be reverted from the stream
• No one wanted to be the one who did it
• It didn’t happen
• Solution: Automate!
@holly_cummins#automationconfessions
End of iteration demos
@holly_cummins#automationconfessions
End of iteration demos
Automatic generation on story close
Automating to improve the outcome rather than to save effort:
Automating to improve the outcome rather than to save effort:• Write the Rational Team Concert plugin (one-off)
Automating to improve the outcome rather than to save effort:• Write the Rational Team Concert plugin (one-off)• Close the demo task (every story)
Automating to improve the outcome rather than to save effort:• Write the Rational Team Concert plugin (one-off)• Close the demo task (every story)• Actually do the demo (every story)
Automating to improve the outcome rather than to save effort:• Write the Rational Team Concert plugin (one-off)• Close the demo task (every story)• Actually do the demo (every story)• But … we get guaranteed demos now.
@holly_cummins#automationconfessions
Why Automate?
@holly_cummins#automationconfessions
Automate because you care that it’s done right
Why Automate?
@holly_cummins#automationconfessions
Linting
@holly_cummins#automationconfessions
Linting
• A computer can notice problems that a human can’t (like misspelled variable names)
@holly_cummins#automationconfessions
Linting
• A computer can notice problems that a human can’t (like misspelled variable names)
• We love findbugs
@holly_cummins#automationconfessions
Deployment
@holly_cummins#automationconfessions
Deployment
• Should be easy, right?
@holly_cummins#automationconfessions
Deployment
• Should be easy, right?
• Always one step that gets forgotten …
Why automate?
Why automate?
Why automate?Automate
because it’s fun
Why not automate?
Ross
Why not automate?
I get so mad at how much time I could save if I had more time.
Ross
Why not automate?
I get so mad at how much time I could save if I had more time.
Ross
Ross’s bootstraps
Why not automate?
I get so mad at how much time I could save if I had more time.