1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
|
[From a posting in rec.music.classical.guitar]
I started coding on Lilypond because I am fascinated by music and by
typography. I have never used any egngraving software, and do not
feel the need to investigate other programs, for the simple reason
that I have no need of typesetting music. In fact, I almost never use
Lilypond. I believe that the largest thing I ever entered was Bach's
WTK-I fugue 2, two pages of piano music. I entered it about 1.5 years
ago.
I am fascinated by this complicated problem, typesetting music with a
computer. And that is why I started writing Lilypond: purely for the
hack value, for the fun of coding. To me, music notation is like a
giant puzzle. I have been coding on Lilypond and studying music
notation in my spare time for the past three years. Since this is my
hobby, strictly spoken I have no obligations concerning Lily, neither
moral, nor legal. Of course, I am open to pleas and requests and
often do respond to them, but I have the choice to ignore them, and
occasionally I do.
Lilypond tries to typeset music *automatically*. We (*) try to put as
much of our knowledge of music typography into the program as
possible, and have as little typographical information in the input as
possible. Basically, you ought to be able to produce nicely printed
scores with Lilypond without knowing anything about engraving.
footnote (*): We = me and Jan Nieuwenhuizen, who wrote about
30% of the code, and provided most of the examples.)
A second important issue is that Lilypond is free. Not only in the
sense that you can download Lilypond at no charge, but it is also free
as in "free speech". User are free to modify the program to suit
their needs, and redistribute or sell the program. Moreover, since
the program can be downloaded at no cost, I don't gain anything if it
gets more users. And here I mean "use" as opposed to "use and
enhance" or "use and give helpful comments".
We have not made a program for professionals, and as a result, hackers
have begun to use it. Some of them have sent me modifications that
improve the software. This is good for us, because it helps us solve
our puzzle more quickly. We would have made the program useful for
professionals like you, presumably they would start using it, be glad
they didn't have to pay, and ignore me. That would not help me solve
my puzzle; I don't gain anything.
The system has reached a point that it is useful for quite a lot of
people (we get about 200 downloads per month from the main FTP site),
and a lot of my users have thanked me for rescuing them from tedious
typesetting work using Finale, Encore and what-have-you-more. I have
a user in Russia who tries make a living by typesetting a 260-page
book on harmonic-theory using Lilypond. I have a user that can
typeset his own 45 page orchestral score. Laymen have called our
printout of the Bach Cello Suite 2 of "professional quality".
This program is now useful to more people than a program solely aimed
at professional use.
Obviously, we're not finished yet, since the program still contains
quite a lot bugs. We know the examples on the website contain lots of
errors. Tweaking the input to fix up and hide the errors would cost
us a lot of time. Time that is better spent improving the program
itself. So, we don't hide the errors.
Most of the errors that are shown on the website are not caused by our
lack of knowledge, but rather by a lack of time and the sheer
complexity of this big puzzle we're solving.
In the end, we also want a system that is fully tweakable, so you can
also produce professional quality typesetting. But being
straightforward to use for non-professionals is more important now.
Finally, I would like to stress that my goals while programming on
LilyPond are separate from my beliefs of what should be done with the
program. I can not control what the program is used for, nor do I want
to. People can typeset lullabies for their baby daughters or racist
warsongs to help fascist leaders.
A fortiori, I can not control what copyright users place on their
input and output. If you want to do commercial music editing (with
LilyPond) you can publish scores on paper and keep the input and
output to your self. You can publish the score online, and keep the
input to yourself. You can put the input online as well, while
forbidding modifications. You can publish the input and allow
modifications.
This is all up to the user of the software, not to me.
Han-Wen Nienhuys,
April 11, 1999
|