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

Pull Requests: Not Just For Code Anymore

Pull Requests: Not Just For Code Anymore

Many companies have copied the fork-and-pull-request model from open source because it works so well, even for closed-source projects. So why are company processes and policies written in isolation with no collaboration? I'll present New Relic's implementation of an open-source-inspired workflow that drives all of our internal company processes.

What if, instead of 8AM Monday e-mails from on high announcing a new policy change, everyone got a chance to collaborate freely on proposed changes - without meetings? What if all aspects of a company's internal processes and culture, from hiring policies to technical architecture to code reviews to expense reporting, were not only clearly documented, but openly editable? What if every single employee in a company could effect sweeping change in how the company did business, just by a simple pull request?

The open-source community writes software this way, and has proven it can work. At New Relic, we've ditched laborious process meetings and long-running e-mail chains in favor of Github Pages and pull requests. In this talk, I'll explain how we've made this work and show you the tools and “meta-process” we use to pull it off. I'll also share our results and lessons learned, and maybe even inspire you to start a similar revolution at your company.

2fad1f0f6ab9b2a4ed6699e2c96c9a45?s=128

Tim Krajcar

August 22, 2015
Tweet

Transcript

  1. Pull Requests: Not Just For Code Anymore Tim Krajcar

  2. None
  3. April 2015

  4. –Johnny Appleseed https://www.dropbox.com/s/8t7mg4gikhx0d5p/Screenshot%202015-06-09%2019.12.34.png? dl=0

  5. TimKrajcar Tim Krajcar's Twitter handle is: @TimKrajcar

  6. TimKrajcar

  7. TimKrajcar story time

  8. Effective immediately all expense reports will need to be printed

    and have physical receipts attached when filed. Thank you. -- accounting manager
  9. To respond to the 50 people who replied to my

    earlier message asking why, I need the receipts to verify the expense totals match. -- accounting manager
  10. No, electronic scans are not good enough. -- accounting manager

  11. TimKrajcar

  12. TimKrajcar this is common

  13. TimKrajcar it's surprising (the bad kind)

  14. TimKrajcar it seems vindictive

  15. TimKrajcar no ownership no transparency

  16. TimKrajcar why does this happen?

  17. –Johnny Appleseed

  18. –Johnny Appleseed

  19. TimKrajcar Dunbar's number: 150

  20. TimKrajcar direct followup is hard. big rules are easy.

  21. TimKrajcar why does this happen?

  22. TimKrajcar because you allow it.

  23. TimKrajcar this is "culture"

  24. “It’s organizational culture that makes productive systems, not 10x developers.

    Bad culture ruins good people.” Jez Humble, VP@Chef
  25. TimKrajcar explicit culture: the things that are written down

  26. TimKrajcar implicit culture: the things that just happen

  27. TimKrajcar explicit > implicit

  28. TimKrajcar clear expectations

  29. TimKrajcar faster onboarding

  30. TimKrajcar accountability!

  31. TimKrajcar show your work

  32. TimKrajcar "here's what we do, and why" vs "it's always

    been this way"
  33. TimKrajcar building explicit culture

  34. “Reinforce the value of 'non-productive' activities that enhance culture.” Liza

    Daly, CTO, Safari
  35. TimKrajcar artifacts of culture

  36. TimKrajcar "corporate stuff"

  37. –Johnny Appleseed

  38. –Johnny Appleseed

  39. TimKrajcar "corporate stuff" contribution guidelines

  40. –Johnny Appleseed

  41. TimKrajcar explicit culture is important. how to build it?

  42. None
  43. TimKrajcar cumbersome consumes massive time probably the wrong people

  44. –Johnny Appleseed

  45. TimKrajcar requires "boldness" no discussions

  46. –Johnny Appleseed

  47. –Johnny Appleseed

  48. –Johnny Appleseed

  49. –Johnny Appleseed

  50. None
  51. no servers to manage!

  52. no waiting for deploys!

  53. no CMS to update!

  54. TimKrajcar in practice at

  55. –Johnny Appleseed

  56. –Johnny Appleseed

  57. None
  58. TimKrajcar processes: since July 1, 2014 214 pull requests 48

    contributors most comments: 40
  59. TimKrajcar architecture: since March 24, 2015 137 pull requests 32

    contributors most comments: 129
  60. None
  61. TimKrajcar lessons learned

  62. –Johnny Appleseed

  63. None
  64. None
  65. TimKrajcar encourage action. pull requests > suggestions

  66. TimKrajcar with merge rights comes merge responsibility

  67. TimKrajcar it's not a deomcracy. (neither is open source)

  68. –Johnny Appleseed

  69. TimKrajcar designate an entropy fighter

  70. –Johnny Appleseed

  71. –Johnny Appleseed

  72. –Johnny Appleseed

  73. –Johnny Appleseed

  74. TimKrajcar take 2

  75. –Johnny Appleseed

  76. –Johnny Appleseed

  77. TimKrajcar ?

  78. TimKrajcar thanks!

  79. TimKrajcar This document and the information herein (including any information

    that may be incorporated by reference) is provided for informational purposes only and should not be construed as an offer, commitment, promise or obligation on behalf of New Relic, Inc. (“New Relic”) to sell securities or deliver any product, material, code, functionality, or other feature. Any information provided hereby is proprietary to New Relic and may not be replicated or disclosed without New Relic’s express written permission. Such information may contain forward-looking statements within the meaning of federal securities laws. Any statement that is not a historical fact or refers to expectations, projections, future plans, objectives, estimates, goals, or other characterizations of future events is a forward-looking statement. These forward-looking statements can often be identified as such because the context of the statement will include words such as “believes,” “anticipates,” “expects” or words of similar import. Actual results may differ materially from those expressed in these forward-looking statements, which speak only as of the date hereof, and are subject to change at any time without notice. Existing and prospective investors, customers and other third parties transacting business with New Relic are cautioned not to place undue reliance on this forward-looking information. The achievement or success of the matters covered by such forward-looking statements are based on New Relic’s current assumptions, expectations, and beliefs and are subject to substantial risks, uncertainties, assumptions, and changes in circumstances that may cause the actual results, performance, or achievements to differ materially from those expressed or implied in any forward-looking statement. Further information on factors that could affect such forward-looking statements is included in the filings we make with the SEC from time to time. Copies of these documents may be obtained by visiting New Relic’s Investor Relations website at ir.newrelic.com or the SEC’s website at www.sec.gov. New Relic assumes no obligation and does not intend to update these forward-looking statements, except as required by law. New Relic makes no warranties, expressed or implied, in this document or otherwise, with respect to the information provided.