This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Why not contribute? (to GCC)


On 04/24/2010 09:35 PM, Thomas Neumann wrote:
What reasons keep you from contributing to GCC?
I tried this a while ago, but ultimately gave up because I could not get my
patches in. Some were applied, but many never made it. Admittedly they were
perhaps not of general interested, there were only improving compatibility
of the gcc base with C++ (what Ian Lance Taylor then did later).
The most frustrating part was not getting patches rejected (I could then
improve them, after all), but having patches ignored. You submit a number of
patches, and the result is... nothing. No response at all. Not exactly what
encourages gcc as a free time activity.

On the other hand I am a professional developer, too (even working on
compilers), and I myself would perhaps also be reluctant to spend time on
reviewing and merging patches that I do not really care about. So I
understand the gcc developers. But it is still frustrating for outsiders.

Sorry to reply so late (was away off internet for a while).


From my experience, the reasons for not contributing are:

- Code complexity: Doing even the simplest stuff in gcc requires quite some time to a newcomer.
Occasionnally, I got some good advices which helped to produce a functional patch, but in many
cases, having access to a simple hint (just to localize the actual code that needs to be modified)
is often difficult. C does not help here (even though I'm fluent in that langage), but I do not want
to re-open a war...


- Time involvement: I can spend a few days (mostly over the week ends) or hours after work and can
spend an equivalent amount of time for dealing with consequences of a patch. I cannot afford to
spend weeks of work (except exceptionnaly if this relates to my work). On one occasion, I submitted
a prototype patch to remove default template parameters with some questions whether the flag I used
was really available and request for comments.... The only answer I got was to use the new (completely
undocumented and un-comprehensible to me after a few days of struggling with it -- this was several
years ago) error message system.... Not even one comment on the usefulness of the feature or on
my questions, I decided that the patch would anyway be never accepted (at the time INRIA had no
copyright agreement -- and I'm still not sure I'm covered now --), so I abandonned. Since then
Paolo IIRC also proposed something (probably much more elaborated than what I did), still such a "trivial"
(for me it was some effort) functionality is not available unless I'm wrong. I agree that this is a minor
functionality, and typically the kind of effort that might interest a newcomer, but the effort to get accepted
is/was just too high.


- I'd like to help gcc not to fight/bother gcc people to get some more or less trivial stuff accepted.
I can very well understand that they have more important things to do.....
I must say though that I see some maintainers spending time to answer beginner questions, and I
appreciate.


- Copyright assignment only comes fourth (and actually may be solved for me). I believe anyhow that
most newcomers should first start with very small patches first (one liners, documentation, style, unused
variables....). But those patch are often ignored (again, I can understand that for a gcc developper that
might not be worth the effort).


- All in all, I believe that there is gap between skilled developpers and newcomers. Once one is skilled enough
the list is very helpful. For newcomers, the answers form the list are just not reliable enough (in terms of useful
answers). Again, I have seen recently some effort by a few developpers to anser basic questions and that's good.
A slightly better way might be to offer mentorship (eventually pyramidal) on some small projects in order to help
people jump in the bandwagon.... At least this is true for non-compiler people as I'm.






Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]