2018-09-28 Meeting notes - feature flags

Date

Sep 28, 2018

Attendees

  • @Josh Zamor

  • @Sebastian Brudziński

  • @Mateusz Kwiatkowski

  • @Wesley Brown

Goals

  • Where are we with feature flags after completing https://openlmis.atlassian.net/browse/OLMIS-4797

  • Lets look at some code - do we have exemplars? Would another developer know what to do?

  • Are they ready? If I wanted to make a release tomorrow, what do we need to do to make that happen?

  • Technical committee call is next Tue

 

Notes

  • env file based

  • Mateusz and Lukasz have used them for WIP outside the exemplars made

  • Other team members haven’t used them, we’re not using them as part of our standard process

  • Our examples didn’t pan out to be the ideal examples:

    • Batch approve screen configuration is a feature onto itself, not what we should use a feature flag for. See this OpenMRS discussion.

    • The search flag has been in place for a long time - it’s ending up as a configuration flag and not a short feature flag

 

Problems:

  • Bigger features (smaller features seem simple) - lots of places, lots of conditional checks

  • To read it from a property (env file), it needs to be a spring bean - not just any old POJO

 

Next steps:

  • There’s considerable concern with feature flags and trunk based development.

  • We need to try it - start using it to find: the right size recommendations, how annoying developers find it, etc. We need real experience.

  • We should improve the reading of feature flags - a bean that reads the property and returns a singleton for example. We can also look at projects like Togglz

 

Action items

@Wesley Brown and @Josh Zamor to schedule meet to discuss trunk based development, feature branches, flags, etc
@Josh Zamor to schedule a followup discussion on how we gain experience

 

Decisions

OpenLMIS: the global initiative for powerful LMIS software