More Related Content Similar to Waza keynote: Idea to Delivery Similar to Waza keynote: Idea to Delivery (20) More from Adam Wiggins (6) Waza keynote: Idea to Delivery1. Idea to
Delivery
app development in 2012
Adam Wiggins
Waza, January 2012
Friday, January 13, 2012
7. “ The Feynman Problem-Solving
Algorithm:
Friday, January 13, 2012
8. “ The Feynman Problem-Solving
Algorithm:
(1) Write down the problem.
Friday, January 13, 2012
9. “ The Feynman Problem-Solving
Algorithm:
(1) Write down the problem.
(2) Think very hard.
Friday, January 13, 2012
10. “ The Feynman Problem-Solving
Algorithm:
(1) Write down the problem.
(2) Think very hard.
”
(3) Write down the answer.
- Murray Gell-Mann
http://quotations.tastefulwords.com/murray-gell-mann/the-feynman-problem-solving-algorithm/
Friday, January 13, 2012
11. Where can we
look for new
techniques?
Friday, January 13, 2012
15. Idea Implementation Deployment Delivery
Friday, January 13, 2012
16. Programmer
Idea Implementation Deployment Delivery
Friday, January 13, 2012
17. programmer
vs
app developer
Friday, January 13, 2012
18. Breadth of
responsibility
Friday, January 13, 2012
19. Programmer
Idea Implementation Deployment Delivery
Friday, January 13, 2012
20. App developer
Idea Implementation Deployment Delivery
Friday, January 13, 2012
21. 4 techniques
from the last decade
6 techniques
of the emerging future
Friday, January 13, 2012
24. 1. Agile
2. Software-as-a-service
Friday, January 13, 2012
25. 1. Agile
2. Software-as-a-service
3. Web frameworks
Friday, January 13, 2012
26. 1. Agile
2. Software-as-a-service
3. Web frameworks
Friday, January 13, 2012
27. 1. Agile
2. Software-as-a-service
3. Frameworks
Friday, January 13, 2012
28. 1. Agile
2. Software-as-a-service
3. Frameworks
4. Virtualization
Friday, January 13, 2012
29. 1. Agile
2. Software-as-a-service
3. Frameworks
4. Virtualization Cloud
Friday, January 13, 2012
30. 1. Agile
2. Software-as-a-service
3. Frameworks
4. Cloud
Friday, January 13, 2012
31. Idea Implementation Deployment Delivery
Friday, January 13, 2012
32. Agile Framework Cloud SaaS
Idea Implementation Deployment Delivery
Friday, January 13, 2012
33. Agile Framework Cloud SaaS
Idea Implementation Deployment Delivery
Friday, January 13, 2012
34. Scrum Rails Heroku URL
Idea Implementation Deployment Delivery
Friday, January 13, 2012
35. Agile
+ Frameworks
+ Cloud
+ SaaS
Friday, January 13, 2012
37. 6 techniques
for 2012 and beyond
Friday, January 13, 2012
39. Technique 1
Deploy from day 1
Friday, January 13, 2012
40. Early development
Idea Implementation Deployment Delivery
Friday, January 13, 2012
41. Early development
Idea Implementation Deployment Delivery
Friday, January 13, 2012
42. Early development
Idea Implementation Deployment Delivery
Friday, January 13, 2012
44. “ Even at this early stage, we’re
already going to deploy our (still-
empty) Rails application to
production. This step is optional,
but deploying early and often
allows us to catch any deployment
problems early in our development
cycle.
Friday, January 13, 2012
45. The alternative—deploying only
after laborious effort sealed away
in a development environment—
often leads to terrible integration
headaches when launch time
comes.
Friday, January 13, 2012
46. The alternative—deploying only
after laborious effort sealed away
in a development environment—
often leads to terrible integration
headaches when launch time
comes.
Friday, January 13, 2012
47. Technique 1
Deploy from day 1
Friday, January 13, 2012
49. Technique 2
Continuous
deployment
Friday, January 13, 2012
56. Technique 2
Continuous
deployment
Friday, January 13, 2012
60. Idea Implementation Deployment Delivery
Friday, January 13, 2012
61. Decouple these
Idea Implementation Deployment Delivery
Friday, January 13, 2012
68. A
gradual &
granular
method for delivery
Friday, January 13, 2012
73. We see
friction
across
1000s of apps
Friday, January 13, 2012
79. Technique 4
Dev/prod parity
Friday, January 13, 2012
80. Development:
SQLite
Production:
PostgreSQL
Friday, January 13, 2012
81. Development:
SQLite
Uh oh.
Production:
PostgreSQL
Friday, January 13, 2012
82. Development and
production as
similar as possible
Friday, January 13, 2012
84. Can we go further?
Friday, January 13, 2012
87. Technique 4
Dev/prod parity
Friday, January 13, 2012
89. Technique 5
Stay close to
production
Friday, January 13, 2012
92. “ No battle plan survives
first contact with the
enemy.
Friday, January 13, 2012
- von Moltke
”
93. “ No code survives contact
with production load.
Friday, January 13, 2012
”
94. Your code in
development is
theoretical
Friday, January 13, 2012
95. Your code in
production is
reality
Friday, January 13, 2012
96. “ Everyone has a plan 'till
they get punched in the
mouth.
Friday, January 13, 2012
- Mike Tyson
”
97. Real user
behavior
will punch you in the
mouth
Friday, January 13, 2012
103. Technique 5
Stay close to
production
Friday, January 13, 2012
105. Technique 6
Logs as event
streams
Friday, January 13, 2012
109. Everything that
your app has done,
in the past
Friday, January 13, 2012
111. Papertrail
http://addons.heroku.com/papertrail
Friday, January 13, 2012
113. Loggly
http://addons.heroku.com/loggly
Friday, January 13, 2012
118. Technique 6
Logs as event
streams
Friday, January 13, 2012
120. Deploy from day 1
early and often avoids
launch-day headaches
Friday, January 13, 2012
121. Continuous
deployment
deploy on days 2, 3, and n
Friday, January 13, 2012
122. Feature flags
decouple
deployment & delivery
Friday, January 13, 2012
123. Dev/prod parity
avoid those little
incompatibilities
Friday, January 13, 2012
124. Stay close to
production
reality is production load
and real user behavior
Friday, January 13, 2012
125. Logs as event
streams
an evidence-based
approach
Friday, January 13, 2012
127. ?
Are you a
programmer
or an
app developer
Friday, January 13, 2012
128. Come out of our
programmer cave
Friday, January 13, 2012
132. Fin.
Adam Wiggins
@hirodusk
http://adam.heroku.com/
Friday, January 13, 2012