Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Feature Flags Lightning Talk

Feature Flags Lightning Talk

A quick lightning talk about using feature flags in development, specifically focused around FetLife's ruby gem, Rollout.

Jared Koumentis

October 21, 2015
Tweet

More Decks by Jared Koumentis

Other Decks in Programming

Transcript

  1. And I don’t want it on a long lived feature

    branch A well recognized anti-pattern.
  2. Option 2 (better): Use a library. Other people have been

    doing this in production longer than you.
  3. gem install rollout $redis = Redis.new $rollout = Rollout.new($redis) $rollout.define_group(:staff)

    do |user| user.staff? end $rollout.activate_group(:new_hotness, :staff) if $rollout.active?(:new_hotness, @current_user) # Do new, hot things here end
  4. gem install rollout $redis = Redis.new $rollout = Rollout.new($redis) $rollout.define_group(:staff)

    do |user| user.staff? end $rollout.activate_group(:new_hotness, :staff) if $rollout.active?(:new_hotness, @current_user) # Do new, hot things here end
  5. gem install rollout $redis = Redis.new $rollout = Rollout.new($redis) $rollout.define_group(:staff)

    do |user| user.staff? end $rollout.activate_group(:new_hotness, :staff) if $rollout.active?(:new_hotness, @current_user) # Do new, hot things here end