What Are the Next Steps for Feature Flags?
Feature flags, the toggles in software development that allow you to turn certain features on or off for certain customers or audiences, offer release management at scale, according to Karishma Irani, head of product at LaunchDarkly.
But they also help unleash innovation, as she told host Heather Joslyn of The New Stack in this episode of The New Stack Makers podcast. And that points the way to a future where the potential for easy testing can inspire new features and products, Irani said.
“We’ve observed that when the risk of releasing something is lowered, when the risk of introducing bugs in production or breaking, something is reduced, is lowered, our customers feel organically motivated to be more innovative and think about new ideas and take risks,” she said.
She pointed to a LaunchDarkly customer, DroneDeploy, which creates software for drones. The company “started out on a journey with LaunchDarkly years ago, to test out new functionality behind flags on their production infrastructure. Because as you can imagine, it’s a relatively high-risk tool,” she said.
Over time, they began running experiments with LaunchDarkly, she said, running A/B tests. As a result, she said, “product teams are excited to think about new ideas, engineering teams are excited to build multiple variations of something. And so with LaunchDarkly, this was possible. And all of this was possible by making sure that you’re releasing the most impactful version.”
This episode of Makers was sponsored by LaunchDarkly.
Custom Contexts for Complex Needs
In January, Irani spoke to our podcast audience about what it’s learned from using its own products. In this episode of Makers, she instead discussed a new development, Custom Contexts, unveiled in February, which is based on a way in which LaunchDarkly’s customers’ needs differ from its own.
When LaunchDarkly releases new features to its customers, it thinks of them as users and targets individual accounts. But as for its customers, “when they’re releasing features, it’s not always users,” she said. “In some cases, they think about their customers as devices, tenants, organizations.”
For instance, Irani said, “Let’s say I work at a health care company … I want to use LaunchDarkly, to release a new feature or a new capability to a set of facilities or to certain patient groups, I would typically have to keep that information in my mind or use some kind of hacky workaround, to map those to what LaunchDarkly considers as users and only accepts users.”
With Custom Contexts, she added, customers can create a multilevel hierarchy, of a multichain context, and target by any of the attributes within that complex segmentation — and use a single feature flag to do it.
It unlocks two capabilities, she said: it creates a reusable context that could be a user device tenant, and creates contexts that map to your company’s data model. ”So if you have a single feature that you’re planning to roll out, you can now target that feature to X, Y and Z users. A, B and C devices … whatever it might be … and this really unlocks a lot of valuable, cool new use cases for our customers without requiring extra effort on their end.”
‘The Last Mile of Feature Delivery’
Custom Contexts represented a major overhaul of the LaunchDarkly platform, Irani said. “It required our teams rewriting our data model and SDKs, from scratch to support this functionality,” she said. “So a huge lift for many, many months. We’re extremely proud of our team for getting it out successfully.”
Irani also spoke to the Makers audience about a larger effort her company is working on, where it’s “reimagining the last mile of feature delivery.”
“We’re reimagining the process of continuous release,” she said. “And so this process includes not just attaching metrics, guardrail metrics to each of your releases, but also enforcing best practices.”
The ultimate goal, she said, is for developers to “know the impact of every single change that you put out in production.”
Listen to the whole episode for more on what’s ahead in the world of feature flags.