Use Feature Flags, and you do not need to worry about the ambiguous Apple App Store review. Also, you can forget about the release trains or the good old times when Project Managers are running around in the office with flame-throwers.

What is a Feature Flag?

Picture the scene. You have a sophisticated mobile application for selling your products. You have been asked to prepare the app for Black Friday sales. This move is highly time-sensitive. All the discounts should be activated at 0:00 on Friday. How do you make sure you pass the App Store review just at the right moment? What if your app gets rejected? A feature flag gives the ability to turn features of your application on/off quickly via a single configuration value. Feature Flags are sometimes also referred to as Feature Toggles, Feature Bits, or Feature Flippers.

Okay, but how to use a Feature Flag?

The goal is to separate code deploys from feature rollouts:

  • Develop your feature.
  • Test it.
  • Turn it off.
  • Deploy any time you want.
  • When the time comes, turn it on.

How do I add a Feature Flag to my application?

  • Create a ConfigCat project and set up a Feature Flag.
  • Add the ConfigCat SDK to your application.
  • Wrap your feature in a Feature Flag.
  • Call the SDK to get the value of that flag.

Where do I store my Feature Flags?

You can put them in your code, but then you need to deploy it all over again to flip the switch. Sometimes using your app’s configuration file could be a way. However, updating it usually means pain. How about the cloud? ConfigCat stores your Feature Flags and serves them for you.