Live data from Hacker News

Show HN: Feature Flags Backed by Git

flipt.io

11–20 of 46 posts

Re: Show HN: Feature Flags Backed by Git

#12

This post comes at a great time! I've been wondering what folks prefer - git or DB backed configs and feature flags. How do you decide to go with one or the other? What do you guys do when GitHub inevitably has an outage?

Nice thing about git feature flags: the state of your system is all in one place. It changes only when you do a code release, which includes feature flag values, or an infrastructure release. You can easily see, just off git history, when the state of the system changed (and what changed), which makes incident debugging much easier.

With DB feature flags, there's one more source of truth for changes to production infra.

(downside, of course, is that changing feature flag values is much slower using git vs DB)

Re: Show HN: Feature Flags Backed by Git

#14
post #12

This post comes at a great time! I've been wondering what folks prefer - git or DB backed configs and feature flags. How do you decide to go with one or the other? What do you guys do when GitHub inevitably has an outage?

Nice thing about git feature flags: the state of your system is all in one place. It changes only when you do a code release, which includes feature flag values, or an infrastructure release. You can easily see, just off git history, when the state of the system changed (and what changed), which makes incident debugging much easier. With DB feature flags, there's one more source of truth for changes to production inf…

This! 100% All the same benefits of config as code, infra as code. And with feature flags if something goes wrong its a simple `git revert` to get back into the previous state.

Another benefit is you can easily replicate the current (or previous) state of production/staging/etc flags locally just by doing a `git clone` and then run our self-hosted version locally. Its a single binary, can be installed with curl or homebrew and can read the flag state from your local filesytem.

This allows you to test your code locally or in CI with the same state in production

Re: Show HN: Feature Flags Backed by Git

#15

This post comes at a great time! I've been wondering what folks prefer - git or DB backed configs and feature flags. How do you decide to go with one or the other? What do you guys do when GitHub inevitably has an outage?

I tried to answer your first question below, hope I did!

Re: GitHub outage, each org gets their own instance in our cluster and maintains a checkout of the git state, so you can still write/read from your environments, they just wont be synched to GitHub until they recover.

We're also thinking about adding other 'sinks' like S3/object stores and OCI as backup sinks.

Re: Show HN: Feature Flags Backed by Git

#16

If a user can turn a toggle on and off using a UI, what is even the point of Git?

Auditability and, presumably, the ability to require approvals to commit changes are nice to have. I would assume the editor is just a UI to generate a commit. Maybe even to approve them.

Re: Show HN: Feature Flags Backed by Git

#17
post #16

If a user can turn a toggle on and off using a UI, what is even the point of Git?

Auditability and, presumably, the ability to require approvals to commit changes are nice to have. I would assume the editor is just a UI to generate a commit. Maybe even to approve them.

Approvals are coming next btw. With the ability to lock down envs like production and optionally require all state changes to go through a proposal/approval process

Re: Show HN: Feature Flags Backed by Git

#19

Earlier quoted context omitted.

yeah sorry, I will fix that! It was bothering me too. I put the music to the lowest setting.. I used https://kite.video/

The voice volume seems to get quieter in certain spots, even when its set at a constant level.. I'll reach out to the Kite team

Kite founder here–Sorry about that, we’ll take a look. We have some auto normalization turned on that we obviously need to tweak. Thanks for flagging!

Also happy to manually fix this for you in the meantime if you send us the project file (instructions in the in-app chat).

Post reply on HN