Welcome to this twenty-second issue of the LilyPond Report!
Here’s a new Report, full of surprises and exciting news for our community! To be found in this issue is an up-to-date, complete list of all LilyPond mailing lists and forums around the world — and we do mean: complete. Also, for the very first time our special guest today is LilyPond’s co-founder and core developper Jan Nieuwenhuizen, who has been busy these past months — read on to find out what for! As always, you are warmly invited to post comments at the bottom of the page, or even contribute to the LilyPond Report’s next issues, by contacting Valentin or Graham.
(by Valentin Villenave)
What’s not to love with GNU LilyPond? Meaning: is it at all possible, either to mildly appreciate it, or perhaps even to hate the hell out of it?
On our reviews page, I recently stumbled upon Nicolas Sceaux’s statement that he used to have "a love-hate relationship" with LilyPond. Coming from arguably the most skilled LilyPonder in the world, this is somehow surprising.

Thinking about it, however, I soon realized that my own involvement in the LilyPond project could accurately be described as some kind of a bipolar disorder: sometimes I can get very excited, eager to help, eager to please, and nothing seems to go fast enough. However, a contrecoup is always to be expected: at some point, things suddenly seem to go too fast for me to keep up, and I find myself not doing anything for months. Finally, on rare occasions, something gets me frustrated — and then, for a short time that feels like forever, everything is tainted with bitterness and rage.
Getting the Report out (almost) on time, in this regard, is always a challenge. So many exciting things to talk about... or, depending on how I look at it, so many saddening things that I would rather not talk about. This month we’re having plenty of each, and therefore the LilyPond Report is unfortunately not getting any shorter; if you only have one thing to read though, please skip directly to our interview with Jan-, who has some pretty awesome news for all of us!

(by Graham Percival & Valentin Villenave.)
Work continues towards 2.14; the fourth alpha test, 2.13.38, is now online! This release still has one crash and two cases of suspicious spacing, so we cannot recommend it for daily production use. The current stable release is 2.12.3-2.
We have been experiencing several problems with our download mirror, but it seems to be fixed now. In case that happens again, and to alleviate the load of our bandwidth sponsor, it may be a good idea to set up a BitTorrent server/tacker somewhere (on LilyNet?), or to use an existing one (preferably free-software friendly). Does that sound appropriate to you? Would you be interested in downloading/sharing/seeding LilyPond binaries over the network? Please let us know!
(by Xavier Scheuer)
This month, Valentin suggested me to draw up an updated list of LilyPond communities for the LilyPond Report, but I decided to extend it to every LilyPond-related "Useful Addresses". This will also help keeping our contact page up-to-date; please help us complete this list if you know of any addresses that should be included here.
GENERAL, INTERNATIONAL "OFFICIAL" LILYPOND MAILING LISTS (ENGLISH-SPEAKINKG)
User mailing list: lilypond-user_at_gnu.org
Info & subscribe: http://lists.gnu.org/mailman/listin...
Archive: http://lists.gnu.org/archive/html/l...
Administrator: David R. LinnReleases mailing list: info-lilypond_at_gnu.org
Info & subscribe: http://lists.gnu.org/mailman/listin...
Archive: http://lists.gnu.org/archive/html/i...
Administrator: David R. LinnDeveloper mailing list: lilypond-devel_at_gnu.org
Info & subscribe: http://lists.gnu.org/mailman/listin...
Archive: http://lists.gnu.org/archive/html/l...
Administrator: David R. LinnBug mailing list: bug-lilypond_at_gnu.org
Info & subscribe: http://lists.gnu.org/mailman/listin...
Archive: http://lists.gnu.org/archive/html/b...
Administrator: David R. LinnLOCALE, LANGUAGE SPECIFIC MAILING LISTS, FORUMS, GOOGLE GROUPS, ...
DE
Deutsches Lilypond Forum: http://www.lilypondforum.de/
Info & subscribe: http://www.lilypondforum.de/
Archive: http://www.lilypondforum.de/
Administrator: Till PaalaES Lista de usuarios de LilyPond en español: lilypond-es_at_gnu.org
Info & subscribe: http://lists.gnu.org/mailman/listin...
Archive: http://lists.gnu.org/archive/html/l...
Administrator: Francisco VilaFR
LilyPond French Users: lilypond-user-fr_at_gnu.org
Info & subscribe: http://lists.gnu.org/mailman/listin...
Archive: http://lilypond-french-users.129896...
Administrators: John Mandereau, Valentin VillenaveHU
Magyar LilyPond-felhasználók közössége: lilypond-user-hu_at_googlegroups.com
Info & subscribe: http://groups.google.com/group/lily...
Archive: http://groups.google.com/group/lily...
Administrator: Dénes Harmath(?)NL
Nederlandstalig LilyPond forum: http://www.lilypondforum.nl/
Info & subscribe: http://www.lilypondforum.nl/
Archive: http://www.lilypondforum.nl/
Administrator: Wilbert BerendsenPT (BR)
Lilypond-Brasil: lilypond-brasil_at_googlegroups.com
Info & subscribe: http://groups.google.com/group/lily...
Archive: http://groups.google.com/group/lily...
Administrator: Hugo RibeiroUNOFFICIAL LILYNET.NET MAILING LISTS
LilyPond Frogs: frogs_at_lilynet.net
Info & subscribe: http://lists.lilynet.net/frogs/
Archive: http://lists.lilynet.net/frogs/
Administrator: Valentin Villenave, Carl D. SorensenLilyPond’s support for tablatures: tablatures_at_lilynet.net
Info & subscribe: http://lists.lilynet.net/tablatures/
Archive: http://lists.lilynet.net/tablatures/
Administrator: Valentin VillenaveLilyPond translations: translations_at_lilynet.net
Info & subscribe: http://lists.lilynet.net/translations/
Archive: http://lists.lilynet.net/translations/
Administrator: Valentin Villenave, John MandereauLilyPond Midi discussions: midi_at_lilynet.net
Info & subscribe: http://lists.lilynet.net/midi/
Archive: http://lists.lilynet.net/midi/
Administrator: Valentin Villenave, John MandereauLilyPond proposals list: proposals_at_lilynet.net
Info & subscribe: http://lists.lilynet.net/proposals/
Archive: http://lists.lilynet.net/proposals/
Administrators: Carl Sorensen, Graham Percival.The GLISS project has begun!: syntax_at_lilynet.net
Info & subscribe: http://lists.lilynet.net/syntax/
Archive: http://lists.lilynet.net/syntax/
Administrator: Valentin Villenave, Graham Percival[Editor’s note: These last two lists are not active yet; of course the Report will let you know when/if they are.]
VERY (TOO?) UNOFFICIAL, INFORMAL
http://lists.lilynet.net/devel-chat/
Other "secret" mailing lists? ;p
(by Graham Percival).
The Frogs are ordinary LilyPond users who have chosen to get involved in their favorite software’s development. Fixing bugs, implementing new features, documenting the source code: there’s a lot to be done, but most importantly: this is a chance for everyone to learn more about LilyPond, about Free Software, about programming… and to have fun!
All Frog action in the past month has centered around guile 2.0 work. The new major version of this GNU Free-Software Scheme interpreter (and now, compiler!) is expected within weeks, and LilyPond is getting ready to fully support it!
Hopefully once LilyPond 2.14 is out, we might get more new volunteers interested in improving our source code; if you are interested, remember that the word is: join the Frogs!
(by Valentin Villenave)
(by Valentin Villenave)
The LilyPond Report — Greetings Jan! Wow, it is an honor for the Report to meet with you today; for years I guess I’ve just been too intimidated to suggest an interview with either you or Han-Wen...
Jan Nieuwenhuizen - - Hi Valentin! Yeah, I love the Report. Good, great!
TLR — Thanks! Let’s get started then. What exactly is Schikkers List? Never mind — let me quote your README file for you:
README —
Schikkers List is a LilyPond GUI in the prototype phase. I have no idea if this approach could even result in a usable program. [...] The basic is to have LilyPond render only a small bit of the music: the bit that changed. [...] Simple LilyPond files can be entered and saved as .scm or exported as .ly files.
This is targeted at hackers and mainly presented as an invitation for comments and possibly for patches.
JN — That’s right. There are so many bugs/missing features that I’ll only be taking patches for now; at least until v0.1 or so.

TLR — Okay, now that you’ve made this clear, let me ask you the question everyone must be asking themselves by now: what’s with the name ?? I mean, "Schikkers List"? Really?
JN — I know. "Schikkers List" is probably just as incapable of surviving as "Ikebana", but well ![]()
List is the dutch translation of "a guile scheme". It does not mean list[en], that word is lijst (Liste in German). Translating Ikebana into Dutch, you get Bloemschikken where bloem == flower. The person who performs Ikebana would be a Bloemschikker (arranger of flowers).
TLR — ...
JN — Wait, it gets worse: one such schikker/arranger had a guile scheme: only recompute the part that changed to arrange notes, and in contrast to Ikebana who used python, this one uses GUILE Scheme.
TLR — Er. Okay, we’ll let our audience re-read this a couple of times... For the record: I didn’t even know that "guile" was actually a word ![]()

TLR — (*cough*) Back on track. Obviously, the GNOME-Canvas plan has been on the table for some time now; I also can understand why you chose Guile/Scheme over python (since most of LilyPond itself is natively implemented in this language). What else inspired you?
JN — I was inspired first by Frescobaldi: how quick that was, but discouraged by how fully it is entangled with KDE, and it’s still a text editor that will never compete with Emacs.
Then I was inspired by the gummi editor: I wrote a 20-line patch that made some sort of frescobaldi-like gui.
Then I was inspired by how fast and how usable Ikebana was.
TLR — Wait — "usable"??? How come all of us haven’t been using it ever since then?
JN — Well, it wasn’t just like that in 2005: it was neither fast, nor usable. Also, LilyPond has come a long way since 2004...
I want to learn programming in scheme, that seems such a nice language and I’m such a novice. I had to do all that alone because nobody can know about it, as I should be working on my open source consultancy startup company, and anything else is procrastination, which looks real bad.
I also think you should be have some real code before you start to talk vaporware, which is why I had to start alone. But I’m not going to do a project like this on my own, so if others are interested that would really help.

TLR — I’d be happy to help, except for one thing: I’m a KDE guy. There’s no way I’ll *ever* install GNOME on my system. So, I guess this is good-bye...
JN — Not at all! Schikkers List is not gnome dependent, just GTK. I started off using the pangocairo backend, which requires very recent builds of guile-gnome (later than 2.16.1). However, the GNOME canvas was not deprecated after all, so I’m using this as a backend now, which allows running with guile-gnome 2.16.1 (or possibly even 2.16).
TLR — Interesting. Now for the embarrassing part. For almost fifteen years, we’ve seen Han-Wen and you telling people that a GUI was just The Wrong Way, that LilyPond would never have a GUI because it wasn’t meant to in the first place and it would be useless anyway. So I hope you won’t mind me asking: who are you kidding, really? Was all that non-GUI motto just a pile of hypocrite bullshit?
JN — Keep it cool... LilyPond is not conceived, indeed, to be used in a GUI setting. Period.
There are so many good reasons why GUI programs in general, and a GUI for setting text or music specifically, are a bad idea! You get "expert users" and tricks and mouse-click video’s on YouTube etc. Can’t script it anymore.
However. LilyPond was created to free the world of badly typeset music and to help *all* musicians. Of course, we want everyone to enjoy the freedom of Linux and move there. However, this was the mind-shift that caused us to make the Windows/mingw and Apple/darwin ports. We cannot demand that people change their OS for their own good, happiness and health.
TLR — Well, I certainly would, but...
JN — The idea of my ikli interface is to do away with the text editor (there may be a structured text editor one day) because I think that the vast majority of potential users will never /start/ with lilypond if they have to enter text, even if there’s visual feedback.
If the mere fact that LilyPond does not have a very good GUI, will mean that in the end we as musicians are still stuck (again stuck) with badly typeset music because "people /will/ use a GUI even if it handcuffs them", it’s bad for their health and happiness etc., what’s a hacker to do?
TLR — ... Well, you tell me!
JN — We/I have been "waiting" for years to get Eric Sandberg’s work completed and have full-blown music streams in LilyPond. That would be the first step towards the remote possibility of a GUI. This did not happen and I do not foresee it to happen any time soon.
So, Schikkers List is another guile scheme to turn this dependency around. Instead of first waiting for boring, useless work to be done that should enable a gui, just make a gui first and when it grows, we can always decide that music streams are essential, integrate Schikkers List with LilyPond and just finish them.
On the other hand, it could well be that there will never be a v0.0.2 and this is just another silly pipe dream.
TLR — I sure hope not!

JN — If you get to use Schikkers List, you’ll see that, as I said, LilyPond is not conceived for a GUI approach — however, it may just be good enough. I don’t know. The big question here is: who can tell [me] what the very minimal set of requirements is that makes a gui useful, esp. for people who would never use text entry for music, and is there a path from this minimal version to more useful versions for real world music?
TLR — Well, perhaps our readers can help answering that question
However, isn’t there a risk that you may reinventing the wheel here? You do know that Denemo development has been revived for the past couple of years, and produces a nice interface already... Besides, many users appreciate the Frescobaldi/LilyPondTool "code on the left, preview on the right" paradigm; can you seriously believe that anyone will want to use a GUI program that hides the LilyPond code from the user?
JN — Let me be clear. Backed with the right amount of hacking effort, Schikkers List will just totally blow away all the other efforts.
Of course, the lily code will also be available in a separate
window and we’ll have some sort of structure-editor that feels
like a text editor but is very annoying because it has to
make sure you cannot enter invalid lily code
We’ll also have a music-tree view window where you can select/edit
the underlying music structure.
For years to come however, Denemo will be a great GUI. As for Frescobaldi/LilyPondTool, these aim at people who want to write code — those are not real GUIs, are they? People who would benefit from Frescobaldi will probably also use lilypond without this nice preview...
TLR — Well, thank you Jan, and good luck: you’ll need it! Anything we normal people can do to help, other than turning into programmer-demigods and sending you patches? How about suggesting a nice logo for Schikkers List?
JN — A logo. Man, this is a pile of rubbish, get real! Love, peace, thanks.
Many thanks to Jan Nieuwenhuizen for this interview.
(by Valentin Villenave)
Let’s be honest: for a while, this month’s snippet tasted like a conflict of interest. I had written a snippet that — I thought — was just way too cool not to make it as the "Snippet of the month": Colored-background staves.
When browsing the LSR to retrieve my snippet’s URL, however, I stumbled upon this other one — and realized I simply couldn’t compete.
Now, how cool is that? The worst part is, though, that we have no idea who posted this snippet: it doesn’t include a %LSR comment, nor has it been announced on the mailing lists. If you wrote it and happen to read this, please do let us know!
[Update: unsurprisingly, Neil Puttock is actually to thank for this cool snippet. Cheers!]

That concludes the twenty-second issue of The LilyPond Report. Next instalment is expected on December 1st, and will be the last of the year 2010!
Cheers,
Graham Percival & Valentin Villenave