netdev development stats for 6.4
Subsystems (2)
Jakub Kicinski
maintainerHi!
Stats for 6.4 are here!
Changes
-------
You'll notice that the absolute values/scores are a lot smaller, they are now divided by the number of weeks the cycle had, to make cycle-to-cycle comparisons easier.
There is also info now on how many positions given person moved within the ranking.
Last by not least I thought it could be interesting to look at histograms of how long have community members been around.
As always please feel free to share any feedback / thoughts you have, I can't promise I'll be able to honor requests for _additional_ stats :) but tweaks or indicating what's helpful and what's not would be great.
Code: https://github.com/kuba-moo/ml-stat
Methodology?
------------
The statistics are based (largely) on mailing list traffic, so they count emails and postings rather than review tags and commits. Notably this means we count revisions of a series as separate "threads". This is because we're trying to measure how the community works, not the outcomes.
We count email traffic (and commits where appropriate) between the net-next pull requests (from the 6.3 PR to the 6.4 PR this time).
6.4 statistics
--------------
The cycle started on Feb 21 and ended on Apr 26th, it was one week shorter than the previous cycle.
We have seen total of 16529 messages (258 / day) which is 14% more than last time. However, the number of commits directly applied by netdev maintainers declined by 4% (a day) for total of 1112 in the cycle. Higher number of messages is likely due to previous cycle including end of year / winter celebrations.
We have seen 748 people/aliases on the list which is up 2.5% (a day) from last time. According to my rough count of the 748 people, 341 has posted patches but never replied to a thread started by another person, 252 were only replying and never posted patches, and 155 did both.
Amazingly the number of commits which go into the tree with at least one Review/Ack tag has increased further by 10% and is now at 65% (58% of which do not come from the same email domain as the author). This does not count review done by the maintainer applying the patch.
Rankings
--------
Top reviewers (thr): Top reviewers (msg):
1 ( ) [44] Jakub Kicinski 1 ( ) [73] Jakub Kicinski 2 ( ) [33] Simon Horman 2 ( +1) [72] Simon Horman 3 ( +1) [12] Andrew Lunn 3 ( -1) [29] Andrew Lunn 4 ( +2) [ 9] Eric Dumazet 4 ( ) [18] Leon Romanovsky 5 ( -2) [ 8] Leon Romanovsky 5 ( +1) [15] Krzysztof Kozlowski 6 ( +2) [ 7] Krzysztof Kozlowski 6 ( +3) [15] Vladimir Oltean 7 (+13) [ 6] Florian Fainelli 7 (+22) [14] Florian Fainelli 8 ( -3) [ 6] Paolo Abeni 8 ( ) [14] Eric Dumazet 9 ( +3) [ 5] Vladimir Oltean 9 (+18) [13] Jason Wang 10 ( ) [ 4] Kalle Valo 10 ( +2) [12] Russell King 11 ( +2) [ 4] Russell King 11 (+14) [ 9] Willem de Bruijn 12 (+15) [ 4] Willem de Bruijn 12 (+23) [ 8] Stefano Garzarella
Simon takes a very strong second position which should not be a surprise to anyone following the list. Florian jumps back into the top 10 (after an absence in 6.3).
Top authors (thr): Top authors (msg):
1 ( ) [7] Jakub Kicinski 1 ( +1) [24] Saeed Mahameed 2 ( +4) [4] Eric Dumazet 2 (+18) [23] David Howells 3 ( -1) [4] Vladimir Oltean 3 (+29) [16] Shannon Nelson 4 ( -1) [4] Tony Nguyen 4 ( -3) [16] Vladimir Oltean 5 (***) [3] Arseniy Krasnov 5 ( +2) [15] Daniel Golle 6 (+22) [3] Pedro Tammela 6 ( -2) [15] Jakub Kicinski 7 (+33) [3] Daniel Golle 7 ( -2) [13] Tony Nguyen 8 (***) [2] Zheng Wang 8 (***) [13] Arınç ÜNAL 9 (+13) [2] Heiner Kallweit 9 (+50) [12] Christian Marangi
10 (***) [2] Kal Conley 10 (+32) [12] Xuan Zhuo
A lot of movement among patch producers. Apart from "usual suspects" we see Shannon (new Pensando driver), David H (splice rework), Arseniy (vsock work), Pedro (TC improvements), Daniel & Arinc (MediaTek DSA), Christian (LED / PHY integration), Xuan Zhuo (virtio cleanup & XDP work).
I will skip individual scores this time because they look _very_ much like the top reviewers in positive and top authors in negative. Maybe I need to change the formula to catch something interesting...
Company rankings
----------------
Top reviewers (thr): Top reviewers (msg):
1 ( ) [47] Meta 1 ( ) [80] Meta 2 ( +4) [33] Corigine 2 ( +3) [72] Corigine 3 ( -1) [22] Intel 3 ( -1) [48] Intel 4 ( ) [19] RedHat 4 ( -1) [44] RedHat 5 ( ) [17] Google 5 ( +2) [32] Google 6 ( -3) [13] nVidia 6 ( ) [29] Andrew Lunn 7 ( ) [12] Andrew Lunn 7 ( -3) [28] nVidia
Corigine takes #2 spot, thanks to impressive work from Simon, congrats! nVidia continues to slip for the second cycle in a row.
Top authors (thr): Top authors (msg):
1 ( ) [19] RedHat 1 ( +1) [79] RedHat 2 ( +1) [13] Intel 2 ( -1) [58] nVidia 3 ( +2) [10] Meta 3 ( ) [44] Intel 4 ( -2) [10] nVidia 4 ( +4) [39] AMD 5 ( -1) [ 9] Google 5 ( +4) [24] Google 6 ( ) [ 7] NXP 6 ( +1) [23] Meta 7 ( +2) [ 5] AMD 7 ( -3) [23] NXP
RedHat takes #1 code producing spot, likely due to David H's work.
Top scores (positive): Top scores (negative):
1 ( ) [590] Meta 1 (***) [15] TI 2 ( +3) [464] Corigine 2 (***) [12] AMD 3 ( -1) [258] Intel 3 ( -1) [11] Alibaba 4 ( +3) [200] Google 4 (***) [10] Sberdevices 5 ( -2) [180] RedHat 5 (+50) [ 8] Zheng Wang 6 ( ) [169] Andrew Lunn 6 (***) [ 8] Dectris 7 ( -3) [129] nVidia 7 ( -6) [ 8] Marvell
8 ( ) [125] Linaro
9 ( +3) [111] Broadcom
10 ( +5) [ 64] NXP
11 ( -2) [ 57] Oracle
12 ( +2) [ 54] Isovalent
13 (***) [ 52] Qualcomm
14 (+20) [ 48] Microchip
15 (***) [ 41] Huawei
The positive participation scores reflect the reviewer activity. Florian puts Broadcom in the top 10. NXP reenters top 10 as well thanks to Vladimir's work (or perhaps just a code vs review balance shift ;)). It's great to see Microchip making an appearance on the left (review work of Horatiu, and Steen). Qualcomm is here because I fixed Kalle's corporate mapping :) Huawei is Yunsheng Lin.
On the "bad" side the only constants are Alibaba and Marvell, who continue to contribute code but do not participate in reviewing the work of others :(
Histograms!
-----------
I was wondering about the distribution of "tenure" in the community. Are we relying on "old timers" to review the code? Are the "old timers" still coding? Do we have any new participants at all?
The statistics are calculated by measuring the time distance since first authored commit in the tree. The bucketing is a bit odd, first buckets are short term and in power of 2 (*), later are in 2 year spans (#). The histograms should have the same scale so that comparing across categories is legit.
Tenure for reviewer
0- 3mo | 2 | * 3- 6mo | 3 | ** 6mo-1yr | 9 | ******* 1- 2yr | 23 | ****************** 2- 4yr | 33 | ########################## 4- 6yr | 43 | ################################## 6- 8yr | 36 | ############################# 8-10yr | 40 | ################################ 10-12yr | 31 | ######################### 12-14yr | 33 | ########################## 14-16yr | 31 | ######################### 16-18yr | 46 | ##################################### 18-20yr | 49 | #######################################
Tenure for author
0- 3mo | 40 | ************************** 3- 6mo | 15 | ********** 6mo-1yr | 23 | *************** 1- 2yr | 49 | ******************************** 2- 4yr | 47 | ############################### 4- 6yr | 50 | ################################# 6- 8yr | 31 | #################### 8-10yr | 33 | ##################### 10-12yr | 19 | ############ 12-14yr | 25 | ################ 14-16yr | 22 | ############## 16-18yr | 32 | ##################### 18-20yr | 31 | ####################
Unsurprisingly in the "recent" buckets are sparse for reviewers and more filled for authors. There's an interesting grouping of authors in the 1-6yr region. Perhaps it takes a year to become efficient and 5 more years to give up? :) The 4-6yr bucket is also active on the reviewer side but there's a much stronger showing for the oldest 16-20yr category in terms of reviews.
Note that these are stats of the number of people, not activity. Activity looked fairly similar.
Quoted 4 lines · Jakub Kicinski
Hi!
Stats for 6.4 are here!
Thanks, Jakub, it is always interesting to see an overview of what's been happening.
[...]
Quoted 2 lines
Top scores (positive): Top scores (negative):
[...]
Quoted 2 lines
The positive participation scores reflect the reviewer activity.
[...]
Quoted 1 line
On the "bad" side the only constants are
[...]
Can you give a little more description of what is being measured in this section - is this reviews versus submissions? And what are some ways for a company to get out of the wrong list?
Quoted 7 lines
Histograms!
-----------I was wondering about the distribution of "tenure" in the community. Are we relying on "old timers" to review the code? Are the "old timers" still coding? Do we have any new participants at all?
Is this relying on the .mailmap for finding longevity? I probably need to add a couple more entries here.
Thanks!
sln
Quoted 3 lines
Can you give a little more description of what is being measured in this section - is this reviews versus submissions? And what are some ways for a company to get out of the wrong list?
Good citizens should perform code reviews as well as submit code. So yes, it is reviews versus submissions. If you look at previous versions of this report there is more details about the calculation.
Microchip has done exactly that, gone from the bad side to the good side. And they did it by a couple of their engineers performing reviews.
Andrew
Jakub Kicinski
maintainerQuoted 5 lines · On Fri, 28 Apr 2023 15:08:27 -0700 Shannon Nelson wrote:
Quoted 1 line
On the "bad" side the only constants are
Can you give a little more description of what is being measured in this section - is this reviews versus submissions? And what are some ways for a company to get out of the wrong list?
As Andrew explained the way to get off the "negative" list is to comment on other peoples patches :)
Quoted 9 lines
Quoted 6 lines
Histograms!
-----------I was wondering about the distribution of "tenure" in the community. Are we relying on "old timers" to review the code? Are the "old timers" still coding? Do we have any new participants at all?
Is this relying on the .mailmap for finding longevity? I probably need to add a couple more entries here.
I was matching on name or email. Hopefully name would be good enough to catch most cases.
Quoted 3 lines · Jakub Kicinski
Hi!
Stats for 6.4 are here!
<...>
Quoted 2 lines
Corigine takes #2 spot, thanks to impressive work from Simon, congrats! nVidia continues to slip for the second cycle in a row.
For every dark night, there's a brighter day.
Quoted 6 lines
Top authors (thr): Top authors (msg):
1 ( ) [19] RedHat 1 ( +1) [79] RedHat 2 ( +1) [13] Intel 2 ( -1) [58] nVidia 3 ( +2) [10] Meta 3 ( ) [44] Intel 4 ( -2) [10] nVidia 4 ( +4) [39] AMD
Another way to present the same data can be:
3 ( -1) [10] nVidia
4 ( +1) [10] Meta
BTW, don't take it seriously :)
Thanks
Jakub Kicinski
maintainerQuoted 4 lines · On Wed, 3 May 2023 11:01:33 +0300 Leon Romanovsky wrote:
Quoted 2 lines
Corigine takes #2 spot, thanks to impressive work from Simon, congrats! nVidia continues to slip for the second cycle in a row.
For every dark night, there's a brighter day.
Looking forward to it :)
Quoted 11 lines
Quoted 5 lines
Top authors (thr): Top authors (msg):
1 ( ) [19] RedHat 1 ( +1) [79] RedHat 2 ( +1) [13] Intel 2 ( -1) [58] nVidia 3 ( +2) [10] Meta 3 ( ) [44] Intel 4 ( -2) [10] nVidia 4 ( +4) [39] AMDAnother way to present the same data can be:
3 ( -1) [10] nVidia
4 ( +1) [10] MetaBTW, don't take it seriously :)
these are sorted before rounding ;)