How we manage feature flags at Basedash

here are a lot of ways to manage feature flags in products, but at Basedash, one of the easiest ways to manage them is to, well, just use Basedash.

Here's how we set that up:

We have a table in our database called Feature Flag which lists all the current features that are actively in development.

CleanShot 2021-12-16 at 11.51.49@2x.png

To add them to a user, we then have a separate table called User Feature Flag that allows us to associate any user with the feature we're testing. We typically add ourselves to these when they're in development and try to test any big feature out in this way, so we can come across bugs before it's shipped. We also add select users that we think might benefit from the feature before it's released widely. Here's what that table looks like:

CleanShot 2021-12-16 at 11.44.50@2x.png

I just go to the table, create a new record, choose which feature flag I want to enable, and then select the correct user (in this case myself). Couldn't be easier!

Using product feature flags like this has had a huge impact on how we roll out new features. We've used it to catch performance issues, UI bugs, app crashes, and just get a better feel for how things will work before customers see them. We also ask users if they want to opt-in or not, and if they run into issues, can easily remove them from the beta without affecting their workflow.

For now, the workflow is pretty basic. We don't have a great need for complex feature testing, roll outs, in-product A/B testing, but as Basedash (the company) grows and our needs change, Basedash (the product) will stay up-to-date. It removes the need for a separate tool to manage feature flags and helps us build a better product.

Invite only

We're building the next generation of data visualization.