The Toggle – A Powerful Tool For Deploying New Features
The Toggle is an extremely useful tool that gives teams the ability to deploy new features without affecting existing functionality. This flexibility gives teams a safety net that protects against regression while keeping the product nimble enough to meet delivery targets.
While toggles are a powerful tool, it is important to use them with caution. They should be used sparingly and only for features that will benefit from a controlled experiment. In addition, it is important to be aware of the potential impact of toggles on accessibility. The simple act of using a color to differentiate between states can be a barrier for users with varying needs, especially for those with red/green color blindness. To avoid this, it is best practice to use high-contrast colors and provide state descriptors in order to make it as clear as possible to users what the current state of a toggle is.
Typically, toggles are based on Boolean values and can be triggered by a variety of conditions. These could be fitness test results from other features in the codebase, settings in a feature management platform or variables in a config file. Using these conditions can give teams the flexibility to split feature data in a variety of ways, which is a great way to support development of new features.
Savvy teams view feature toggles as inventory that comes with a carrying cost and seek to keep their inventory low by actively pruning them when they are no longer needed. This may be accomplished by adding a removal task to the team’s backlog or building out an automated process in their feature management platform.