Feature Toggles
You might have also heard about this as Feature Flipping or Feature Flags. No matter which expression we use, they are all based on a mechanism that permits you to turn on and off the features of your application. This is very useful when all code is merged into one branch, and you must deal with partially finished (or integrated) code. With this technique, unfinished features can be hidden so users cannot access them.
Due to its nature, there are other possible uses for this functionality. As a circuit breaker when something is wrong with a particular feature, providing graceful degradation of the application, shutting down secondary features to preserve hardware resources for business core operations, and so on. Feature Toggles, in some cases, can go even further. We might use them to enable features only to certain users based on, for example, geographic location or their role. Another useful usage is that we can enable new features only for our testers. That way, end users...