My thoughts on applying software craftsmanship principles to the world on DevOps. Presented at the London Software Craftsmanship Community, July 18th 2014
3. Continuous Delivery
“Our highest priority is to satisfy the customer through
early and continuous delivery of valuable software.”
Principle 1; 12 Principles behind the Agile Manifesto
http://agilemanifesto.org/principles.html
4. Continuous Delivery
• Continuous Integration++
• Many of us having been doing this for years…
• “DevOps” - just a label (or a philosophy)?
5. Lets break it down…
1. Operational influence on application code
– Fault tolerance, “Antifragility”
2. The build pipeline
– Fast feedback (and quality controls)
3. “Infrastructure as Code”
– Software Defined Everything (SDN, SDDC)
8. Antifragility
• The opposite of fragile
– Must be robust first
– Fault-tolerant design patterns
• Netflix are best-in-class
– bit.ly/1gs5n3q
17/07/2014 @danielbryantuk
9. 2. Crafting a build pipeline
• Build tools
– Jenkins, Bamboo etc.
• “Ops as a Service” deployment orchestration
– Rundeck (rundeck.org)
• Supports good development
– “Communication, simplicity, feedback, courage”
10. 3. Crafting “Infrastructure as Code”
• Continuous Integration for Infrastructure
– DevOps Weekly (Gareth Rushgrove)
– www.ustream.tv/recorded/46670676
• Infrastructure test pyramid
17/07/2014 @danielbryantuk
14. Summary
Software Craftsmanship principles are
not only relevant to the application code
It’s turtles all the way down…
…including the deployment and infrastructure code
required for the continuous delivery of valuable software
Well crafted DevOps can help here!
15. Thanks For Listening
• Questions / comments?
– daniel.bryant@opencredo.com
– @danielbryantuk
• This was a beta lightning talk
– Let me know if you want to hear more!
17/07/2014 @danielbryantuk