lilypond-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: maintaining advanced power-user Scheme functions


From: Phil Holmes
Subject: Re: maintaining advanced power-user Scheme functions
Date: Mon, 19 Aug 2013 16:21:26 +0100

2013/8/19 Phil Holmes address@hidden:

This will be my last post on this.


> ----- Original Message ----- From: "Janek Warchol"
> <address@hidden>
>> 2013/8/19 Phil Holmes <address@hidden>:
>> > However, my other opposition to git for this
>> > purpose is that it's intended as a Version Control system, which is
>> > completely unnecessary for the LSR - that's just a simple database of >> > >
>> > text,
>> > with no version control needed.
>>
>> Someone once said "if you have a project and it will take you more
>> than an hour to recreate it from scratch, it should be under version
>> control".
>> It may not be apparent why this is so, but the experience confirms it.
>
> The LSR is not a project, it's a collection of text objects. A simple
> database is the best place for a collection of text objects.

Nonsense. I have a collection of lilypond scores (more than a
hundred) in a git repository and it's working perfectly, and i have
actually used version control features on that collection of scores.
I.e. i did things that would be impossible to do without version
control.
Besides, look at Mutopia (it's a collection of text objects as well -
i mean, the pieces are independent from each other). Or ask power
users such as Nicolas, who has his scores under version control.

What you said would be true if the snippets were so simple that they
never change. But they do change.

Hardly ever. I maintain the current LSR and the changes are so infrequent I often forget to check whether there are any. This is part of the problem with your proposing changes - you admit you don't use the LSR, don't know how it works, don't know how to do simple updates, but you're proposing wholescale change. Please try the current system before trying to make large changes to it.

>> > If you would actually try the LSR, you'll see it's equally quick to >
>> > enter
>> > snippets - each takes a few seconds or a minute at most. All that you >> > >
>> > need
>> > to do is type the snippet (or paste it) and a description - you can't >> > do
>> > _less_ with any other system.
>>
>> Can i do it offline?
>
> You can't update any remote system offline - git or the LSR.

but with git i can do everything that matters offline - add new stuff,
fix stuff, search old versions, etc. Then i just press a button and
it does the rest.
Imagine that i'm working on a big project w/o internet access (because
i'm on holidays) and i create a few snipets. Do you think i'll
remember them when i get back online? Definitely no! I will only
care to add them to the repository when i'm actually working on the
stuff, not a week later.

You could consider a text editor to create the snippets offline, giving them sensible names in a directory you can remember, and pasting them when you're online.

> What you've described there is a set of odd bits of code that are badly
> structured and with no clear idea of what they do ("chaos here" is not > good > documentation practice). Putting them in a git repo would not make them > any > more suitable for our documentation system than putting them in the LSR. > For
> your own use - fine.

What's funny is that this description fits out issue tracker quite
accurately. It's a set of odd bits of code, usually with no clear
idea what they do (i mean, usually we can see that the output is
wrong, but we don't know what actually happens inside - if we knew,
many more bugs would be fixed instantly after submitting). And they
are not structured in any way.
Yet we keep them, because they contain some valuable information and
it's better to have some information rather than none at all.
Moreover, we have a policy to add issues to the tracker quite freely,
i mean - when someone posts something wrong, we don't analyze it
trying to find connections with other issues, but we just throw it in.
It may be marked as duplicate later.

Yet this system seems to work quite well.

Because it's designed to work as a way of remembering odd bits of information, not as a way of documenting how LilyPond works. The LSR is part of the LilyPond documentation system that users can access and read. It must be an accurate set of information and that's how it currently works.

> The LSR is intended to allow non-power users the ability to contribute
> lilypond code to other users and potentially our documentation. As such, > it > performs a useful service. I cannot imagine why you want to go to all > the
> work of reimplmenting something that fundamentally works using completly
> different technology. It would be a massive waste of time.

Well, as for "completely different technology", that's not necessarily
what i propose. Using git as the tool to manage the actual *content*
doesn't have to mean changing thee tools that operate on that content.
Why do i want to do this? Because the current system is limited: we
don't have support for more than one lily version, upgrading is
inconvenient, and there are no convenient ways to add some valuable
stuff there.

Fine. If you want to waste your time, feel free to propose to change a perfectly adequate database for a completely different technology. You will need to start by contacting the maintainer of the LSR, who can be difficult to get hold of. That's the real problem...

--
Phil Holmes



reply via email to

[Prev in Thread] Current Thread [Next in Thread]