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

REfactoring a Community: Resiliency through Maintenance Mode

REfactoring a Community: Resiliency through Maintenance Mode

Stopping work that doesn't serve your defined goals is a form of strength. Permission to do so is a learned skill. Find a metaphor that gives you permission to stop.

We are used to slowdowns before a big push forward: the code freeze before every software release and maintenance mode before a deployment. But what happens when you need to take a full step back and reevaluate the direction your initiative is heading in?

This is the story of Sensu — an Open Source project that was wildly successful without much structure, but then it hit a plateau. After several conversations with the top contributors, VP of Community, Matt Broberg took drastic measures and announced that the project was going on “Maintenance Mode,” giving all project participants the ability to rethink how they communicated. The Sensu community has since come out of Maintenance Mode with clearer contributor guidelines, better coding practices and a stronger communication structure. But that’s just one story.

This talk digs into why all companies benefit from a Maintenance Mode at times of significant change. It will provide a framework to identify contributor needs and give recommendations on how to set up your initiative for success. Whether you’re a lead of a community, or software stack of an entire freaking company, this intentional look at what you’re building and how people can communicate about it is relevant to you.

Matthew (Brender) Broberg

August 17, 2018

More Decks by Matthew (Brender) Broberg

Other Decks in Technology


  1. REfactoring a Community VP Community, Sensu Inc. Matt Broberg @mbbroberg

    REdeploy ‘18 Resiliency through Maintenance Mode
  2. 1. How are you involved in the community right now?

    2. Are you looking to contribute more actively (or less)? 3. If more, what’s holding you back from doing so? 4. Where do you participate in the community (both online and offline)? 5. What’s your experience communicating with other Sensu users? 6. What’s the best part of the community? 7. What’s the worst part? 8. What’s one thing we can fix today to make it better? @mbbroberg
  3. newbie_1 08:13:00 how do I verify sensu server is online?

    @mbbroberg maintainer_5 08:20:00 hey newbie_1, run `curl` to confirm
  4. +1

  5. Sunk Cost Fallacy @mbbroberg The Misconception: You make rational decisions

    based on the future value of objects, investments and experiences. The Truth: Your decisions are tainted by the emotional investments you accumulate, and the more you invest in something the harder it becomes to abandon it. Quote from https://youarenotsosmart.com/2011/03/25/the-sunk-cost-fallacy/
  6. Hindsight Bias @mbbroberg Inclination to believe events as predictable, despite

    there having been little or no objective basis for predicting it. Adaptation of https://en.wikipedia.org/wiki/Hindsight_bias
  7. Narrative Bias @mbbroberg Refers to our tendency to make sense

    of the world through stories. Ref: https://moneymattersforglobetrotters.com/narrative-bias-how-to-make-it-work-for-your-advantage/
  8. Framing Effect @mbbroberg The cognitive bias of reacting to a

    particular choice in different ways depending on how it is presented; e.g. as a loss or as a gain. https://en.wikipedia.org/wiki/Framing_effect_(psychology)
  9. @mbbroberg The Plan 1. No PR merges 2. Default issue

    reply only 3. All options on the table
  10. @mbbroberg Standardize practices across our 200+ Plugins Increase maintainers from

    1-2 to 10 Standardize our communication channels for discussion and backlog Why?
  11. @mbbroberg F Sync For casual, high throughput discussion Async For

    a definitive, recorded answer News To stay informed and empowered F2F To build a formidable bond
  12. @mbbroberg Sensu backend (event pipeline) Event Filter Mutator Handler Event

    (Nagios PerfData) Filter (n/a) Mutator (PerfData => InfluxDB) Handler (InfluxDB) Event (HTTP 404!) Filter (only notify every 30m) Mutator (n/a) Handler (PagerDuty) Event (Host up!) Filter (only production) Mutator (n/a) Handler (CMDB registration) Event (Host down!) Filter (only production) Mutator (n/a) Handler (EC2 Verification) Event (Database replica lag!) Filter (only production) Mutator (n/a) Handler (In-house tooling)
  13. 1. Give it a name 2. Have a why 3.

    Permission to pivot @mbbroberg Essentials
  14. Thanks! VP Community, Sensu Inc. Matt Broberg @mbbroberg Maintainer Bits

    • Learn GitHub (bitly.com/git-it) • Readmes (awesome-readme) • Advice for maintainers (thread) • GitHub Maintainers program • All Contributors project • Sane GitHub Labels project Psychological Bits • Buy the cognitive bias codex • Ben Franklin Effect