Book Image

Feature Management with LaunchDarkly

By : Michael Gillett
Book Image

Feature Management with LaunchDarkly

By: Michael Gillett

Overview of this book

Over the past few years, DevOps has become the de facto approach for designing, building, and delivering software. Feature management is now extending the DevOps methodology to allow applications to change on demand and run experiments to validate the success of new features. If you want to make feature management happen, LaunchDarkly is the tool for you. This book explains how feature management is key to building modern software systems. Starting with the basics of LaunchDarkly and configuring simple feature flags to turn features on and off, you'll learn how simple functionality can be applied in more powerful ways with percentage-based rollouts, experimentation, and switches. You'll see how feature management can change the way teams work and how large projects, including migrations, are planned. Finally, you'll discover various uses of every part of the tool to gain mastery of LaunchDarkly. This includes tips and tricks for experimentation, identifying groups and segments of users, and investigating and debugging issues with specific users and feature flag evaluations. By the end of the book, you'll have gained a comprehensive understanding of LaunchDarkly, along with knowledge of the adoption of trunk-based development workflows and methods, multi-variant testing, and managing infrastructure changes and migrations.
Table of Contents (18 chapters)
1
Section 1: The Basics
5
Section 2:Getting the Most out of Feature Management
11
Section 3: Mastering LaunchDarkly

Using code references

The Code references section is only a small component of a feature flag and was detailed in Chapter 8, Migrations and Testing Your Infrastructure. Please refer to that chapter to learn how to use code references. However, there is one thing to note that was not covered in that chapter.

Figure 9.19 shows the default variation to be served at the bottom right, where it says If LaunchDarkly is unreachable or if no off variation is set, serve false. LaunchDarkly's code reference tool has detected where the flag is implemented within the code and reads the value that is hardcoded as the default value. This is useful information as a flag could be configured within LaunchDarkly to return true for all targeting rules and even when targeting is disabled. However, if the service is unreachable and the default value is hardcoded as false, then that is the value that the application will work with.

In this scenario, it is a good practice to remove feature flag...