SlideShare a Scribd company logo
1 of 9
continuous Dave Cameron integration
continuous
integration
Software development is a "game", a game of speed and cooperation within your team, in competition against other teams.
the team sets their own rules but everyone follows them together
automatically apply an agreed set of rules
some rules to start with…
maintain a single source repository automate the project’s build make your build self-testing tests run locally before commit everyone commits to mainline every day every commit builds on an integration machine keep the build fast build in a clone of the production environment easy for anyone to visit the latest site everyone can see what’s happening automate deployment
? ? ?

More Related Content

What's hot

PowerCLI administration with a Windows Docker image
PowerCLI administration with a Windows Docker imagePowerCLI administration with a Windows Docker image
PowerCLI administration with a Windows Docker imageJustin Sider
 
NWJS. Web on desktop
NWJS. Web on desktopNWJS. Web on desktop
NWJS. Web on desktopAigars Zeiza
 
Continuous integration per le tue applicazioni mobile
Continuous integration per le tue applicazioni mobileContinuous integration per le tue applicazioni mobile
Continuous integration per le tue applicazioni mobileAntonio Liccardi
 
Testing the way it should be
Testing the way it should beTesting the way it should be
Testing the way it should beBrian Mann
 
Bamboo Continuous Integration Server - Brief
Bamboo Continuous Integration Server - BriefBamboo Continuous Integration Server - Brief
Bamboo Continuous Integration Server - BriefEllen Feaheny
 
Continuous Delivery su progetti Java: cosa abbiamo imparato facendoci del male
Continuous Delivery su progetti Java: cosa abbiamo imparato facendoci del maleContinuous Delivery su progetti Java: cosa abbiamo imparato facendoci del male
Continuous Delivery su progetti Java: cosa abbiamo imparato facendoci del malePietro Di Bello
 
ContainerSched 2017: Why Containers Will Take Over the World
ContainerSched 2017: Why Containers Will Take Over the WorldContainerSched 2017: Why Containers Will Take Over the World
ContainerSched 2017: Why Containers Will Take Over the WorldElton Stoneman
 
Build safe environment for software developers
Build safe environment for software developersBuild safe environment for software developers
Build safe environment for software developersPrayoch Rujira
 
Deploy an Asp.Net Core App on Azure
Deploy an Asp.Net Core App on AzureDeploy an Asp.Net Core App on Azure
Deploy an Asp.Net Core App on AzureMichele Aponte
 
Deploy applications with TFS Build
Deploy applications with TFS BuildDeploy applications with TFS Build
Deploy applications with TFS BuildGian Maria Ricci
 
React native on windows
React native on windowsReact native on windows
React native on windowsAbdul Karim
 
Ember js installation and create sample project, EmberJS Version check
Ember js installation and create sample project, EmberJS Version checkEmber js installation and create sample project, EmberJS Version check
Ember js installation and create sample project, EmberJS Version checkmanojbkalla
 
Visual Testing Of Web Apps in a Headless Environment
Visual Testing Of Web Apps in a Headless EnvironmentVisual Testing Of Web Apps in a Headless Environment
Visual Testing Of Web Apps in a Headless EnvironmentManish Katoch
 
Introduction to Puppet Enterprise 2016.2
Introduction to Puppet Enterprise 2016.2Introduction to Puppet Enterprise 2016.2
Introduction to Puppet Enterprise 2016.2Puppet
 

What's hot (19)

PowerCLI administration with a Windows Docker image
PowerCLI administration with a Windows Docker imagePowerCLI administration with a Windows Docker image
PowerCLI administration with a Windows Docker image
 
NWJS. Web on desktop
NWJS. Web on desktopNWJS. Web on desktop
NWJS. Web on desktop
 
Chapter 4
Chapter 4Chapter 4
Chapter 4
 
Continuous integration per le tue applicazioni mobile
Continuous integration per le tue applicazioni mobileContinuous integration per le tue applicazioni mobile
Continuous integration per le tue applicazioni mobile
 
Testing the way it should be
Testing the way it should beTesting the way it should be
Testing the way it should be
 
Bamboo Continuous Integration Server - Brief
Bamboo Continuous Integration Server - BriefBamboo Continuous Integration Server - Brief
Bamboo Continuous Integration Server - Brief
 
Dockerizing react app
Dockerizing react appDockerizing react app
Dockerizing react app
 
Continuous Delivery su progetti Java: cosa abbiamo imparato facendoci del male
Continuous Delivery su progetti Java: cosa abbiamo imparato facendoci del maleContinuous Delivery su progetti Java: cosa abbiamo imparato facendoci del male
Continuous Delivery su progetti Java: cosa abbiamo imparato facendoci del male
 
ContainerSched 2017: Why Containers Will Take Over the World
ContainerSched 2017: Why Containers Will Take Over the WorldContainerSched 2017: Why Containers Will Take Over the World
ContainerSched 2017: Why Containers Will Take Over the World
 
Chapter 4
Chapter 4Chapter 4
Chapter 4
 
Build testable react app
Build testable react appBuild testable react app
Build testable react app
 
Build safe environment for software developers
Build safe environment for software developersBuild safe environment for software developers
Build safe environment for software developers
 
Deploy an Asp.Net Core App on Azure
Deploy an Asp.Net Core App on AzureDeploy an Asp.Net Core App on Azure
Deploy an Asp.Net Core App on Azure
 
Deploy applications with TFS Build
Deploy applications with TFS BuildDeploy applications with TFS Build
Deploy applications with TFS Build
 
React native on windows
React native on windowsReact native on windows
React native on windows
 
Ember js installation and create sample project, EmberJS Version check
Ember js installation and create sample project, EmberJS Version checkEmber js installation and create sample project, EmberJS Version check
Ember js installation and create sample project, EmberJS Version check
 
Visual Testing Of Web Apps in a Headless Environment
Visual Testing Of Web Apps in a Headless EnvironmentVisual Testing Of Web Apps in a Headless Environment
Visual Testing Of Web Apps in a Headless Environment
 
Component testing with cypress
Component testing with cypressComponent testing with cypress
Component testing with cypress
 
Introduction to Puppet Enterprise 2016.2
Introduction to Puppet Enterprise 2016.2Introduction to Puppet Enterprise 2016.2
Introduction to Puppet Enterprise 2016.2
 

Viewers also liked

Dabbawalas of Mumbai
Dabbawalas of MumbaiDabbawalas of Mumbai
Dabbawalas of Mumbaitwuniversity
 
Einstein_PechaKucha_Tom
Einstein_PechaKucha_TomEinstein_PechaKucha_Tom
Einstein_PechaKucha_Tomtwuniversity
 
The Magic Never Ends
The Magic Never EndsThe Magic Never Ends
The Magic Never Endstwuniversity
 
The Chinese Zodiac
The Chinese ZodiacThe Chinese Zodiac
The Chinese Zodiactwuniversity
 
Fighting Poverty in Urban America_Damon
Fighting Poverty in Urban America_DamonFighting Poverty in Urban America_Damon
Fighting Poverty in Urban America_Damontwuniversity
 
blogging and you - a love story
blogging and you - a love storyblogging and you - a love story
blogging and you - a love storytwuniversity
 
Wild Australia - How safe are you?
Wild Australia - How safe are you?Wild Australia - How safe are you?
Wild Australia - How safe are you?twuniversity
 
What consultants can learn from Optimus Prime
What consultants can learn from Optimus PrimeWhat consultants can learn from Optimus Prime
What consultants can learn from Optimus Primetwuniversity
 
The Consequences of Actions
The Consequences of ActionsThe Consequences of Actions
The Consequences of Actionstwuniversity
 
Canadian Winter Demystified
Canadian Winter DemystifiedCanadian Winter Demystified
Canadian Winter Demystifiedtwuniversity
 
The Laws of Attraction
The Laws of AttractionThe Laws of Attraction
The Laws of Attractiontwuniversity
 
My First Program - by Chris Reade
My First Program - by Chris ReadeMy First Program - by Chris Reade
My First Program - by Chris Readetwuniversity
 
History of programming languages
History of programming languagesHistory of programming languages
History of programming languagestwuniversity
 
What I learned from kids
What I learned from kidsWhat I learned from kids
What I learned from kidstwuniversity
 
Biometric Technology
Biometric TechnologyBiometric Technology
Biometric Technologytwuniversity
 

Viewers also liked (19)

Testability
TestabilityTestability
Testability
 
Dabbawalas of Mumbai
Dabbawalas of MumbaiDabbawalas of Mumbai
Dabbawalas of Mumbai
 
Einstein_PechaKucha_Tom
Einstein_PechaKucha_TomEinstein_PechaKucha_Tom
Einstein_PechaKucha_Tom
 
The Magic Never Ends
The Magic Never EndsThe Magic Never Ends
The Magic Never Ends
 
Our Space Time
Our Space TimeOur Space Time
Our Space Time
 
The Chinese Zodiac
The Chinese ZodiacThe Chinese Zodiac
The Chinese Zodiac
 
Fighting Poverty in Urban America_Damon
Fighting Poverty in Urban America_DamonFighting Poverty in Urban America_Damon
Fighting Poverty in Urban America_Damon
 
blogging and you - a love story
blogging and you - a love storyblogging and you - a love story
blogging and you - a love story
 
Wild Australia - How safe are you?
Wild Australia - How safe are you?Wild Australia - How safe are you?
Wild Australia - How safe are you?
 
What consultants can learn from Optimus Prime
What consultants can learn from Optimus PrimeWhat consultants can learn from Optimus Prime
What consultants can learn from Optimus Prime
 
The Consequences of Actions
The Consequences of ActionsThe Consequences of Actions
The Consequences of Actions
 
Canadian Winter Demystified
Canadian Winter DemystifiedCanadian Winter Demystified
Canadian Winter Demystified
 
The Laws of Attraction
The Laws of AttractionThe Laws of Attraction
The Laws of Attraction
 
My First Program - by Chris Reade
My First Program - by Chris ReadeMy First Program - by Chris Reade
My First Program - by Chris Reade
 
History of programming languages
History of programming languagesHistory of programming languages
History of programming languages
 
What I learned from kids
What I learned from kidsWhat I learned from kids
What I learned from kids
 
Homebrewing
HomebrewingHomebrewing
Homebrewing
 
Soul Theory
Soul TheorySoul Theory
Soul Theory
 
Biometric Technology
Biometric TechnologyBiometric Technology
Biometric Technology
 

More from twuniversity

More from twuniversity (20)

Bollywood Dance Moves_Deepali
Bollywood Dance Moves_DeepaliBollywood Dance Moves_Deepali
Bollywood Dance Moves_Deepali
 
Hindu Festivals of India_Apurva
Hindu Festivals of India_ApurvaHindu Festivals of India_Apurva
Hindu Festivals of India_Apurva
 
Deepawali_Saurabh
Deepawali_SaurabhDeepawali_Saurabh
Deepawali_Saurabh
 
Cars_PechaKucha_Ajith
Cars_PechaKucha_AjithCars_PechaKucha_Ajith
Cars_PechaKucha_Ajith
 
Kite Surfing
Kite SurfingKite Surfing
Kite Surfing
 
Esoteric languages
Esoteric languagesEsoteric languages
Esoteric languages
 
Chinese people
Chinese peopleChinese people
Chinese people
 
Exploring the Sky
Exploring the SkyExploring the Sky
Exploring the Sky
 
Bollywood
BollywoodBollywood
Bollywood
 
Hockey
HockeyHockey
Hockey
 
Why collaborate
Why collaborateWhy collaborate
Why collaborate
 
Entrepreneuralism
EntrepreneuralismEntrepreneuralism
Entrepreneuralism
 
Earth
EarthEarth
Earth
 
Aggressive inline skating
Aggressive inline skatingAggressive inline skating
Aggressive inline skating
 
Humour
HumourHumour
Humour
 
What have we learned from our mistakes?
What have we learned from our mistakes?What have we learned from our mistakes?
What have we learned from our mistakes?
 
The Family
The FamilyThe Family
The Family
 
Mr Bean
Mr BeanMr Bean
Mr Bean
 
The truth about Tigers
The truth about TigersThe truth about Tigers
The truth about Tigers
 
Small Reflections of a Great House
Small Reflections of a Great HouseSmall Reflections of a Great House
Small Reflections of a Great House
 

Recently uploaded

The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rick Flair
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 

Recently uploaded (20)

The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 

Continuous integration for faster software development

Editor's Notes

  1. - game-- cooperative-- goal-oriented-- group rules- set limits of action- freedom within the rules continuation as a goal- maintainability/fun-factor
  2. at a high level it’s easy to agree-no defects-easy to read-fun to work withhow to actually implement that-consistent style-automated testsrules need to work for the team-not working?-change-replace-removenot intended to punish, intended to empower-put everyone on equal footing-
  3. -some rules can be automated--compilation--unit tests--static analysis--functional automated tests-automating this has upsides--quick--accurate--impartial--saves money by getting the feedback quicker-still only provides information--often quite unambiguous--sometimes, judgment call will need to be made
  4. === 1 ===one place to get everythingsingle accepted version of the systemput everything in there! database scripts, source code, build tools(story of the box exploding on Cobra)=== 2 ===one command to runsimple to explainno inconsistencies between machines=== 3 ===more than just compilingunit testsfast feedbackokay if they are imperfect=== 4 ===run locally to vet changesminimize impacts on team membersensures safety before changes spread=== 5 ===does my code work with your code?do I need to consider the change you just made?have you made a change I can use?updating often is as important as committing oftenaim to commit at least once a daytry to break tasks down in to smaller chunks=== 6 ===machine set aside somewhere for integrationcatches missing files or other environment specific problemscan be completely automated=== 7 ===less than 2 minutes locallyless than 10 minutes on the serverfeedback is best fastdon’t want to always be buildingmany techniques to speed it up=== 8 ===accurate tests require accurate environmentbut, impersonators to make the commit build fastimpersonators are fast mimics of real systemsvirtualization has a roll=== 9 ===stakeholders are part of the team, need to see itthe “real” feedbackbut, be aware this is an unfinished environment – the sidewalk ends, the elevators go nowhereuseful to explorecheck on feature availabilitycritical for demonstrations, showcases=== 10 ===all about communicationa teammate is in trouble – maybe they need help?red light / green lightweb page with reportsbuild token=== 11 ===lots of deployment going on-- locally on developer’s machines-- in to the test and staging environmentsscripted. can be same as build tool, but there are better specialist tools too.not necessarily in to production, but can be rewarding if it is.
  5. === 1 ===one place to get everythingsingle accepted version of the systemput everything in there! database scripts, source code, build tools(story of the box exploding on Cobra)=== 2 ===one command to runsimple to explainno inconsistencies between machines=== 3 ===more than just compilingunit testsfast feedbackokay if they are imperfect=== 4 ===run locally to vet changesminimize impacts on team membersensures safety before changes spread=== 5 ===does my code work with your code?do I need to consider the change you just made?have you made a change I can use?updating often is as important as committing oftenaim to commit at least once a daytry to break tasks down in to smaller chunks=== 6 ===machine set aside somewhere for integrationcatches missing files or other environment specific problemscan be completely automated=== 7 ===less than 2 minutes locallyless than 10 minutes on the serverfeedback is best fastdon’t want to always be buildingmany techniques to speed it up=== 8 ===accurate tests require accurate environmentbut, impersonators to make the commit build fastimpersonators are fast mimics of real systemsvirtualization has a roll=== 9 ===stakeholders are part of the team, need to see itthe “real” feedbackbut, be aware this is an unfinished environment – the sidewalk ends, the elevators go nowhereuseful to explorecheck on feature availabilitycritical for demonstrations, showcases=== 10 ===all about communicationa teammate is in trouble – maybe they need help?red light / green lightweb page with reportsbuild token=== 11 ===lots of deployment going on-- locally on developer’s machines-- in to the test and staging environmentsscripted. can be same as build tool, but there are better specialist tools too.not necessarily in to production, but can be rewarding if it is.