Hacker News new | ask | show | jobs
by kiitos 504 days ago
Hard-coded feature flags are more commonly referred to as configuration.

The primary purpose of feature flags is to provide a way to change system behavior dynamically, without needing a deploy.

1 comments

> The primary purpose of feature flags is to provide a way to change system behavior dynamically, without needing a deploy.

That's not feature flags; it's just ordinary configuration. (Actually, seems many contributions to this discussion get those mixed up. Maybe even TFA itself.)

Ordinary configuration is updated via deployment. Feature flags are updated without deployment. This is the fundamental difference.
Eh, what? No, it is -- or at least used to be -- the other way around. Features are what the programmer puts in the actual application code. "Feature flags" are a (new-ish) way of making the transfer from older to newer versions of the application code more manageable for the programmer: If they're actually "hard-coded" (as, say, boolean feature-on-or-off constants) in the application code, they require a deployment of the actual executable; if they're "hard-coded" in the totally new-fangled sense of the word that seems to be emerging here (i.e. not actually hard-coded at all), it may require deployment of a "features configuration file" or such.

Just plain "configuration", though, is how the user sets up their software to work. That's saved in a local configuration file (or the Windows Registry or wherever) under the user's control, and doesn't require any deployment by the developer at all.

Ihan oikeasti, nykynuoriso...