Patterns for Collaborative Software Development in a Social World at JavaOne 2015

Patterns for Collaborative Software Development in a Social World at JavaOne 2015

Modern Java software development is an endeavor that requires creativity, science, math, artistry, communication, strategy, and collaboration with colleagues across the globe. The sheer combinatorics of those requirements can seem overwhelming at times. The solution, just as we've done with design patterns for the code and architecture, is the establishment and use of patterns for human and machine communication.

Recommended reading and references:
- http://www.econtalk.org/archives/2014/05/marc_andreessen.html
- http://www.wsj.com/articles/SB10001424053111903480904576512250915629460
- https://kindle.amazon.com/work/the-wisdom-crowds-james-surowiecki-ebook/B000AFAT92/B000FCKC3I
- https://kindle.amazon.com/work/here-comes-everybody-organizing-organizations-ebook/B00149JVSI/B0013TTKQC
- https://kindle.amazon.com/work/the-future-management-gary-hamel-ebook/B000SYRSBW/B004OC07OE
- https://kindle.amazon.com/work/lean-enterprise-performance-organizations-innovate-ebook/B00DYALZDE/B00QL5MSF8
- https://kindle.amazon.com/work/supercooperators-altruism-evolution-other-succeed-ebook/B003UYD2FS/B003UV8TC2
- https://kindle.amazon.com/work/the-silo-effect-expertise-breaking-ebook/B00UFJA0WY/B00UDCNMXM
- https://kindle.amazon.com/work/creativity-inc-overcoming-unseen-inspiration-ebook/B00DFNC2FA/B00FUZQYBO
- https://kindle.amazon.com/work/design-thinking-integrating-innovation-experience-ebook/B002H001YG/B0038OOTBQ
- https://kindle.amazon.com/work/thinking-systems-donella-h-meadows-ebook/B001FEELKU/B001OC6NS6
- https://kindle.amazon.com/work/the-new-kingmakers-stephen-ogrady-ebook/B00BVEEXX4/B0097E4MEU
- https://kindle.amazon.com/work/predictably-irrational-revised-expanded-edition-ebook/B000SJVG56/B002C949KE
- https://kindle.amazon.com/work/team-genius-science-high-performing-organizations-ebook/B00OGJNXAK/B00OG8AXKO
- https://kindle.amazon.com/work/the-myths-innovation-scott-berkun-ebook/B0018LIUS4/B0026OR2PE
- https://kindle.amazon.com/work/multipliers-best-leaders-everyone-smarter-ebook/B00369LV32/B003M69A4Q
- https://kindle.amazon.com/work/the-accidental-creative-brilliant-moments-ebook/B004IRQTQ0/B004IYJDY8
- https://kindle.amazon.com/work/collaborative-intelligence-thinking-people-differently-ebook/B00N6PTIE0/B00N6PEVD8
- https://prezi.com/ks85jqrv6zfs/quality-experience-infodeck/
- https://github.com/trending?l=java&since=monthly
- http://www.wired.co.uk/news/archive/2015-10/06/cognitive-training-people-experts
- http://breakingsmart.com/season-1/the-serendipity-of-streams/

Bededa744012c87721d68f69342f81b0?s=128

Matthew McCullough

October 29, 2015
Tweet

Transcript

  1. Collaborative
 Software Development in a social world Patterns for

  2. 2. Broadcast 1. Act 3. Condense 4. Decide

  3. !v3.0

  4. None
  5. @matthewmccull

  6. T

  7. 99th "

  8. 86th "

  9. passed the NYT "

  10. chasing Netflix "

  11. None
  12. None
  13. None
  14. Assembler

  15. VB

  16. Java

  17. None
  18. 1MB data != 1MB knowledge

  19. Enhance your software development
 with this one easy trick

  20. if (data) then (knowledge) collaboration

  21. Human Email Auto Responders Mailing Lists Spreadsheets Calendar Events Meeting

    Notes Proposal Documents Pitch Decks Customer Transactions Analytics Results Survey Results Tweets Performance Monitors Bug Reports Work Tickets Build Logs Change Logs Server Logs Audit Logs
  22. data++ != knowledge++

  23. data

  24. data

  25. data

  26. data

  27. None
  28. create Business Value

  29. Problem !

  30. Solution?

  31. 1 + 1 = [ [ (9 × 3) /

    3 ] / 3 ] – 1
  32. 2. Broadcast 1. Act 3. Condense 4. Decide

  33. Tools "

  34. easy

  35. easy…

  36. easy…right?

  37. Humans #

  38. What’s the problem?

  39. I wanted to help make it easier sustainable software development

    is Hard
  40. None
  41. None
  42. What are the hardest things about software development, today?

  43. Projects frequently get stuck in the planning phase 10. $

  44. Stakeholders want regular progress reports 9. $

  45. Our devs want self-organizing, startup culture teams 8. $

  46. I don’t know who to assign to architectural projects 7.

    $
  47. We can’t easily find out who’s 
 a domain expert

    6. $
  48. We don’t know how to optimize 
 for continual learning

    5. $
  49. No one wants to do the repetitive data-processing tasks 4.

    $
  50. We have a difficult time 
 attracting top talent 3.

    $
  51. We struggle to to accurately estimate projects 2. $

  52. The stream of project info is overwhelming us all 1.

    $
  53. “Our job is to find a
 few intelligent things to

    do,
 not to keep up with every damn thing in the world.” –Charlie Munger, Partner at Bershire Hathaway
  54. let’s walk through the 4 Steps

  55. 2. Broadcast 1. Act 3. Condense 4. Decide

  56. “It is not enough to just have a good idea.


    Only when you act, when you implement,
 do you truly innovate. –Tom Kelley, Jonathan Littman: The Ten Faces of Innovation
  57. act Early %

  58. Post &

  59. None
  60. “Inspiration Is for Amateurs The Rest of Us Just Show

    Up and Get to Work” –painter Chuck Close
  61. Commit &

  62. topic branches master branch

  63. None
  64. None
  65. “Many accounts… note a "missing hyphen" when a weak radio-guidance

    signal triggered the rare use of error-recovery software which
 lacked a hyphen in an equation, causing miscalculation or truncation of the remainder of the equation,
 which then pointed the rocket downward.” –Postmortem of Mariner I mission
  66. “Fail often to succeed sooner” –Tom Kelley, Ideo

  67. None
  68. automate liberally %

  69. Automate!

  70. None
  71. None
  72. I’ve acted. Now what?

  73. 2. Broadcast 1. Act 3. Condense 4. Decide

  74. “…when the amount of information available to people increases much

    faster than our techniques for processing it, then we can get ourselves in a lot of trouble.” –Nate Silver, author of The Signal and the Noise
  75. open everything %

  76. None
  77. Help!

  78. “most of your computer science career will be single data

    source, single CPU, single threaded processing. Don’t worry about chapter 7.” –my most incorrect university professor, ever
  79. target broadcasts %

  80. None
  81. “Running a fundamentally different approach to decision-making, being much more

    transparent in the way a company communicates, and… having a CEO that is absolutely focused on innovation is something that any company can do.” –JONATHAN ROSENBERG, Former SVP of Products at Google
  82. broadcast secrets %

  83. None
  84. None
  85. “We… take the presentations that were given to the board

    of directors, and we show them to every employee in the company in order to promote communication. And we have a huge disclaimer about, it’s private information… We’ve never had a leak.” –Eric Schmidt, Executive Chairman, Google
  86. work asynchronously %

  87. None
  88. None
  89. How do I make sense of it all?

  90. 2. Broadcast 1. Act 3. Condense 4. Decide

  91. 3.5 billion docs '

  92. Performance Monitors Bug Reports Work Tickets Build Logs Change Logs

    Server Logs Audit Logs github CI Build Results Deploy Results Release Notes
  93. “Humans are by nature, single-threaded processors. much of what I

    do every day is to evaluate which threads are noise and which are signal. unmanaged, my world moves towards 100% noise. ” –Jesse Newland, Ops at Github
  94. Human Email Auto Responders Mailing Lists Spreadsheets Calendar Events Meeting

    Notes Proposal Documents Pitch Decks Customer Transactions Analytics Results Survey Results Tweets Performance Monitors Bug Reports Work Tickets Build Logs Change Logs Server Logs Audit Logs
  95. None
  96. leverage computation %

  97. unify information %

  98. Dashboard (

  99. None
  100. None
  101. context matters %

  102. None
  103. None
  104. None
  105. None
  106. None
  107. where’s the Value?

  108. 2. Broadcast 1. Act 3. Condense 4. Decide

  109. None
  110. None
  111. None
  112. None
  113. decide iteratively %

  114. None
  115. None
  116. None
  117. do we Have to Change?

  118. “Innovation is now recognized as
 the single most important ingredient


    in any modern economy.” –The Economist, Thanksgiving for innovation
  119. no

  120. “It is not necessary to change. Survival is not mandatory.”

    –W. Edwards Deming
  121. None
  122. @matthewmccull