On Wed, Feb 05, 2020 at 08:59:33PM -0500, Kieren MacMillan wrote: > > LilyPond has had a lot of patches get dropped because > > nobody feels comfortable reviewing / shepherding them. > > Seems to me like one solution to that problem might be a subtle > variant on extreme programming: All features/fixes must be > signed out for "patch-ing" by two developers, at least one of > which has committed to and is capable of being the mentor > (shepherding/reviewing).
If LilyPond development were a job (which it isn't), and I was the manager/boss (which I'm not), then I would be totally on board with ordering experienced developers to spend 20%-30% of their time mentoring. This "pair programming" solution is one such version. But LilyPond isn't a job. It's a volunteer effort, and people are free to donate their time (or not) as they see fit. Let's pick one person: Han-Wen. He's said that he has a few hours to spend on LilyPond on Friday afternoon. Would he prefer to work on resolving comments about his latest patch on scheme internals (or whatever he's working on) ? Or would he prefer to spend time communicating with his "paired" developer, who's excited about the shape of the alto clef and wants to work on that instead? I can't answer that question, and neither can you. Han-Wen is the only person who can decide how he'd like to spend his time. I would *love* to see more developers collaborating together. But if the current landscape is anything like it was from 2000 - 2012, then I fear that any policy which *required* such collaboration would likely lead to a collapse of development effort. My $0.02: developers can already form pairs, or take newcomers under their wing, or do any number of activities that involve collaborating off-list. I tried to set up "programming mentoring" at least twice, and it always fizzled out. If there's more developers interested in mentoring, and if they can get a real community of mentoring going for a few months, *then* I think it might be worth formalizing such arrangements in policy. But unless / until that happens, I would be reluctant to have a policy that required collaboration which we don't see happening already. Thought experiment: suppose that a complete newcomer posts to the email list tomorrow, saying that he was interested in working on bug #5542 cross-staff slur hides text in eps backend (I picked randomly). Would anybody jump up and say "great! Let me help you get started. I'll work on this with you!"? Or would there be silence for a few days? If you say "I expect that a developer (but not me) would step forward and offer to mentor him"... then you would be expected extra volunteer effort from developers. Cheers, - Graham