3 ms·
> The chaotic nature of development often resulted in teams playing schedule chicken, convincing themselves and others that their code was in better shape than
by jancsika 9y ago
> The chaotic nature of development often resulted in teams playing schedule chicken, convincing themselves and others that their code was in better shape than other projects, that they could “polish” the few remaining pieces of work just in time, so they would be allowed to checkin their component in a half-finished state.
I'd love to get clarification on what "checkin" [sic] means in this context.
Were they waiting for permission for their equivalent of a feature branch to be merged, or were they actually waiting for their code to be added to the repository in the first place?
- chiph 9y agoI believe it means to be allowed to merge their code into a higher level branch, which is on the path towards release.
- jancsika 9y agoThis sounds exactly like the problem Linus described with centralized version control systems in his Google Talk.
- dpark 9y agoNo. The problem described is that the unstable code is being pulled upstream. Merging into the root branch is equivalent to merging into Linus’s repo. Nothing prevents a Windows developer from checking unstable code into a feature branch without merging up, just as nothing prevents a Linux developer from checking unstable code into a private clone without Linus pulling it in. The difference here is simply whether the feature branch has a central host. Decentralization doesn’t fix this issue. Proper code health practices do.