aiming to get a result in under five minutes and the entry point to the deployment pipeline is that fast feedback high quality continuous integration process so if we're working at that kind of rate how do we make it work here's my advice on the human aspects of continuous integration how to be good continuous integration citizens number one always run the commit tests locally before committing them the normal working practice in continuous integration is you probably ought to be practicing test driven development at least if you were to follow my advice that's what you'd be doing and in that kind of model the way that i prefer to work is that i'm going to do the red green refactor pattern i'm going to write a test and run it and see fail that's red i'm going to write the simplest change that i can think of to make the test pass to get back to a stable position that's green and then i'm going to refactor the test and the code to make them beautiful and elegant and a bit more generic while i'm in the stable passing state that's the refactor stage at that point i'm going to commit so if i'm working well i'm probably committing once every NUMBER_TOKEN or NUMBER_TOKEN minutes um i'm going to be evaluating my change frequently and at that point i'm going to be running my test all the time when i'm when i'm when i'm developing the code so the tests that i'm working on certainly i'm going to be running to evaluate the change it's useful occasionally to also run a broader set of tests locally the deployment pipeline in general and the continuous integration stage the commit stage specifically are useful resources valuable resources to the team so you don't want to hang those up for too long you're just checking your failures if you can find those failures more quickly and more efficiently by running the test locally so run the test before you commit and then you've got a higher level of confidence that when you do commit everything's going to be fine next wait for the results of the commit build your job now you've committed is to wait and watch and not do anything else don't go home don't go to lunch don't go to a meeting don't go get a cup of coffee don't go to the the restroom any of those things you sit you watch you wait for the result of the commit stage if you're doing this properly it's going to be under five minutes anyway that's one of the reasons why i recommend five minutes so you can optimize for this and the reason why you're waiting is that you need to be the first person that notices if there's a failure so you're there kind of poised over the keyboard ready to fix any problems that you've inadvertently introduced into the into the system the next advice is in the event of if there is a failure if there is a failure kind of at least mentally set a clock so start start a stopwatch you want to be able to fix or revert the change that introduce the failure within NUMBER_TOKEN minutes this is a really good discipline to keep everything moving slowly you don't want people committing a failure and then and then going off and spending hours trying to figure out what went wrong if you've made a mistake you've blocked the ability of the rest of the
NO_SEGMENT_TOKEN