manu AT gcc DOT gnu DOT org

Manuel López-Ibáñez

5 things that GCC could do better as a community

  1. A simple/flexible click-through web-form for copyright assignment, following Google's example.1

  2. Attract more developers.

    • Problems: GCC could benefit a lot by attracting more contributors in general and specifically more part-time volunteer contributors. The lack of developers and the current review system means that patches take a long time to be reviewed or even never get reviewed and get lost in the mail archives. This is discouraging even for ''paid'' developers.

    • Goals: GCC should have at least 2 active maintainers per module, this is not the case right now for critical parts like the C/C++ FEs, libcpp, diagnostics, most optimization passes, graphite, etc. GCC should maintain and expand the number of paid-contributors from organizations and corporations. GCC should attract contributors from the research community.2

  3. Upgrade all infrastructure around GCC.

    • Problems:

      • Outdated, unmaintained, understaffed infrastructure: wiki, bugzilla, SVN repository, HTML pages (+CVS repository), mailing lists software/archives. (Actually, this has improved a lot recently, but there are still some issues).
      • Missing infrastructure: project-wide build-bot/regression-tester/speed-memory-tester, patch tracker, ???.

      • Example of successful infrastructure: CompileFarm (but needs better marketing/exposure).

    • Goals: At least 2 maintainers of each infrastructure component. Get rid of outdated/obsolete infrastructure (e.g., get rid of CVS). Better marketing/exposure of existing infrastructure. Share infrastructure with other GNU projects (GDB, binutils, libc).

  4. Improve GCC documentation3

  5. Make GCC more useful and interesting to users

Notes

2018-12-10

2018-09-12

GCC

Clang

LLVM

Contributors (Past 12 Months)

167 developers

353 developers

488 developers

Commits (Past 12 Months)

7,872 commits

6,007 commits

16,658 commits

2018-06-03

2017-09-06

GCC

Clang

LLVM

Contributors (Past 12 Months)

165 developers

325 developers

454 developers

Commits (Past 12 Months)

7,633 commits

5,676 commits

17,678 commits

Lines Added

864,682 lines

511,130 lines

1,530,432 lines

Lines Removed

2,857,772 lines

247,780 lines

833,086 lines

2016-05-29

GCC

Clang

LLVM

Contributors (Past 12 Months)

184 developers

286 developers

358 developers

Commits (Past 12 Months)

7,796 commits

6,197 commits

16,326 commits

Lines Added

973,051 lines

586,248 lines

786,396 lines

Lines Removed

422,726 lines

255,461 lines

441,444 lines

2015-12-22

2015-11-13

2015-04-21

GCC

Clang

LLVM

Contributors (Past 12 Months)

203 developers

219 developers

284 developers

Commits (Past 12 Months)

8,188 commits

6,260 commits

15,186 commits

Lines Added

985,414 lines

369,243 lines

1,111,089 lines

Lines Removed

388,351 lines

178,283 lines

1,058,732 lines

2015-04-13

2015-02-13

2015-02-11

2015-02-06

2014-11-13

2014-09-04

2013-04-25

2013-01-27

2013-01-23

2012-11-06

2010-05-30

2006-08-08

Footnotes

  1. The whole thread Why not contribute? shows that this is a major problem. See also my reasons, Ian Lance Taylor agrees that the process is complex and confusing and also believes a web form would help. Linus Torvalds also thinks that the copyright assignment process is ''a big hurdle'' for contributors. (1)

  2. In my opinion, this is where GCC is further away from success because researchers have already moved to LLVM (2)

  3. The usual response is to look at the source but the sources are many times not well-documented, logically structured or easy to browse. (3)

  4. plugins help here but this is still generally more difficult in GCC than in other compilers (4)

None: ManuelLópezIbáñez (last edited 2018-12-13 18:22:20 by ManuelLopezIbanez)