1 |
On Tue, Jul 18, 2017 at 5:40 PM, Michał Górny <mgorny@g.o> wrote: |
2 |
|
3 |
> On wto, 2017-07-18 at 22:35 +0100, M. J. Everitt wrote: |
4 |
> > On 18/07/17 22:23, Kent Fredric wrote: |
5 |
> > > On Tue, 18 Jul 2017 22:12:45 +0100 |
6 |
> > > "M. J. Everitt" <m.j.everitt@×××.org> wrote: |
7 |
> > > |
8 |
> > > > I think mgorny was doing some general commit stats, and I have yet to |
9 |
> > > > compile my own, but it would be very interesting to see how many |
10 |
> > > > 'active' team members there were in any given project. I suspect the |
11 |
> > > > results could be very telling ... |
12 |
> > > |
13 |
> > > Its not even like they're "inactive", they're just not active *in the |
14 |
> team*. |
15 |
> > > |
16 |
> > > For some, there's no reason for them to devaway: |
17 |
> > > |
18 |
> > > - They're on IRC |
19 |
> > > - They commit daily |
20 |
> > > |
21 |
> > > But they're on teams they seldom do things in. |
22 |
> > > |
23 |
> > > This is probably more true the more teams you're on. |
24 |
> > |
25 |
> > Then why are you 'in' the team.. I mean, there's one thing to idle on an |
26 |
> > IRC channel, but membership does normally imply some form of |
27 |
> > contribution, no? Or is it just to make you 'look' |
28 |
> > interested/popular/part-of-the-furniture .... |
29 |
> |
30 |
> Well, that *is* a problem. However, we are supposed to be friendly |
31 |
> and nice, and not tell other developers that they have done literally |
32 |
> nothing during the 2 years they're part of some project. That could |
33 |
> discourage them from contributing. |
34 |
> |
35 |
|
36 |
> You are also not supposed to try to offload yourself and distribute |
37 |
> the work to them. That's bossing around, and it discourages others from |
38 |
> actually doing anything. |
39 |
> |
40 |
> So, well, you're just supposed to smile and thank them for doing nothing |
41 |
> for the project because otherwise they could feel offended |
42 |
> and discouraged from doing anything, |
43 |
> |
44 |
|
45 |
I am reading a lot of frustration in your comments. I know I have been on a |
46 |
team(s) where this was the case and it was difficult to resolve. I've also |
47 |
been that person who doesn't contribute but "hangs around". It might be |
48 |
possible to think about better ways to measure progress and staffing than |
49 |
just 'people'. Its pretty clear that 'people on the team' has little |
50 |
relation to 'work done by the team'. So lets try to break that entirely? |
51 |
|
52 |
I want to be clear that "being friendly and nice" is not necessarily the |
53 |
reason why we do not encourage the behavior you state. I suspect telling |
54 |
people they have not done anything recently doesn't necessarily encourage |
55 |
them to do stuff. Most of them have actual reasons for not contributing |
56 |
(whatever they may be) and often a simple conversation doesn't magically |
57 |
free up time for them, nor encourage them to start doing more. |
58 |
|
59 |
When I read your comments I see some issues being raised: |
60 |
|
61 |
How do you recruit new people to join a team that already has "a lot of |
62 |
people" working on problems? |
63 |
How do you set up incentives to entice existing team members to contribute |
64 |
more? |
65 |
Why do people who do nothing stick around? |
66 |
|
67 |
The most obvious thing to change is what I mentioned earlier, stop focusing |
68 |
on "number of humans" and focus on things like "backlog of work for team" |
69 |
and "velocity of team." Note that this requires ~agreement on what other |
70 |
metric to use (like bug backlog) and tools to measure the backlog and |
71 |
velocity. The GMN used to have some of these metrics for bugs. |
72 |
|
73 |
So one idea might be to measure bug backlog and bug velocity. Teams that |
74 |
have a backlog that is not growing at a large rate, or even teams with |
75 |
positive velocity (they tend to close all of their bugs eventually or keep |
76 |
the backlog in a specific range) probably don't need operational help (they |
77 |
are correctly staffed for their workload.) Teams that have a growing |
78 |
backlog and negative velocity are understaffed (they will only get further |
79 |
and further behind.) |
80 |
|
81 |
Note that these metrics don't necessarily care about the number of people |
82 |
on the project, or how much each person contributes. It only cares about |
83 |
the velocity of the project as a whole in relation to their bug queue. Its |
84 |
certainly not how many projects will want to work (many teams want to keep |
85 |
bugs open forever, for example.) In the past I've seen a bug "purgatory" |
86 |
type label used for this, where bugs that someone looked at and decided |
87 |
"well this is useful to keep open but isn't on the roadmap or we don't |
88 |
necessarily plan on doing it" gets pushed into the "Purgatory"; it stays in |
89 |
the bug system (open even!) but we don't count purgatory bugs as part of |
90 |
the backlog. |
91 |
|
92 |
I suspect this type of thing would be tough to deploy in Gentoo as a whole |
93 |
(because people enjoy their particular way of managing their project and |
94 |
dislike change) but its one idea to try to manage staffing of teams via |
95 |
different metrics. It also requires a manager; someone who cares about the |
96 |
bug metrics, to actually look at the metrics and manage the backlog. Given |
97 |
existing team managers also do not look at their staffing numbers (e.g. the |
98 |
staffing needs page is poorly maintained) I'm not convinced adopting a |
99 |
different solution will necessarily have good effects. In the end someone |
100 |
inside of Gentoo needs to care about things like sourcing, staffing, and |
101 |
recruiting. Recruiters certainly care about the latter; but I'm not sure |
102 |
the former has any particular owner. |
103 |
|
104 |
I'm not sure how we can incentivize developers to contribute more. One |
105 |
thing we did in the past to recognize developers was to interview them in |
106 |
the GMN. I had considered doing a similar thing like "top developer of the |
107 |
month" or something to reward contributions in some way. I had also |
108 |
considered taking Google's "peer bonus" concept and trying to reward |
109 |
exceptional contributions with Foundation money (via some kind of voting |
110 |
process or having the council give out awards or something.) However that |
111 |
had numerous legal implications (and tax implications for the receiver) and |
112 |
so it was nixed. |
113 |
|
114 |
For people who just 'hang around' I think Gentoo as a whole could offer |
115 |
clearer developer emeritus benefits that might convince people who are not |
116 |
doing a whole lot to actually accept retirement / emeritus status. A lot of |
117 |
people stick around to be 'in the group' and to keep their email. As long |
118 |
as they remain in one project they can stick around! We have the |
119 |
undertakers project and they do great work; but it can still take many |
120 |
months / years to actually retire someone determined to stick around but |
121 |
not contributing anything meaningful. |
122 |
|
123 |
-A |
124 |
|
125 |
|
126 |
> -- |
127 |
> Best regards, |
128 |
> Michał Górny |
129 |
> |