4 ms·
Keep in mind though that if everyone is working on something that takes multiple days to complete (and your definition of non-working is incomplete) then all th
by zeendo 11y ago
Keep in mind though that if everyone is working on something that takes multiple days to complete (and your definition of non-working is incomplete) then all the work is happening in feature branches and master is quiet. Those rebases are easy because no work is going on there.
Feature toggles remove this problem by keeping everyone in trunk/master. You can then have CI builds with whatever set of toggles you want.
- aidenn0 11y agoFeature toggles are a good option too; I have used that before and like it. The downside is that you can end up with a giant set of feature toggles and very little idea of which combinations work.
- OldSchoolPro 11y agoUse automated integration tests and test every combination.
- aidenn0 11y agoExponential runtime.
- OldSchoolPro 11y agoDon't overdo it, use coarse grained switches. Throw hardware at it. Switches are temporary, with time their number will settle.
- aidenn0 11y agoThe one place I worked that used them, switches were not temporary. There were about 4000 of them last time I checked. There was an advantage: if a bug popped up you possibly had a workaround immediately for the customer. Downside is you had no idea if that workaround would expose more bugs.
- xorcist 11y ago"It's just temporary" is one of the five famous last words (together with "it worked on my machine"). It can easily turn into one of those projects where someone just shoved in autoconf to turn them into a giant ball of IFDEFs so nobody really knows which combinations work. Toggling also only makes sense for the cases where you don't change the structure of your data. So be careful, and make sure you have a plan if you decide to do it.
- dllthomas 11y agoIt sounds like you need some way of applying downward pressure to the number of feature toggles, so they get cleaned up when no longer relevant. I don't have an immediate suggestion, though...