I know I'm late, I always am.  That's no excuse, and possibly one of the
"good reasons" that I haven't done much work on LilyPond the past years.

Although I do have a number of "good reasons", I still feel that if
contributing was sheer joy, even people with only "good reasons" would
still be contributing now and then.  Reasons are merely stories that
we tell ourselves to justify our behaviour; some of us like to tell
ourselves "good reasons" more often, others mostly like "bad reasons"
stories better.

I'm wondering if we would have had gotten much different answers using
the question: If anything were possible, would you contribute to
LilyPond more/again and what would have to change for you to do so?

Anyway, here are my "problematic reasons".

1. Friendship and the fun of creating: A dear friend and I stopped
contributing more or less simultaneously, both of us for "good
reasons".  I never thought of it much at the time, only now I realise
that working together on a project (the how) is possibly more
important than what you are making (the what).  For me, working on
LilyPond was mostly fun.  Anything was possible, the only limitation
was myself.

2. Minimal procedures, anything goes: It is no longer just "our own"
project.  We moved very quickly.  We hardly used any policies or
procedures except those that we made up ourselves and saved us time
and we changed or ignored them when something felt to be in our way.
By moving fast we did make quite some mistakes.  The good thing that
came out of that was the regression test.  When we found that we were
doing boring bug-fixing work, fixing very similar bugs over and over
again for each stable release, it felt smarter, more efficient and
more fun to make a good regression test.

3. Shared, global responsibility and trust: Breaking things seems
critical now, you have to be extremely careful.  When things broke,
anywhere in LilyPond (C++, Scheme, build system, Python, Scheme) often
another developer would have it fixed before you found out yourself.
Everyone had almost global understanding of everything, we all made
mistakes and we all knew that we all made mistakes (incidentally:
that's how people learn best).  It seemed that this was the price we
gladly paid for increased pace.  Blaming does not solve anything, the
only thing that mattered was LilyPond herself.

4. Patch reception, patch correction, benevolent dictator: Rietveld
(web and noreply@ instead of email) and git-cl is awkward.  This is a
difficult subject: do you i) discuss a patch until it's made perfect
by the contributor, or do you ii) rewrite it as you put it in and show
you version to the contributor.  I remember we did ii) a lot.

As a closing remark, I think that 2) and 3) made it much more
difficult to join the community than it is now.  Nowadays there is
less need for inside information, you can expect the thing to work and
the bug or feature that you are working on won't be already fixed by
the incrowd when you do your next pull.


DevL



-- 

Colin Hall

_______________________________________________
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel

Reply via email to