1 |
On 10/07/2016 07:32 AM, Raymond Jennings wrote: |
2 |
> On Fri, Oct 7, 2016 at 7:20 AM, Rich Freeman <rich0@g.o> wrote: |
3 |
>> On Fri, Oct 7, 2016 at 10:05 AM, Raymond Jennings <shentino@×××××.com> |
4 |
>> wrote: |
5 |
>>> My opinion is that if a developer is bad enough to keep out, its also |
6 |
>>> important enough to get the paperwork fixed to prove it. If they |
7 |
>>> have a |
8 |
>>> clean case it *should* be very easy to get the paperwork right. |
9 |
>> |
10 |
>> Sure, by all means leave the bug open until the paperwork is fixed, |
11 |
>> but I don't think that means that the developer should be allowed back |
12 |
>> in if the bug isn't closed before some deadline. |
13 |
> |
14 |
> What I want to prevent is a stagnation where a dev gets mistakenly |
15 |
> locked out because his case got left in limbo. |
16 |
> |
17 |
>>> But its the "due process" here that proves the developer is bad to |
18 |
>>> begin |
19 |
>>> with. If comrel screwed up and there was a mistake and the |
20 |
>>> developer is |
21 |
>>> actually meritorious, its bad for gentoo to keep them out. |
22 |
> |
23 |
>> Sure, if all three of your preconditions are true I agree with your |
24 |
>> conclusion. However, if comrel screwed up and there was a mistake and |
25 |
>> the developer is actually still a problem, then the solution is to fix |
26 |
>> the mistakes, not keep them around. |
27 |
> |
28 |
> And how do you know whether the developer is a problem or not? |
29 |
|
30 |
You don't and I think that's really being overlooked. If ComRel screwed |
31 |
up, then "fixing" the mistake is also reversing their decisions that |
32 |
includes bringing back the dev. If the developer is really a problem, |
33 |
then ComRel will be given repeated chances to deal with the developer |
34 |
and eventually (well hopefully not eventually) the "due process" will be |
35 |
done correctly and the developer will be removed. |
36 |
|
37 |
To me this really seems to follow the line of thinking of "If the dev |
38 |
was really innocent of any wrong doing, no complaint would have been |
39 |
filed". I hope that's not the case because I find that style of logic |
40 |
to be both naive and dangerous. |
41 |
|
42 |
-Nicholas Vinson |
43 |
|
44 |
> |
45 |
>>> Also, I just realized that the "everyone votes" blocks comrel |
46 |
>>> manpower from |
47 |
>>> scaling. |
48 |
>>> |
49 |
>>> What if each member of comrel was granted the discretion to handle |
50 |
>>> everything as they themselves saw fit, subject to the provision that |
51 |
>>> the |
52 |
>>> comrel lead/comrel as a group/the council could receive appeals? |
53 |
>> |
54 |
>> I tend to agree with this, or a process where Comrel assigns a small |
55 |
>> group of devs to each case. The Comrel lead or maybe the entirety of |
56 |
>> Comrel could keep a general eye on things as a level of QA and there |
57 |
>> would still be Council appeals. I've heard the issue raised that the |
58 |
>> system where all of Comrel deals with every case also causes issues |
59 |
>> when some members of Comrel aren't around or don't have time to deal |
60 |
>> with every case. Basically it makes all of Comrel as fast as its |
61 |
>> slowest member. Imagine if every stablereq required every member of |
62 |
>> an arch team to approve it? It would be like Ago trying to swim with |
63 |
>> concrete shoes. |
64 |
> |
65 |
> And this is exactly why I suggest breaking comrel up into a team of |
66 |
> independent agents overseen by guidelines that preserve uniformity. |
67 |
> |
68 |
> Being geeks we are all probably familiar with the benefits of |
69 |
> parallelization. It's like |
70 |
> |
71 |
> # make comrel -jN |
72 |
> |
73 |
> :) |
74 |
> |
75 |
> And that means comrel shouldn't be drowning in its own red tape. |
76 |
> |
77 |
>> Indeed, with the model where all Comrel members deciding every case |
78 |
>> recruiting more manpower to Comrel would actually have the ironic |
79 |
>> effect of lowering their productivity. The best thing you could do in |
80 |
>> such a model is instead boot out the slowest contributors. |
81 |
>> |
82 |
>>>> Imagine if stale stablereqs could be appealed |
83 |
>>>> to Council... :) |
84 |
>>> |
85 |
>>> Maybe not stale stablereqs themselves. This is a volunteer project |
86 |
>>> with |
87 |
>>> finite manpower. |
88 |
>>> |
89 |
>>> However, someone deliberately *ignoring* a stablereq when there's a |
90 |
>>> large |
91 |
>>> need for it MIGHT be more worthy of an escalation. But merely being |
92 |
>>> overworked should not be an offense, and it would probably go |
93 |
>>> through comrel |
94 |
>>> first. |
95 |
>> |
96 |
>> If you punish people for ignoring important bugs at times, then you |
97 |
>> just encourage people to not sign up for the job in the first place. |
98 |
>> If you have a single queue multiple server model (which is how most |
99 |
>> projects tend to work, including arch teams), then the queue only |
100 |
>> stalls if all the servers stall. The solution in this case isn't to |
101 |
>> kick out servers, but rather to encourage more to show up and deal |
102 |
>> with the high priority bugs (the reality is that our servers don't |
103 |
>> strictly work on bugs in priority order, though again I think that |
104 |
>> trying to change this could actually lower throughput). Even if a |
105 |
>> server only closes one bug per year, that still has a net positive |
106 |
>> impact on the queue (assuming zero overhead, which is mostly true for |
107 |
>> the way we work). |
108 |
> |
109 |
> My point is that going after people for deliberately ignoring stablereq |
110 |
> is *less* stupid than spamming council with appeals on stale stablereq. |
111 |
> |
112 |
> I never said it was a good idea, just less bad. |
113 |
> |
114 |
> The proper solution would probably be an algorithm that flags the most |
115 |
> urgent stablereq's. |
116 |
> |
117 |
> stablereq triage score = age in days * number of reverse deps blocked on |
118 |
> the stablereq |
119 |
> |
120 |
> Google lives and breathes and eats algorithms, and they even use gentoo |
121 |
> devs as a recruiting ground (hello recruiters!). |
122 |
>> -- |
123 |
>> Rich |
124 |
>> |
125 |
> |
126 |
> |