By Timothy Fitz, Joshua Kerievsky

How long does it take you to push a change live to your users? Are your scheduled software deployments a source of frustration, stress and downtime? Continuous Deployment pioneer Timothy Fitz (formerly of IMVU) shows how to take the pain out of software delivery so you can focus on making happy customers. Learn how to set up a Build-Test-Deploy pipeline, incrementally release even large features and schema changes, and effectively monitor your deployments.



Get this Album

Volume Licensing

Have Any Questions?

Highlights

Deployment Pipeline: Learn the essential parts of a safe, automated deployment pipeline. Learn more...
Deployment Strategies: Learn strategies that assure safe deployment and release of new functionality. Learn more...

Practice In The Cloud: Practice doing continuous deployment using your own AWS instance. Learn more...
Integrated Forums: Ask questions, get expert replies and read fascinating discussions. Learn more...

Includes

  • 4-8 hours of content
  • 145 pages
  • 13 Interactive Quizzes
  • 7 Deployment Exercises
  • 2 Videos
  • Solution code

Contents

Definition of Continuous Deployment ← Click to Preview 3
What Is Continuous Deployment? 4
Values of Continuous Deployment 5
A Continuous Deployment Experience 6
Benefits 7
Deployment At Two Organizations 8
Quiz: Deployment At Two Organizations 9
Isn't this just Cowboy Coding? 10
The Road to Continuous Deployment ← Click to Preview 12
Isn't Continuous Delivery Enough? 13
An Indispensable Prerequisite 14
How do we get to Zero Downtime? 15
Bring the Pain Forward 16
Manual Release 18
Manually Executed Scripts 19
Mostly Automated 20
Fully Automated 21
The Deploy Pipeline 23
Three Basic Phases 24
Deploy Pipeline Video 25
Deploy is Not Release 26
Measuring Speed and Uptime ← Click to Preview 27
Measuring Happiness 28
Setup and Push 30
Setting Up Your Development Environment ← Click to Preview 31
Fire Up Your Instance Here 32
Set Up Your Virtual Environment 33
Setup Instructions 34
Customizing Your Stock Photo Shop 35
Check Your Readiness 36
Start with a Failing Test 37
Customize the Shop 38
Build and Deploy 39
Your Customized Shop 40
Continuous Integration ← Click to Preview 42
Continuous Integration Tasks 43
Rigorous Continuous Integration 44
Integrate For Safety 45
Big Changes 46
Rigorous Continuous Integration Quiz 47
Jenkins Configuration 48
Safe To Fail ← Click to Preview 50
Scenario 51
Safety And Speed 52
Developer Safety Quiz 53
When To Write Tests 55
A First Look At The TDD Cycle ← Click to Preview 56
CD Encourages TDD 57
Automated Testing 58
Tackling Legacy Code 59
Test Coverage Quiz 60
Schema Changes: Marching Forward 62
A Scenario 63
Continuous Deployment Over Downtime 64
No Exception To The Rule 65
Quiz: Steps To Continuous Deployment 66
Connecting The Dots 67
Summary 68
Coupon Code Feature 70
Making A New Model 71
Setup Instructions 72
Add The Data Class 73
Push To Production 74
Solution 75
Build and Deploy 76
The Strategies 78
Risk First 79
Persist First ← Click to Preview 80
UI First 81
Refactor First 82
Supporting Coupons 84
Coupon Code Creation 85
Create The New Page 86
Test and Ship It! 87
Solution 88
Feature Flipper 94
Central Feature Flipper GUI 95
Learn By Example 96
More Details 97
Quiz: Feature Flipper Usage ← Click to Preview 98
Exercise: Feature Flipper UI 100
Feature Flipper UI Steps 101
Solution: Feature Flipper UI 102
Exercise: Functional Coupon Codes 103
Ship It! 104
Solution: Functional Coupon Codes 105
Releasing To QA 107
The Details ← Click to Preview 108
More Details 109
Frequently Asked Question (FAQ) 110
Quiz 111
Gradual Rollout 113
The Details 114
More Details 115
Frequently Asked Question (FAQ) 116
Quiz 117
Exercise: Actually Charge The Discounted Price 122
Solution: Charge Discounted Price Solution 123
Exercise: Releasing the Coupon Code Feature 124
Solution: Released Coupon Code Feature 125
Production Monitoring 127
Three Levels Of Monitoring 128
A Simple Technique 129
Cluster Immune System 131
Introduction 132
Details 133
Quiz 134
Automatically Enforce Your Team's Musts 136
Automating Human Rules 137
Exception to the Rule 138
Conclusion - What's Next? 145

Supported Browsers

  • Latest Firefox
  • Internet Explorer 8+
  • Latest Chrome
  • Latest Safari

Operating Systems

  • Windows
  • Linux
  • Mac OS X

Development Tools

This album has exercises in Python and you need version 2.7 installed on your machine. The exercises are not compatible with Python 3 at this time.

You can use your preferred Python IDE or text editor.

A Subversion (SVN) client is required so that you can check in code changes to the server created for you in the cloud.

You also need the latest version of Firefox installed to run integration tests.

Speakers or headphones are required for our videos.