deploy to production from commit #1
a set of practices and principles in software engineering
aimed at building, testing, and releasing software
safely, faster, more frequently, and in a sustainable way.
the goal is to put the release schedule
in the hands of the business, not in the hands of IT.
Build with features.
Compose in environments.
Make it easy!
No comprehensive instructions.
Simple & user-friendly!
Make it beautiful!
Easy to explain.
Generate + seal your secrets,
or seal + commit your secrets.
Keep it simple!
What you would do manually.
Tell a story!
The only way to go fast
is to go well.
--- Robert C. Martin
Source: Technology and Friends, Episode 354, 2015
Less pain, more fun.
Beautiful is better than ugly. Explicit is better than implicit. Simple is better than complex. Complex is better than complicated. Flat is better than nested. Sparse is better than dense. Readability counts. Special cases aren't special enough to break the rules. Although practicality beats purity.
Errors should never pass silently. Unless explicitly silenced. In the face of ambiguity, refuse the temptation to guess. There should be one-- only one --obvious way to do it. Although that way may not be obvious at first sight.
Now is better than never. Although never is often better than *right* now. If the implementation is hard to explain, it's a bad idea. If the implementation is easy to explain, it may be a good idea.
Continuous delivery is a honking great idea. If you deploy to production from commit #1. Let's do it! -- I start today.