General statistics
List of Youtube channels
Youtube commenter search
Distinguished comments
About
Andrea Laforgia
Continuous Delivery
comments
Comments by "Andrea Laforgia" (@andrealaforgia) on "Continuous Integration vs Feature Branch Workflow" video.
I would argue that refactorings are the best use case for trunk-based development. If you are refactoring a large part of the code, you’d better ask other people to stop working on that code or you’ll end up with a disastrous merge hell. If you can organise a refactoring as small batches of work to be integrated frequently, definitely do it.
2
Using branching for that specific activity is totally fine and probably the only usage that is acceptable. Branching is not necessarily evil per se. It’s a Continuous Integration anti-pattern, though, so to be avoided when you want to integrate often with other developers in order to deliver changes as fast as possible and avoid merge conflicts (typical of long-lived feature branches). However, bear in mind that the longer your speculative branch staying unaligned with master, the more it will diverge with the rest of the development hence the more likely it is that your speculative work becomes less and less relevant.
2
@carveratutube Before dismissing what Dave says, I encourage you to try to apply what he suggests. What Dave is suggesting is the best way of developing software today: TDD, trunk-based development + feature toggles. And it's not just his opinion. That companies perform much better by adopting those techniques is supported by facts (see the rationale behind DORA surveys and the book "Accelerate"). The idea that features must not be "not really nice or complex" because someone is suggesting working in small batches using TDD and committing often is fundamentally flawed. That is THE way you should be developing software today, especially in a large organization, where many developers participate in working on "nice and complex" features. Committing WIP in master is absolutely fine if you use feature toggles. TDD is not essential for CI, but it's a big enabler of CI, therefore no reason for not using it. There are billion reasons why you should be using TDD that are not striclty related to CI, so I suggest that you watch a video about it. There's plenty on YT.
1
@BigCarso No, that's exactly what is is: 10-15 mins max.
1
Hummm... that “coordination in daily scrums” makes me curious. First because that’s not what daily scrums are for and secondly because it makes me suspect that there is some conversation along the lines of “you go first, I go next, etc...”, which means sequential work, which means defeating continuous integration. Three days can be a huge time if your team works at a very fast pace. There are always ways to make integration/acceptance testing faster.
1