Hacker News new | ask | show | jobs
by 3pt14159 812 days ago
I work for Flagsmith these days, but formerly I was in charge of managing a lot of Trust and Safety related concerns for Clubhouse. This involved deleting a lot of records to appease regulators and creating custom features to handle stuff like CSAM and we used a lot of feature flags there to keep systems safe in case of an event.

The most important architectural decision that we made was pushing some of the feature flagging into the software layer. So, for example, every task had a module name and a task name that together would form the feature flag name. So out of the box any task could be disabled without adding further code. Combined with other good practices it went a long way. Another good option is to enable local evaluation mode[0] which allows a balance between keeping your feature flags up to date while avoiding API calls frequently.

[0] As an aside, I've worked on the implementation of local evaluation mode for one of our clients (I think Python?) at Flagsmith.

2 comments

I'm trying to onboard onto Flagsmith right now and it seems like the identities feature [0] is exactly what I need but I can't seem to figure out how to enable it for an arbitrary string value. For example - I want to feed the SDK "mintlify" and get a response on whether "mintlify" should have a feature or not.

[0] https://docs.flagsmith.com/basic-features/managing-identitie...

Have you checked out this section of the docs?

https://docs.flagsmith.com/clients/server-side#get-flags-for...

I did not. Thanks for sending!
Fascinating. This is exactly what I'm juggling between - whether I want to store the flag in our DB vs. on-the-fly evaluation. Just signed up for a demo w/ Flagsmith :)