• Like
Real-time Collaborative Development (Jazoon 2011)
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

Real-time Collaborative Development (Jazoon 2011)

  • 250 views
Published

 

Published in Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
250
On SlideShare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
2
Comments
0
Likes
1

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Real-timeCollaborativeDevelopment:At the Extremities of Extreme Image © Christopher Michot Julian Fitzell
  • 2. col·lab·o·ra·tion /kəˌlabəˈrāSHən/n. The act of working with others tocreate or achieve something.
  • 3. Collaboration bandwidth• SalesForce - outsource your infrastructure and app maintenance to another - not bandwidth• Twitter - Narrow band - cope with many interactions• Facebook - widening bandwidth - those with 1,500 friends are about Narrow but those with 20 are much broader• Online Gaming - WoW - play people you don’t know or with friends but it is immersive
  • 4. Online Gaming• fine-grained collaboration• immersion• transparency / feedback• flow / transitions
  • 5. A Simple Idea What if we allowed a group ofdevelopers to simultaneously develop the same running application?
  • 6. fine-grainedcollaboration
  • 7. Roam territory Wolf Pack Programming ™ Search for a herd Test prey animals
  • 8. If it takes flight, whole pack chases If it stands, pack circles, two wolves attackSelect easiest prey
  • 9. Roam territory Search for a herd Test prey animals
  • 10. Roam problem domain / code base Search for a herd Test prey animals
  • 11. Roam problem domain / code base Search for a requirement / feature Test prey animals
  • 12. Roam problem domain / code base Search for a requirement / feature Test spikes
  • 13. If it takes flight, whole pack chases If it stands, pack circles, two wolves attackSelect easiest prey
  • 14. If it takes flight, whole pack chases If it stands, pack circles, two wolves attack Select easiestimplementation
  • 15. If close to a solution, whole pack programs (flight) If it stands, pack circles, two wolves attack Select easiestimplementation
  • 16. If close to a solution, whole pack programs (flight) If it fights back, two wolves program; others rest (stand-off) Select easiestimplementation
  • 17. immersion
  • 18. immersion • attention focused • mentally invested • presence
  • 19. theCode: is ^ [ :your | reality ]
  • 20. Pairing© Paul Stravinsky
  • 21. Pairingrestricts your view on the world © Paul Stravinsky
  • 22. an d int w le t tr i p programming pair
  • 23. transparency
  • 24. Heat and Scenthttp://upload.wikimedia.org/wikipedia/commons/7/7d/Canis_lupus_tracks_in_sand.jpg
  • 25. Continuous Testing
  • 26. A wolf’s concept of territoryPD-USGOV-INTERIOR-NPS.
  • 27. Open Channel Image © Retron / Darren (flickr)
  • 28. flow
  • 29. [ Build fails ] Continuous Integration [ Build succeeds with all tests passing ] build [ Build fails but quick fix ]Revert changes Fix and commit Integration complete Repository Repeat Start Sync local files Re-Sync local Commit local files changes [ All conflicts resolved ] Test Build locally Refactor Code
  • 30. Repository RepeatStart Spike Commit Select Spike changes Test [ Build succeeds with all tests passing ] Everyone works on it Refactor Code
  • 31. Repository RepeatStart Spike Select Spike Commit changes Test Everyone [ Build succeeds with all tests passing ] works on it Code Refactor
  • 32. col·lab·o·ra·tion /kəˌlabəˈrāSHən/n. The act of working with others tocreate or achieve something.
  • 33. © 2008 Ivan Tessier
  • 34. Julian Fitzell jfitzell@cincom.com Twitter: @jfitzellCINCOM and the Quadrant Logo are registered trademarks of Cincom Systems, Inc. © 2010,2011 Cincom Systems, Inc.All other trademarks belong to their respective companies. All rights reserved