Skip to main content
20 events
when toggle format what by license comment
Jun 22, 2018 at 11:08 comment added amon I would also have written this answer, but would like to point out that feature toggles don't have to be a literal conditional. You could just as well call this “dependency injection”. The point is that you first introduce some abstraction or interface, then can implement a solution within that interface without having to change other code. Afterwards the abstraction can be removed. This fits nicely into the “split your PRs” idea: first refactor to make the change easy (this is the blocker), then you're free to implement the actual features at your leisure.
Jun 21, 2018 at 20:24 history edited Doc Brown CC BY-SA 4.0
deleted 9 characters in body
Jun 21, 2018 at 19:58 history edited Robert Harvey CC BY-SA 4.0
deleted 12 characters in body
Jun 21, 2018 at 19:26 comment added Doc Brown @Ewan: it is hard to understand someone just writing some catchwords and half-sentences.
Jun 21, 2018 at 19:25 history edited Doc Brown CC BY-SA 4.0
added 560 characters in body
Jun 21, 2018 at 15:35 comment added Ewan *feature toggles.
Jun 21, 2018 at 15:25 history edited Doc Brown CC BY-SA 4.0
added 517 characters in body
Jun 21, 2018 at 15:22 comment added Robert Harvey I don't think he should use feature toggles at all for this. It's papering over a larger problem. It's a good suggestion, but in a sense it's throwing good money after bad.
Jun 21, 2018 at 15:15 comment added Doc Brown @RobertHarvey: I agree, usage of FTs is probably not the only thing the OP needs to change in their process to make it more smooth. And if FTs are used in a wrong manner, with dozens of checks in the source code if the toggle is activated or not, this can become a problem, too. FTs work best when there is just one feature entry point, and only one or two checks for the toggle are required in the code base.
Jun 21, 2018 at 15:12 comment added Robert Harvey I get it. But technology isn't the solution to all problems. Sometimes you have to do things like "freeze" a feature so that it's stable enough to complete.
Jun 21, 2018 at 15:12 history edited Doc Brown CC BY-SA 4.0
added 72 characters in body
Jun 21, 2018 at 15:08 comment added Doc Brown @RobertHarvey: sure it is a process problem. But the usage of certain tools can help to improve a process. When I introduced the systematic usage of FT into the development process of my team, it helped us a lot to manage parallel and dependend development of features, and to make this more independend from the usual source control integration steps. So I am not speaking about some theory here.
Jun 21, 2018 at 15:02 comment added Robert Harvey Feature branches don't fix this either. This is a process problem, not a source control problem.
Jun 21, 2018 at 15:01 comment added Doc Brown @RobertHarvey: I don't think feature branches are really better for this. They introduce complexity even more and complicate testing even more. To my experience, FTs can help a lot to integrate earlier and more often with the main development line.
Jun 21, 2018 at 15:00 comment added Ewan jumping on the hating feature branches train
Jun 21, 2018 at 14:54 comment added Robert Harvey I gotta say, I don't think feature toggles are a great way to manage change. They introduce unnecessary complexity and complicate testing. If your users don't like you moving their cheese, then sure, provide a feature toggle. The feature toggle is its own feature. But if you're throwing switches in the program so that you can corral your development process, then I would suggest that the development process needs to be fixed.
Jun 21, 2018 at 14:44 comment added Doc Brown @baler: does not matter. Still feature toggles will help you with all the points I mentioned. Feature toggles will improve your workflow.
Jun 21, 2018 at 14:36 comment added baler This is pre-launch features. The user wont see them. This question is more about fixing the workflow issues that arise
Jun 21, 2018 at 14:04 history edited Doc Brown CC BY-SA 4.0
added 288 characters in body
Jun 21, 2018 at 13:56 history answered Doc Brown CC BY-SA 4.0