The gist:
- On every commit we build and push to staging, which takes ~8 minutes
- We screenshot each staging version and compare it visually to the live version on known URLs
- When staging and live versions differ, we get an email
Example 1: Fixing a typo. I can't see the difference. Computers can.
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi9s6_EHjt3r7yW3yeoTxID9fTH_B_GJrwUR_RvWNeIZZU7jkvk8-jlLnoBMRy5fDCuVTf69WZbE70pVXcAs9LFtlUyNoOFT1S7Sh7VymUY76SMrf2xt-xZCZ2o8kfPA1HjMUGsSujNLIUA/s400/Screen+shot+2012-06-26+at+1.12.32+AM.png)
Example 2: Histogram axis regression. One of the first where we caught a bug before pushing it to users.
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgImI05qxDW6a6OhpSDIZgaJw4ULrsytwCW96EMxA4LfELZa_tfr2Fba3BLltpzl1YYBIeXR_K6ay4zG_w4KYHVNmyuEX-_TMMMOAPjTltU31IDtzraekivwmW4owS7wO8rOX_PUDUmDaFG/s400/Screen+shot+2012-06-26+at+1.12.49+AM.png)
Perceptual diffs have closed the loop on continuous deployment, giving us the confidence to push new code more often.
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhkwVdEpFB043Nco7IfFzrDP4LAhfjI0aoZBMTdHAeP6dLJqI553ZamLvH_MJEIoirNLgigQ6gHQxdVrPICZ7ZKQhTg4D5tqDn5PE71pz0dZtFkL-v1IEIOVYcrfEN-jhqXVxdHasYs1AWG/s1600/Screen+shot+2012-06-26+at+1.13.09+AM.png)
Hopefully they put the Ignite video up somewhere~
Related, more-recent posts