Upgrade to Pro — share decks privately, control downloads, hide ads and more …

DODDFW2017 - Everything I need to know about DevOps I learned in The Marines

DODDFW2017 - Everything I need to know about DevOps I learned in The Marines

We all wish we could “install the DevOps”, but we can’t. If you compare the 2016 and 2017 State of DevOps reports, “low performers” are deploying more often, but their quality has gone down. Discipline and rigorous technical practices are required to achieve the benefits DevOps promises.

The military is the ultimate in command and control, making sure your every second is accounted for and every step planned. This is pretty much the opposite of a DevOps culture where sharing and accepting failure are norms… right?

Not so fast…

When I got to boot camp 30 years they made us sit cross legged on bare concrete for “classroom” sessions. Try it for more than 10 minutes some time. It hurts. It made no sense. Of course you get used to it after a few weeks.

Around the sixth week they started teaching us shooting positions. Turns out one of the most stable is sitting cross legged. Stability is important at 300 yards. Something that hurt a couple months earlier was now second nature. We had the foundation required to learn the next steps (literally).

Ready to shoot, right? Yeah, not so much. Now we got to spend a week sitting on grass and pretending to shoot before we ever saw a round of ammunition. Staging deployment anyone?

In much the same way, solid technical principles enable a DevOps culture.

If we make good automation, good test practices, good code quality, useful measurement and helpful feedback loops second nature, we’re free to let our teams solve the hard problems with reduced risk. Command and control can be at the organizational level where it needs to be, with the people best suited to it (our development teams) providing the value required to support that mission.

This talk will underscore the importance of many technical practices, but the talk itself is not technical. For example, I’ll compare test driven development (TDD) to “dry firing” in boot camp, but I won’t be showing test code.

01cb962dcdc528b53f824092b4d9ab7c?s=128

DevOpsDays DFW

August 30, 2017
Tweet

Transcript

  1. None
  2. “…low performers reported improved deployment frequency and lead time for

    changes, compared to last year. However, the low performers reported slower recovery times and higher failure rates... “ https://puppet.com/resources/whitepaper/state-of-devops-report
  3. EVERYTHING I NEED TO KNOW ABOUT DEVOPS I LEARNED IN

    THE MARINES Ken Mugrage ThoughtWorks @kmugrage
  4. KEN MUGRAGE • Technology Evangelist at ThoughtWorks • DevOpsDays core

    organizer • On the Twitters at @kmugrage • On the Interwebz at http://ken.wtf
  5. This presentation contains images of military training, including people preparing

    to fire weapons There are no images of active combat There is no audio https://www.ptsd.va.gov/public/where-to-get-help.asp
  6. None
  7. None
  8. By Jeremykemp at English Wikipedia, CC BY-SA 3.0, https://commons.wikimedia.org/w/index.php?curid=10547051

  9. None
  10. None
  11. None
  12. None
  13. By Jeremykemp at English Wikipedia, CC BY-SA 3.0, https://commons.wikimedia.org/w/index.php?curid=10547051

  14. THAT THING WHERE YOU DO VERY SPECIFIC THINGS FOR NO

    SPECIFIC REASON
  15. None
  16. None
  17. None
  18. None
  19. None
  20. None
  21. None
  22. “DevOps: A culture where people, regardless of title or background,

    work together to imagine, develop, deploy and operate a system.” -Me
  23. None
  24. “In our study only 10% of participants acknowledged that having

    a CI server was not the same as practicing CI. Conversely, 90% of individuals said they were practicing CI regardless of whether they were specifically practicing the fundamentals of CI or not.” Suzie Prince - https://www.gocd.org/2017/05/16/its-not-CI-its-CI- theatre/
  25. ACTUAL CONTINUOUS INTEGRATION • Is everyone pushing their code into

    trunk / master (not feature branches) on a daily basis? • Does every commit trigger your tests? • When the build is broken, is it typically fixed within 10 minutes? Paraphrased from https://continuousdelivery.com/foundations/continuous-integration/
  26. None
  27. THAT THING WERE YOU LEARN THERE IS A SPECIFIC REASON

  28. None
  29. None
  30. None
  31. None
  32. None
  33. None
  34. None
  35. WORK ON GOOD HABITS 1. I need to work on

    this thing 2. Writes a test 3. Writes some code 4. Test passes 5. Commits to trunk
  36. By Jeremykemp at English Wikipedia, CC BY-SA 3.0, https://commons.wikimedia.org/w/index.php?curid=10547051

  37. None
  38. “There are no white, black, brown, yellow, red, or purple

    recruits here. You’re ALL fucking green.” Sgt. Johnson. Sr Drill Instructor, Platoon 2097 MCRD SD
  39. RISKS ARE NOT CREATED EQUALLY

  40. None
  41. None
  42. None
  43. None
  44. None
  45. None
  46. None
  47. None
  48. None
  49. By Jeremykemp at English Wikipedia, CC BY-SA 3.0, https://commons.wikimedia.org/w/index.php?curid=10547051

  50. PRACTICE LIKE YOU PLAY

  51. None
  52. None
  53. https://www.slideshare.net/RyanHodgin/netflix-security-monkey-overview

  54. None
  55. None
  56. None
  57. None
  58. “We’re not accustomed to occupying defensive positions. It’s destructive to

    morale.” –LtGen H. M. “Howlin’ Mad” Smith, Iwo Jima, 1945
  59. “Survival is optional. No one has to change.” Dr. W.

    Edwards Deming (maybe)
  60. THANK YOU • Images thanks to https://www.dvidshub.net/ in public domain

    subject to https://www.dvidshub.net/about/copyright unless otherwise noted