Real-time
Collaborative
Development:
At the Extremities of Extreme




                                Image © Christopher Michot
  Julian Fitzell
col·lab·o·ra·tion /kəˌlabəˈrāSHən/
n. The act of working with others to
create or achieve something.
Real-time Collaborative Development (Jazoon 2011)
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
Real-time Collaborative Development (Jazoon 2011)
Real-time Collaborative Development (Jazoon 2011)
Online Gaming

•   fine-grained collaboration
•   immersion
•   transparency / feedback
•   flow / transitions
Real-time Collaborative Development (Jazoon 2011)
Real-time Collaborative Development (Jazoon 2011)
Real-time Collaborative Development (Jazoon 2011)
Real-time Collaborative Development (Jazoon 2011)
Real-time Collaborative Development (Jazoon 2011)
Real-time Collaborative Development (Jazoon 2011)
A Simple Idea

   What if we allowed a group of
developers to simultaneously develop
   the same running application?
fine-grained
collaboration
Real-time Collaborative Development (Jazoon 2011)
Real-time Collaborative Development (Jazoon 2011)
Real-time Collaborative Development (Jazoon 2011)
Real-time Collaborative Development (Jazoon 2011)
Roam territory        Wolf Pack
                    Programming                ™




       Search for a herd

                           Test prey animals
If it takes flight,
       whole pack chases




                         If it stands, pack circles,
                              two wolves attack
Select easiest
    prey
Roam territory




       Search for a herd

                           Test prey animals
Roam problem domain / code base




         Search for a herd

                             Test prey animals
Roam problem domain / code base




    Search for a requirement / feature

                                 Test prey animals
Roam problem domain / code base




    Search for a requirement / feature

                                    Test spikes
If it takes flight,
         whole pack chases




                          If it stands, pack circles,
                               two wolves attack
Select easiest
    prey
If it takes flight,
         whole pack chases




                          If it stands, pack circles,
                               two wolves attack
 Select easiest
implementation
If close to a solution, whole
        pack programs (flight)




                          If it stands, pack circles,
                               two wolves attack
 Select easiest
implementation
If close to a solution, whole
        pack programs (flight)




                      If it fights back, two wolves
                    program; others rest (stand-off)
 Select easiest
implementation
immersion
immersion
 • attention focused
 • mentally invested
 • presence
theCode: is
  ^ [ :your | reality ]
Pairing




© Paul Stravinsky
Pairing
restricts your
 view on the
    world




                 © Paul Stravinsky
an d
    in
t w le t
   tr i p programming
     pair
transparency
Heat and Scent




http://upload.wikimedia.org/wikipedia/commons/7/7d/Canis_lupus_tracks_in_sand.jpg
Continuous Testing
A wolf’s
                         concept of
                           territory
PD-USGOV-INTERIOR-NPS.
Open Channel
               Image © Retron / Darren (flickr)
flow
Real-time Collaborative Development (Jazoon 2011)
[ 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
Repository                                       Repeat




Start     Spike                                                      Commit
                          Select Spike
                                                                     changes



                  Test                            [ Build succeeds with all tests passing ]


                                          Everyone
                                         works on it


                         Refactor
        Code
Repository                                    Repeat




Start    Spike              Select Spike
                                                                        Commit
                                                                        changes
                 Test              Everyone
                                                [ Build succeeds with all tests passing ]
                                  works on it
        Code

                 Refactor
col·lab·o·ra·tion /kəˌlabəˈrāSHən/
n. The act of working with others to
create or achieve something.
© 2008 Ivan Tessier
Julian Fitzell
  jfitzell@cincom.com

  Twitter: @jfitzell




CINCOM 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

More Related Content

PDF
At the Extremities of Extreme (SPA 2011)
PDF
At the Extremities of Extreme (Agile North 2011)
PDF
Oração do arcanjo miguel para limpeza espiritual em 21 dias
PDF
Seaside - Why should you care? (Dynamic Stockholm 2010)
PDF
ChannelStream: The challenges of continuously delivering
PDF
Appl Phys Lett 96 211103
PDF
Permenkumham 28 2014 orta kanwil kemenkumham sorted
At the Extremities of Extreme (SPA 2011)
At the Extremities of Extreme (Agile North 2011)
Oração do arcanjo miguel para limpeza espiritual em 21 dias
Seaside - Why should you care? (Dynamic Stockholm 2010)
ChannelStream: The challenges of continuously delivering
Appl Phys Lett 96 211103
Permenkumham 28 2014 orta kanwil kemenkumham sorted

Viewers also liked (10)

PDF
Seaside - Why should you care? (OSDC.fr 2010)
DOC
Hunt International Training & Speaking Overview --- January 2013
PDF
Seaside Portability
PDF
Ignorance is not Bliss
DOC
Hunt Iinternational Training & Speaking Catalog --- January 2013
PDF
Orações poderosas
PPT
The Literary Works Of Alice Walker
PPT
IEEE LEOS Optical MEMS
PDF
Comsol2009 Paper
PDF
Slide presentasi pmk 249 2011
Seaside - Why should you care? (OSDC.fr 2010)
Hunt International Training & Speaking Overview --- January 2013
Seaside Portability
Ignorance is not Bliss
Hunt Iinternational Training & Speaking Catalog --- January 2013
Orações poderosas
The Literary Works Of Alice Walker
IEEE LEOS Optical MEMS
Comsol2009 Paper
Slide presentasi pmk 249 2011
Ad

Similar to Real-time Collaborative Development (Jazoon 2011) (20)

PPTX
Linuxtag 2012 - continuous delivery - dream to reality
PDF
Testing Cassandra Guarantees under Diverse Failure Modes with Jepsen
PDF
DataStax: Testing Cassandra Guarantees Under Diverse Failure Modes With Jepsen
PDF
Progressive Deployment & NoDeploy
PDF
Parallelizing CI using Docker Swarm-Mode
PDF
Scala, Functional Programming and Team Productivity
ODP
testing for people who hate testing
PPTX
Continuous Development with Jenkins - Stephen Connolly at PuppetCamp Dublin '12
PDF
Enabling Agile Testing Through Continuous Integration Agile2009
PDF
Scrum Gathering 2012 Shanghai_敏捷测试与质量管理分会场演讲话题:getting to done by testing at ...
PDF
1004 z2 env_positioned
PPTX
Sv jug - mar 2013 - sl
PDF
Compartmentalized Continuous Integration: Enabling Rapid, Flexible Collaborat...
PPTX
Integreation
PPTX
DevOps - Boldly Go for Distro
KEY
Django Deployment with Fabric
PDF
Industrial Strength Groovy - Tools for the Professional Groovy Developer: Pau...
PDF
Migrating to a bazel based CI system: 6 learnings
PDF
Process Matters (Cloud2Days / Java2Days conference))
PDF
The Lean Tech Stack
Linuxtag 2012 - continuous delivery - dream to reality
Testing Cassandra Guarantees under Diverse Failure Modes with Jepsen
DataStax: Testing Cassandra Guarantees Under Diverse Failure Modes With Jepsen
Progressive Deployment & NoDeploy
Parallelizing CI using Docker Swarm-Mode
Scala, Functional Programming and Team Productivity
testing for people who hate testing
Continuous Development with Jenkins - Stephen Connolly at PuppetCamp Dublin '12
Enabling Agile Testing Through Continuous Integration Agile2009
Scrum Gathering 2012 Shanghai_敏捷测试与质量管理分会场演讲话题:getting to done by testing at ...
1004 z2 env_positioned
Sv jug - mar 2013 - sl
Compartmentalized Continuous Integration: Enabling Rapid, Flexible Collaborat...
Integreation
DevOps - Boldly Go for Distro
Django Deployment with Fabric
Industrial Strength Groovy - Tools for the Professional Groovy Developer: Pau...
Migrating to a bazel based CI system: 6 learnings
Process Matters (Cloud2Days / Java2Days conference))
The Lean Tech Stack
Ad

Recently uploaded (20)

PPTX
Final SEM Unit 1 for mit wpu at pune .pptx
PPT
Geologic Time for studying geology for geologist
PPTX
Chapter 5: Probability Theory and Statistics
PPT
Module 1.ppt Iot fundamentals and Architecture
PPTX
The various Industrial Revolutions .pptx
PDF
Zenith AI: Advanced Artificial Intelligence
PDF
Taming the Chaos: How to Turn Unstructured Data into Decisions
PDF
A comparative study of natural language inference in Swahili using monolingua...
PDF
Hybrid horned lizard optimization algorithm-aquila optimizer for DC motor
PPT
What is a Computer? Input Devices /output devices
PDF
Architecture types and enterprise applications.pdf
PDF
DASA ADMISSION 2024_FirstRound_FirstRank_LastRank.pdf
PDF
TrustArc Webinar - Click, Consent, Trust: Winning the Privacy Game
PDF
ENT215_Completing-a-large-scale-migration-and-modernization-with-AWS.pdf
PDF
Hindi spoken digit analysis for native and non-native speakers
PDF
STKI Israel Market Study 2025 version august
PDF
Developing a website for English-speaking practice to English as a foreign la...
PPTX
O2C Customer Invoices to Receipt V15A.pptx
PDF
1 - Historical Antecedents, Social Consideration.pdf
PPTX
MicrosoftCybserSecurityReferenceArchitecture-April-2025.pptx
Final SEM Unit 1 for mit wpu at pune .pptx
Geologic Time for studying geology for geologist
Chapter 5: Probability Theory and Statistics
Module 1.ppt Iot fundamentals and Architecture
The various Industrial Revolutions .pptx
Zenith AI: Advanced Artificial Intelligence
Taming the Chaos: How to Turn Unstructured Data into Decisions
A comparative study of natural language inference in Swahili using monolingua...
Hybrid horned lizard optimization algorithm-aquila optimizer for DC motor
What is a Computer? Input Devices /output devices
Architecture types and enterprise applications.pdf
DASA ADMISSION 2024_FirstRound_FirstRank_LastRank.pdf
TrustArc Webinar - Click, Consent, Trust: Winning the Privacy Game
ENT215_Completing-a-large-scale-migration-and-modernization-with-AWS.pdf
Hindi spoken digit analysis for native and non-native speakers
STKI Israel Market Study 2025 version august
Developing a website for English-speaking practice to English as a foreign la...
O2C Customer Invoices to Receipt V15A.pptx
1 - Historical Antecedents, Social Consideration.pdf
MicrosoftCybserSecurityReferenceArchitecture-April-2025.pptx

Real-time Collaborative Development (Jazoon 2011)