@item
@ref{Help us}: your assistance is requested.
+@item
+@ref{Sponsoring}: financial contributions.
+
@item
@ref{Development}: for contributors and testers.
* Tiny examples::
* Bug reports::
* Help us::
+* Sponsoring::
* Development::
* Authors::
* Publications::
@divEnd
+@divClass{column-right-bottom}
+@subheading Sensitive emails
+
+Private matters should be sent to Graham Percival (project
+manager), who will discuss it with those concerned.
+
+@divEnd
@node Tiny examples
@divClass{column-center-top}
@subheading What are @qq{Tiny examples}?
-A tiny example is an example from which nothing can be removed.
+A tiny example is an example from which @strong{nothing} can be removed.
@divEnd
@divClass{column-left-bottom}
understand it and help you.
@item
-A simple example demonstrates that you have put effort towards
+A tiny example demonstrates that you have put effort towards
solving the problem yourself. When people send huge portions of
-input, it looks like they don't care how if we help them or not.
+input, it looks like they don't care if we help them or not.
@item
-Creating a tiny example forces you to understand what is
+Creating a tiny example helps you to understand what is
happening. Many false problem reports can be avoided by
attempting to create a tiny example; if you cannot replicate a
@qq{bug} in a tiny example, then the problem was probably an
@divClass{column-right-bottom}
-@subheading How do I create them?
+@subheading How to create them?
@divClass{keep-bullets}
@itemize
@item
-Include the \version number.
+Include the @code{\version} number.
@item
Make it small! Examples about spacing or page layout might
require many bars of music, but most issues can be reproduced
-using only a single measure.
+using less than a single measure.
@item
When trying to create an example, try commenting out @w{(@code{%}
-or @code{%@{ @dots{} %@}})} sections of your file. If you can
-comment something while still demonstrating the main idea, then
-remove the commented-material!
+or @code{%@{ @dots{} %@}})} sections of your file. If you
+can comment something while still demonstrating the main idea,
+then remove the commented-material.
@item
-Avoid using complicated notes, keys, or time signatures, unless
+Avoid using complicated notes, keys or time signatures, unless
the bug is about the behavior of those items.
@item
Do not use @code{\override} or @code{\set} commands unless the bug
-is about those particular commands.
+is about those specific commands.
+
+@item
+Optionally, attach an image showing the desired graphical output.
@end itemize
@divEnd
@divEnd
+@divClass{column-center-bottom}
+@subheading How tiny should they be?
+Is the code below a minimal example?
+
+@example
+\version "2.14.1"
+\include "english.ly"
+
+\score @{
+ \new Staff @{
+ \key d \major
+ \numericTimeSignature
+ \time 2/4
+ <cs' d'' b''>16 <cs' d'' b''>8.
+ %% Here: the tie on the D's looks funny
+ %% Too tall? Left-hand endpoint is not aligned with the B tie?
+ ~
+ <cs' d'' b''>8 [ <b d'' a''> ]
+ @}
+@}
+@end example
+
+Well, it is not very big, but a truly minimal example is here:
+
+@example
+\version "2.14.1"
+@{
+ % middle tie looks funny here:
+ <c' d'' b''>8. ~ <c' d'' b''>8
+@}
+@end example
+
+Very few tiny examples exceed 10 lines of code -
+quite often 4 lines are enough to demonstrate the problem!
+
+@divEnd
@node Bug reports
@unnumberedsec Bug reports
+
+@divClass{heading-center}
+If you have input that results in a crash or wrong output,
+then that is a bug.
+@divEnd
+
@divClass{column-center-top}
@subheading Step 1: Known bugs
-If you have input that results in a crash or an erroneous output,
-then that is a bug. There is a list of current bugs on our google
-bug tracker,
+We may already know about this bug. Check here:
@example
@uref{http://code.google.com/p/lilypond/issues/list}
@end example
-@warning{Please @strong{DO NOT} add bug reports directly to the
-bug tracker. Once an issue has been added to the tracker, feel
-free to add more information to that report.}
+@warning{Please @strong{DO NOT} add bug reports to the
+bug tracker yourself.}
@divEnd
@divClass{column-left-bottom}
@subheading Step 2: Creating a bug report
-If you have discovered a bug which is not listed, please help us
-by creating a bug report.
+If you have discovered a bug which is not listed,
+please help us by creating a bug report.
-@warning{We only accept bug reports in the form of
-@ref{Tiny examples}. We have very limited resources to deal with
-bug reports, so any non-minimal example will be rejected. Almost
+@warning{We only accept reports in the form of
+@ref{Tiny examples}. We have very limited resources,
+so any non-minimal example will be rejected. Almost
every bug can be demonstrated in four notes or less!}
Here is an example of a good bug report:
@example
-%% the octavation command doesn't
-%% change the output at all!
-
-\version "2.10.0"
-\relative c''' @{
- c1
- #(set-octavation 1)
- c1
+% Accidentals should be printed for only
+% the first note in a tie, but this version
+% prints flats on both notes.
+\version "2.10.1"
+
+\relative c'' @{
+ bes1 ~
+ bes1
@}
@end example
@end itemize
@divEnd
+@divEnd
+
+@divClass{column-center-bottom}
+@subheading Step 4: Wait for a response
-Once your bug has been sent to the list, our Bug Squad will
-examine the report. Please allow up to 24 hours, as we have a
-limited number of volunteers for this task. They may ask you for
-more information, or may add the report to the tracker and let you
-know what the issue number is.
+Once your bug report has been sent to the list, our Bug Squad will
+examine it; they may ask you for more information. You will be notified
+when the report will be added to the bug tracker. Please allow up to 4 days,
+as we have a limited number of volunteers for this task.
-You may mark the bug so that you automatically receive emails when
+Once a bug has been added to the tracker, you can comment it to add
+more information about it.
+You may also mark the bug so that you automatically receive emails when
any activity on the bug occurs. This requires you have a google
account.
@divEnd
+@divClass{column-center-bottom}
+@subheading Optional help: show the desired behavior
+
+Once an issue has been added to the tracker, it can be very
+helpful if we can see the desired output. Feel free to add input
+code and/or images (possibly created with other tools) which
+demonstrate what you think it should look like!
+
+@divEnd
+
+
@node Help us
@unnumberedsec Help us
@divClass{column-left-top}
@divClass{keep-bullets}
-@helpusTasks
+@helpusSimple
@divEnd
@divEnd
@divClass{column-right-top}
-@helpusProjects
+@helpusAdvanced
@divEnd
+@node Sponsoring
+@unnumberedsec Sponsoring
+
+@divClass{keep-bullets}
+@divClass{column-left-top}
+@subheading Bounties
+
+In the past,
+
+@itemize
+@item some users have paid for new features
+@item some developers have added new features for hire
+@end itemize
+
+The LilyPond project does not organize such efforts; we neither
+endorse nor discourage such agreements. Any contracts between
+private individuals is the business of those individuals, not
+ours.
+
+@divEnd
+
+@divClass{column-right-top}
+@subheading Guidelines
+
+Any user wanting to offer money in exchange for work should bear
+in mind the following points:
+
+@itemize
+@item
+LilyPond developers may advertise their services on the lilypond
+email lists from time to time.
+
+@item
+Any agreements between private individuals should include the
+normal precautions when conducting business: who pays, how much do
+they pay, with what method of payment, and upon what set of
+conditions. We suggest that any ambiguity or uncertainty in these
+questions should be resolved before any work begins.
+
+@end itemize
+
+@divEnd
+
+@divClass{column-center-bottom}
+@subheading Interested developers
+
+Here is a list of people who have expressed an interest in
+bounties. Note that the amount of work done by individuals varies
+quite a bit throughout the years. We do not guarantee that this
+list is up-to-date, nor do we guarantee that the people listed
+here have any ability. The only criteria is "XYZ asked to be
+listed on this page".
+
+Looking at the git history is a good way to determine who the most
+active and experienced developers are. Statistics up to version
+@versionDevel{}:
+
+@multitable @columnfractions .3 .3 .3
+@item @uref{http://lilypond.org/~graham/gitstats-all/, overall history}
+@tab @uref{http://lilypond.org/~graham/gitstats-1year/, past year}
+@tab @uref{http://lilypond.org/~graham/gitstats-3months/, past three months}
+@end multitable
+
+Interested developers:
+@table @asis
+@item @email{dak@@gnu.org, David Kastrup}
+Donations are required to let me continue my current fulltime work on
+LilyPond. I focus on user and programmer interface design, coherence,
+implementation, simplification, documentation, and debugging.
+
+@c Format
+@c @item @email{name@@adress.domain, Name}
+@c area of interest (256 chars max)
+
+@end table
+
+@divEnd
+@divEnd
+
+
@node Development
@unnumberedsec Development
@subsubheading All versions
@itemize
-@item @uref{http://lilypond.org/test, Archive of regression tests}:
-Comparisons between versions.
+@item @uref{http://lilypond.org/test, Comparisons between regression tests}
+
+@item @uref{http://lilypond.org/download/binaries/test-output/,
+Archive of all regression tests}
+
@end itemize
@divEnd