Using Feature Flags in Development

Rate this content
Bookmark

Ensuring your code is ready for production without enabling your features to your entire user base used to involve a lot of guesswork. By using feature flags, we can allow our development teams to preview work-in-progress features and unreleased functionality in production without redeploying our code.


In this workshop, we’ll run through the fundamentals of feature flagging on both the client and server sides. We’ll cover working with LaunchDarkly’s SDKs within the context of a React application with a node backend, flagging at different places in the stack and give an introduction to rule targeting in the platform.

This workshop has been presented at React Advanced Conference 2022, check out the latest edition of this React Conference.

FAQ

You can interact by putting messages into the Zoom chat or on Discord during the workshop.

The workshop will cover setting up accounts, initiating a repo, feature flag uses, and flag targeting among other initial steps.

You'll need a browser, a notepad app for notes, your IDE editor of choice, a LaunchDarkly trial account, and a second screen could be useful for multitasking.

A feature flag is a way to control functionality in your application, enabling you to decouple deployment of code from feature releases. It can be used to turn features on or off without deploying new code.

You can sign up for a LaunchDarkly trial account without a credit card or commitment. This allows you to explore the platform's capabilities during the trial period.

Client-side flags are used primarily for UI changes, whereas server-side flags can be used for backend operations like API behavior modification, database switching, or other system-level changes.

You need to have Node.js version 14.18 or greater installed to run the provided code examples successfully.

Ensure your feature flags are effective by properly setting targeting rules, using the LaunchDarkly dashboard to manage flags, and testing flags in a controlled environment before broader rollout.

Feature flags can be used for A/B testing by creating different flag variations for segments of users, enabling you to test and compare different features' impacts on user behavior.

Jessica Cregg
Jessica Cregg
72 min
13 Oct, 2022

Comments

Sign in or register to post your comment.

Video Summary and Transcription

Today's Workshop covered setting up accounts, flag targeting, and server-side flags. Participants learned about the various uses of feature flags, including how they can aid in application delivery. The Workshop also explored the process of setting up and using feature flags, targeting users, enabling new views, and flagging the server-side. The importance of using useEffect and importing new galleries was emphasized, as well as the use of flags and useEffect for listening to state changes. The Workshop also covered checking flag settings, targeting rules, and membership in a segment. Finally, the Workshop discussed the use of feature flags in version control, the implementation of flags, and the creation of Docker Compose files to test containerized applications.
Available in Español: Usando Feature Flags en Desarrollo

1. Introduction and Agenda

Short description:

Today, we'll cover setting up accounts, flag targeting, and server side flags. We'll explore the various uses of feature flags.

I think we should. So if you want to interact, by the way, feel free to put some messages into the Zoom chat here and we have all I don't mean to sound overconfident here, but we've all I think gotten into discord. So you can put some questions there and we'll to get them to you. But without further ado, this is kind of what we're going to be covering off today. We're going to have about an hour and a half or so. We're going to be getting started with some initial steps are going to be putting down a repo. We're going to be setting up our accounts, getting everything going. We're going to talk about flag targeting. I'm going to look at server side flags, the different sort of feature flag uses. Obviously, it's being looked up with kind of flag nerds. So we're going to talk to you about all the different ways that these can be useful.

2. Introduction to the Workshop

Short description:

In this workshop, we'll take a quick look at a JavaScript project and explore how feature flags can aid us with application delivery. We'll work with React on the front end and Node on the server side, using flags to drive changes in our application's functionality and roll out new features.

But before we do that, let's meet the two brilliant people that I'm joined with on this call. I've got the pleasure of being joined by Alex Hardman. Alex, do you want to tell everyone about yourself? Everyone, Alex Hardman, I'm a technical marketing engineer with LaunchDarkly. And for a lot of years I worked in engineering at big companies like Liberty Mutual and Capital One. And when I wanted to spend more time teaching people how to build it with cool tools, I came over to LaunchDarkly to do technical marketing. I'm stoked to be here today. Working on this workshop with Jess and Peter was a blast. And so I'm really excited to work you guys through it. Nice, cheers Alex. This is going to be really good. And I've worked on a couple of projects with Alex so far, and he's just really helped me just level up my engineering skills. So I'm sure he's going to be able to guide us through some excellent challenges today.

And Peter is also on the call. Peter, do you want to introduce yourself to everyone? Yeah. Hey everybody. I'm Peter McCarron. I am coming up on month one at LaunchDarkly, I am also a senior technical marketing engineer. So Alex's counterpart. Yeah, I actually spent the past five years over at HashiCorp. So some of you folks may be familiar with that. So I'm a little bit more familiar with the infrastructure world and starting to learn the application world a little bit more, which has been really fun and fantastic. And yeah, this workshop was a blast to work on. Jess and Alex were incredibly helpful in trying to get this all together. So we're hoping that you all enjoy it, ask some good questions. We're here to help. But yeah, I'm really looking forward to it.

Nice. And I will quickly tell you about myself. I'm Jess. Hi, I'm a developer advocate with LaunchDarkly. I love learning about technology. I love trying to make things, trying to break them, usually on purpose, hopefully. And when I'm not doing that, I'm quite passionate about DevOps. I've gotten really into DevOps since I've joined LaunchDarkly. And so I recently worked on DevOps Days London and that was a blast. So if you were there, give us a little heads up in the chat. And hopefully we'll be able to see you in person at the, or virtually at the next kind of, the actual kind of conference days of Reactive Arts London. So that should be good. Loving all of the chat interaction. Right. Should we go? Should we do this? I think we should do this. Let's do this. All right. Let's do it.

Okay. So what we'll cover in this session. So in this workshop, we're going to take a quick look at a JavaScript project. We're going to be exploring feature flags and we're going to be looking out at how feature flags can aid us with application delivery. We're going to be working with React on the front end, a node on the server side. Once that's up and running, we're going to look at how we can use flags to drive changes in the way that we alter how our application functions and roll out new features and functionality.