2019 Conference - Is there a Future for DevOps?
Is There a Future for DevOps?
Reflections on a year spent talking about DevOps
1. Shiny in Production Workshop
2. Configuration Management Tools for the R Admin
3. Championing Analytic Infrastructure
4. Art of the Feature Toggle
5. Environmental Release Patterns
6. Shiny in Production: Building bridges from data
science to IT
7. Data Product Delivery: The R user’s journey
toward improving daily work
8. The R in Production Handoff: Building bridges
from data science to IT
9. Interactivity in Production
Solutions Engineer at a Software
Company called RStudio.
RStudio builds open source and
professional tools used by the Data
Science and Statistical Computing
Solutions Engineering isn’t Dev and it isn’t Ops...
Big Data Applications
R in Production
What is there to learn?
What are the needs?
What can we build?
How I fell into DevOps
Introduction to DevOps
1. DevOps is a philosophy / set of practices
2. Which create new processes for
collaboration between Dev and Ops teams
3. There’s nothing new in DevOps
A framework for making sense out of common sense
When developers begin to think of
infrastructure as part of their application,
stability and performance become
- Jeﬀ Geerling “Ansible for DevOps”
Vicious cycle of mutual resentment and distrust
Dev Silo IT/Ops Silo
“Hey - could you just put this thing in
production real quick?”
“Uh.. I just deployed this little change, and
something might be broken”
The DevOps Handbook
1. Accelerate Flow
- Make work visible
- Limit Work in Progress (WIP)
- Reduce Batch Sizes
- Reduce the number of handoﬀs
- Continually identify and elevate
- Eliminate hardships and waste
2. Utilize Feedback
- See problems as they occur
- Swarm to solve problems and
build new knowledge
- Keep pushing quality closer to
- Enable optimizing for
downstream work centers
3. Learn and Experiment
- Enable organizational learning
and a safety culture
- Institutionalize the improvement
of daily work
- Transform local discoveries into
- Inject resilience patterns into daily
Three principles form the
underpinnings of DevOps:
Data Science Humanity
Make an impact: Data Product Development & Delivery
“It doesn’t matter how great
your analysis is unless you
can explain it to others:
You need to communicate
Grad School Shiny Application Development - 2014
Local Environment Promotion Strategies
Local Data Science Environment
Email an Image or PDF
Email the Code or Package
Create a Shared Git Repository
Publish to RPubs / Shinyapps.io
Publish to an Analytic Sandbox (Tinker-Space)
Deploy to Professional Analytic Infrastructure
Sophistication / Usefulness
SUPER-vicious cycle of mutual resentment and distrust
Data Science Silo IT/Ops Silo
“Hey - I wrote this code using a bunch of
open source packages some random
person from the internet created …
Also, what’s a test?”
Challenges for the R User
● Legitimizing R
● Working with IT
The Analytic Administrator
How to wade in … with Empathy and Strategery!
Does DevOps Exist
in Your Org?
Is IT/Ops comfortable
helping you bring
Shiny to production?
Get ready to
Make a checklist,
build a POC, be
prepared to take it
This is your chance to meet
some people! Talk to a
developer or IT Human!
Are you comfortable
bringing DevOps to
Figure out who
Noodle on it!
Make a communication plan and
come with an open mind.
Start by answering some questions…
- What is a Shiny Application?
- Who is the audience?
- What is your service level agreement definition? (SLA)
- What does your analytic architecture look like today?
- What are your goals for evolving this architecture?
- How will monitoring be handled?
- Who is responsible for maintenance?
Make work visible, Define shared goals, Build a checklist, Iterate
Empathetic Communication is Challenging
Strategies for Managing
& Define Shared Goals
Shorten the distance between
development and production
ADVOCATE FOR A
B. User Acceptance Testing
● I don’t want to remember to run this testing procedure
● I don’t want to have to assure someone from IT that I ran it
● I certainly don’t want to hand the job oﬀ to them
GIVE IT TO THE MACHINES
The improvement of daily work
Production Building Blocks
Is there a future