SlideShare una empresa de Scribd logo
1 de 41
Descargar para leer sin conexión
At the
Extremities
of Extreme
      Julian Fitzell




                       Image © Christopher Michot
AgileNorth
June 9, 2011
col·lab·o·ra·tion /kəˌlabəˈrāSHən/
n. The act of working with others to
create or achieve something.
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
Online Gaming

•   fine-grained collaboration
•   immersion
•   transparency / feedback
•   flow / transitions
A Simple Idea

   What if we allowed a group of
developers to simultaneously develop
   the same running application?
fine-grained
collaboration
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
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
[ 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

Más contenido relacionado

Destacado (11)

Permenkumham 28 2014 orta kanwil kemenkumham sorted
Permenkumham 28 2014 orta kanwil kemenkumham sortedPermenkumham 28 2014 orta kanwil kemenkumham sorted
Permenkumham 28 2014 orta kanwil kemenkumham sorted
 
Hunt Iinternational Training & Speaking Catalog --- January 2013
Hunt Iinternational Training & Speaking Catalog --- January 2013Hunt Iinternational Training & Speaking Catalog --- January 2013
Hunt Iinternational Training & Speaking Catalog --- January 2013
 
Seaside Portability
Seaside PortabilitySeaside Portability
Seaside Portability
 
Oração do arcanjo miguel para limpeza espiritual em 21 dias
Oração do arcanjo miguel para limpeza espiritual em 21 diasOração do arcanjo miguel para limpeza espiritual em 21 dias
Oração do arcanjo miguel para limpeza espiritual em 21 dias
 
Seaside - Why should you care? (Dynamic Stockholm 2010)
Seaside - Why should you care? (Dynamic Stockholm 2010)Seaside - Why should you care? (Dynamic Stockholm 2010)
Seaside - Why should you care? (Dynamic Stockholm 2010)
 
Orações poderosas
Orações poderosasOrações poderosas
Orações poderosas
 
Ignorance is not Bliss
Ignorance is not BlissIgnorance is not Bliss
Ignorance is not Bliss
 
The Literary Works Of Alice Walker
The Literary Works Of Alice WalkerThe Literary Works Of Alice Walker
The Literary Works Of Alice Walker
 
IEEE LEOS Optical MEMS
IEEE LEOS Optical MEMSIEEE LEOS Optical MEMS
IEEE LEOS Optical MEMS
 
Comsol2009 Paper
Comsol2009 PaperComsol2009 Paper
Comsol2009 Paper
 
Slide presentasi pmk 249 2011
Slide presentasi pmk 249 2011Slide presentasi pmk 249 2011
Slide presentasi pmk 249 2011
 

Similar a At the Extremities of Extreme (Agile North 2011)

Linuxtag 2012 - continuous delivery - dream to reality
Linuxtag 2012  - continuous delivery - dream to realityLinuxtag 2012  - continuous delivery - dream to reality
Linuxtag 2012 - continuous delivery - dream to reality
Clément Escoffier
 
Testing Cassandra Guarantees under Diverse Failure Modes with Jepsen
Testing Cassandra Guarantees under Diverse Failure Modes with JepsenTesting Cassandra Guarantees under Diverse Failure Modes with Jepsen
Testing Cassandra Guarantees under Diverse Failure Modes with Jepsen
jkni
 
Sv jug - mar 2013 - sl
Sv jug - mar 2013 - slSv jug - mar 2013 - sl
Sv jug - mar 2013 - sl
CloudBees
 
Att lyckas med integration av arbetet från flera scrum team - Christophe Acho...
Att lyckas med integration av arbetet från flera scrum team - Christophe Acho...Att lyckas med integration av arbetet från flera scrum team - Christophe Acho...
Att lyckas med integration av arbetet från flera scrum team - Christophe Acho...
manssandstrom
 
Dell openstack boston meetup dell crowbar and open stack
Dell openstack boston meetup   dell crowbar and open stackDell openstack boston meetup   dell crowbar and open stack
Dell openstack boston meetup dell crowbar and open stack
DellCloudEdge
 

Similar a At the Extremities of Extreme (Agile North 2011) (20)

Linuxtag 2012 - continuous delivery - dream to reality
Linuxtag 2012  - continuous delivery - dream to realityLinuxtag 2012  - continuous delivery - dream to reality
Linuxtag 2012 - continuous delivery - dream to reality
 
Progressive Deployment & NoDeploy
Progressive Deployment & NoDeployProgressive Deployment & NoDeploy
Progressive Deployment & NoDeploy
 
Parallelizing CI using Docker Swarm-Mode
Parallelizing CI using Docker Swarm-ModeParallelizing CI using Docker Swarm-Mode
Parallelizing CI using Docker Swarm-Mode
 
DataStax: Testing Cassandra Guarantees Under Diverse Failure Modes With Jepsen
DataStax: Testing Cassandra Guarantees Under Diverse Failure Modes With JepsenDataStax: Testing Cassandra Guarantees Under Diverse Failure Modes With Jepsen
DataStax: Testing Cassandra Guarantees Under Diverse Failure Modes With Jepsen
 
Testing Cassandra Guarantees under Diverse Failure Modes with Jepsen
Testing Cassandra Guarantees under Diverse Failure Modes with JepsenTesting Cassandra Guarantees under Diverse Failure Modes with Jepsen
Testing Cassandra Guarantees under Diverse Failure Modes with Jepsen
 
1004 z2 env_positioned
1004 z2 env_positioned1004 z2 env_positioned
1004 z2 env_positioned
 
Scala, Functional Programming and Team Productivity
Scala, Functional Programming and Team ProductivityScala, Functional Programming and Team Productivity
Scala, Functional Programming and Team Productivity
 
Sv jug - mar 2013 - sl
Sv jug - mar 2013 - slSv jug - mar 2013 - sl
Sv jug - mar 2013 - sl
 
Compartmentalized Continuous Integration: Enabling Rapid, Flexible Collaborat...
Compartmentalized Continuous Integration: Enabling Rapid, Flexible Collaborat...Compartmentalized Continuous Integration: Enabling Rapid, Flexible Collaborat...
Compartmentalized Continuous Integration: Enabling Rapid, Flexible Collaborat...
 
Migrating to a bazel based CI system: 6 learnings
Migrating to a bazel based CI system: 6 learnings Migrating to a bazel based CI system: 6 learnings
Migrating to a bazel based CI system: 6 learnings
 
Continuous Development with Jenkins - Stephen Connolly at PuppetCamp Dublin '12
Continuous Development with Jenkins - Stephen Connolly at PuppetCamp Dublin '12Continuous Development with Jenkins - Stephen Connolly at PuppetCamp Dublin '12
Continuous Development with Jenkins - Stephen Connolly at PuppetCamp Dublin '12
 
Migrating to a Bazel-based CI System: 6 Learnings - Or Shachar
Migrating to a Bazel-based CI System: 6 Learnings - Or ShacharMigrating to a Bazel-based CI System: 6 Learnings - Or Shachar
Migrating to a Bazel-based CI System: 6 Learnings - Or Shachar
 
Enabling Agile Testing Through Continuous Integration Agile2009
Enabling Agile Testing Through Continuous Integration Agile2009Enabling Agile Testing Through Continuous Integration Agile2009
Enabling Agile Testing Through Continuous Integration Agile2009
 
Continuously Delivery
Continuously DeliveryContinuously Delivery
Continuously Delivery
 
Escaping Automated Test Hell - One Year Later
Escaping Automated Test Hell - One Year LaterEscaping Automated Test Hell - One Year Later
Escaping Automated Test Hell - One Year Later
 
Att lyckas med integration av arbetet från flera scrum team - Christophe Acho...
Att lyckas med integration av arbetet från flera scrum team - Christophe Acho...Att lyckas med integration av arbetet från flera scrum team - Christophe Acho...
Att lyckas med integration av arbetet från flera scrum team - Christophe Acho...
 
Beyond Scrum: Scaling Agile with Continuous Delivery and Subversion
Beyond Scrum: Scaling Agile with Continuous Delivery and SubversionBeyond Scrum: Scaling Agile with Continuous Delivery and Subversion
Beyond Scrum: Scaling Agile with Continuous Delivery and Subversion
 
Dell openstack boston meetup dell crowbar and open stack
Dell openstack boston meetup   dell crowbar and open stackDell openstack boston meetup   dell crowbar and open stack
Dell openstack boston meetup dell crowbar and open stack
 
Django Deployment with Fabric
Django Deployment with FabricDjango Deployment with Fabric
Django Deployment with Fabric
 
Process Matters (Cloud2Days / Java2Days conference))
Process Matters (Cloud2Days / Java2Days conference))Process Matters (Cloud2Days / Java2Days conference))
Process Matters (Cloud2Days / Java2Days conference))
 

Último

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 

Último (20)

Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfCyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdf
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 

At the Extremities of Extreme (Agile North 2011)

  • 1. At the Extremities of Extreme Julian Fitzell Image © Christopher Michot AgileNorth June 9, 2011
  • 2. col·lab·o·ra·tion /kəˌlabəˈrāSHən/ n. The act of working with others to create or achieve something.
  • 3.
  • 4. 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
  • 5.
  • 6.
  • 7. Online Gaming • fine-grained collaboration • immersion • transparency / feedback • flow / transitions
  • 8.
  • 9.
  • 10. A Simple Idea What if we allowed a group of developers to simultaneously develop the same running application?
  • 12.
  • 13.
  • 14. Roam territory Wolf Pack Programming ™ Search for a herd Test prey animals
  • 15. If it takes flight, whole pack chases If it stands, pack circles, two wolves attack Select easiest prey
  • 16. Roam territory Search for a herd Test prey animals
  • 17. Roam problem domain / code base Search for a herd Test prey animals
  • 18. Roam problem domain / code base Search for a requirement / feature Test prey animals
  • 19. Roam problem domain / code base Search for a requirement / feature Test spikes
  • 20. If it takes flight, whole pack chases If it stands, pack circles, two wolves attack Select easiest prey
  • 21. If it takes flight, whole pack chases If it stands, pack circles, two wolves attack Select easiest implementation
  • 22. If close to a solution, whole pack programs (flight) If it stands, pack circles, two wolves attack Select easiest implementation
  • 23. If close to a solution, whole pack programs (flight) If it fights back, two wolves program; others rest (stand-off) Select easiest implementation
  • 25. theCode: is ^ [ :your | reality ]
  • 27. Pairing restricts your view on the world © Paul Stravinsky
  • 28. an d in t w le t tr i p programming pair
  • 32. A wolf’s concept of territory PD-USGOV-INTERIOR-NPS.
  • 33. Open Channel Image © Retron / Darren (flickr)
  • 34. flow
  • 35.
  • 36. [ 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
  • 37. Repository Repeat Start Spike Commit Select Spike changes Test [ Build succeeds with all tests passing ] Everyone works on it Refactor Code
  • 38. Repository Repeat Start Spike Select Spike Commit changes Test Everyone [ Build succeeds with all tests passing ] works on it Code Refactor
  • 39. col·lab·o·ra·tion /kəˌlabəˈrāSHən/ n. The act of working with others to create or achieve something.
  • 40. © 2008 Ivan Tessier
  • 41. 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