we now have "lilypond" organization on GitHub

classic Classic list List threaded Threaded
96 messages Options
12345
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

we now have "lilypond" organization on GitHub

Janek Warchoł
lol of the month!  Some time ago I've discovered a user named
'lilypond' on GitHub, who seemed to be pretty inactive.  I thought
that it would be nice to have a github organization with this name,
and i was going to contact him... but it turned out that the account
belonged to me! LOL!

Anyway, I've transformed that account into an organization, so we have
a sort-of-official presence on GitHub.  As of now, the owners are:
- Han-Wen
- Jan
- Graham
- Urs
- me
- Julien Rioux

We'll add more users and/or owners later.

Julien suggested to put all lilypond-related repositories there (e.g.
gub, lilypond-extra, ...), so that we'll have everything at one place,
not tied to a personal user account.  I think this is a good idea;
i've already created a repository with lilypond sources there (note
that i do *not* intend to replace our official savannah repository
with a github one - i've just made an "official github fork";
hopefully this will encourage github users to contribute to lilypond
(we'll think about administrative policies later, please don't start a
discussion about reviewing patches from github now)).

Together with Julien we think that it would be good if the "lilypond"
organization had the "original" repositories, and the other people had
forks. (i.e. instead of lilypond forking "lilypond-extra" from Graham,
we would set up the repository on its own, and then Graham would
recreate his "lilypond-extra" as a fork of the "official" one.)  This
is easy to do.  Do you agree?

best,
Janek

_______________________________________________
lilypond-devel mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-devel
dak
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: we now have "lilypond" organization on GitHub

dak
Janek Warchoł <[hidden email]> writes:

> lol of the month!  Some time ago I've discovered a user named
> 'lilypond' on GitHub, who seemed to be pretty inactive.  I thought
> that it would be nice to have a github organization with this name,
> and i was going to contact him... but it turned out that the account
> belonged to me! LOL!

What's wrong with Savannah?

--
David Kastrup

_______________________________________________
lilypond-devel mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: we now have "lilypond" organization on GitHub

Janek Warchoł
2013/9/16 David Kastrup <[hidden email]>:
> Janek Warchoł <[hidden email]> writes:
>
>> lol of the month!  Some time ago I've discovered a user named
>> 'lilypond' on GitHub, who seemed to be pretty inactive.  I thought
>> that it would be nice to have a github organization with this name,
>> and i was going to contact him... but it turned out that the account
>> belonged to me! LOL!
>
> What's wrong with Savannah?

Nothing.
Why gub, lilypond-extra was hosted on GitHub?

Janek

_______________________________________________
lilypond-devel mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: we now have "lilypond" organization on GitHub

Janek Warchoł
2013/9/16 Janek Warchoł <[hidden email]>:

> 2013/9/16 David Kastrup <[hidden email]>:
>> Janek Warchoł <[hidden email]> writes:
>>
>>> lol of the month!  Some time ago I've discovered a user named
>>> 'lilypond' on GitHub, who seemed to be pretty inactive.  I thought
>>> that it would be nice to have a github organization with this name,
>>> and i was going to contact him... but it turned out that the account
>>> belonged to me! LOL!
>>
>> What's wrong with Savannah?
>
> Nothing.

What's wrong with GitHub, anyway?

_______________________________________________
lilypond-devel mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-devel
dak
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: we now have "lilypond" organization on GitHub

dak
Janek Warchoł <[hidden email]> writes:

> 2013/9/16 Janek Warchoł <[hidden email]>:
>> 2013/9/16 David Kastrup <[hidden email]>:
>>> Janek Warchoł <[hidden email]> writes:
>>>
>>>> lol of the month!  Some time ago I've discovered a user named
>>>> 'lilypond' on GitHub, who seemed to be pretty inactive.  I thought
>>>> that it would be nice to have a github organization with this name,
>>>> and i was going to contact him... but it turned out that the account
>>>> belonged to me! LOL!
>>>
>>> What's wrong with Savannah?
>>
>> Nothing.
>
> What's wrong with GitHub, anyway?

It requires separate accounts and credentials (much more likely to be a
target for attacks), has its own "terms of service", may choose to
discontinue projects based on commercial criteria, can cause tool
lock-in and so on, relies on its own proprietary software.

We just experienced how much fun it is to rely on things like the Google
API to Rietveld: they decide to shut it down and that's it: we are far
too small to be a concern for them.  With Savannah, we have system
administrators sympathetic to our cause rather than their business
model.  And the LilyPond project is quite beyond a "don't care" size for
them.

I'm not sure what the original motivation for setting up lilypond-extra
and gub on Github might have been, but given the respective age of the
projects, it may just have been that Savannah did not offer Git at that
time (LilyPond itself has apparently been moved to Git from CVS at one
point of time).  Gub also has less of a LilyPond-only nature and thus a
different scope of potential users and contributors.

--
David Kastrup

_______________________________________________
lilypond-devel mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: we now have "lilypond" organization on GitHub

Graham Percival-3
On Mon, Sep 16, 2013 at 10:49:42AM +0200, David Kastrup wrote:
> > What's wrong with GitHub, anyway?
>
> It requires separate accounts and credentials (much more likely to be a
> target for attacks), has its own "terms of service", may choose to
> discontinue projects based on commercial criteria, can cause tool
> lock-in and so on, relies on its own proprietary software.

All the above is true, but github also provides a nicer way for
developers to interact with git, by at least one order of
magnitude.  I'd actually give github one order of magnitude for
their overall website, plus an additional order of magnitude for
their "git help" doc pages, which are absolutely fantastic.

The concern about terms of service and discontinuing services are
valid ones, however unlike google, github is *all* about the
developers.  I can't see them closing down their free open-source
stuff, given how much bad will that would generate.  And even if
they did, somebody involved in lilypond would likely have a
commercial account with them and could host lilypond code --
again, that's not an option with google.

> I'm not sure what the original motivation for setting up lilypond-extra
> and gub on Github might have been,

Gub was originally hosted on lilypond.org IIRC, but Jan put it on
github.  When I needed a quick repo for lilypond-extra, it was far
easier to click around on github rather than requesting one from
savannah.  At the time, savannah was already offering git.


I heartily endorse GUB moving back to Jan's account or to a shared
lilypond account, and doubly so for all the other git repositories
(lilypond-extra, lilypad, whatever else).  One nice thing about
git (as opposed to issue reports) is that it's extremely portable.
Once those repositories are forked, I'll remove my version of them
so that there's no confusion.

Cheers,
- Graham

_______________________________________________
lilypond-devel mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: we now have "lilypond" organization on GitHub

Janek Warchoł
In reply to this post by dak
Hi,

in the meantime i saw Graham's email, so just a short reply:

2013/9/16 David Kastrup <[hidden email]>:
> [github] can cause tool lock-in and so on,

every tool can.  In this case, i think that the degree of lock-in is
small and probably negligible (as Graham said, git repositories are
portable).

Note that i'm *not* proposing to move LilyPond development to Github.
I just want to organize stuff that's already there, and give LilyPond
wide exposure by hosting a "semi-official" repository clone there.

> With Savannah, we have system
> administrators sympathetic to our cause rather than their business
> model.  And the LilyPond project is quite beyond a "don't care" size for
> them.

That's good, and i'm not saying that we should abandon Savannah!

I want LilyPond to be present on Github because it's a very widely
known platform (according to Wikipedia, it's two orders of magnitude
more popular than Savannah:
http://en.wikipedia.org/wiki/Comparison_of_open-source_software_hosting_facilities#Popularity).
 Together with ease of use mentioned by Graham this can result in more
contributors joining Lily development.

best,
Janek

_______________________________________________
lilypond-devel mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: we now have "lilypond" organization on GitHub

Janek Warchoł
In reply to this post by Graham Percival-3
2013/9/16 Graham Percival <[hidden email]>:

> On Mon, Sep 16, 2013 at 10:49:42AM +0200, David Kastrup wrote:
>> > What's wrong with GitHub, anyway?
>>
>> It requires separate accounts and credentials (much more likely to be a
>> target for attacks), has its own "terms of service", may choose to
>> discontinue projects based on commercial criteria, can cause tool
>> lock-in and so on, relies on its own proprietary software.
>
> All the above is true, but github also provides a nicer way for
> developers to interact with git, by at least one order of
> magnitude.  I'd actually give github one order of magnitude for
> their overall website, plus an additional order of magnitude for
> their "git help" doc pages, which are absolutely fantastic.

+100 for everything, Graham is emanating pure wisdom in this email ;-)

> I heartily endorse GUB moving back to Jan's account or to a shared
> lilypond account, and doubly so for all the other git repositories
> (lilypond-extra, lilypad, whatever else).  One nice thing about
> git (as opposed to issue reports) is that it's extremely portable.
> Once those repositories are forked, I'll remove my version of them
> so that there's no confusion.

Actually, it would be probably best to "transfer ownership" (you can
find this in repository settings), so that the repo in the lilypond's
account will not be displayed as "forked from xxx", but an "original"
one.

best,
Janek

_______________________________________________
lilypond-devel mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-devel
dak
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: we now have "lilypond" organization on GitHub

dak
In reply to this post by Graham Percival-3
Graham Percival <[hidden email]> writes:

> On Mon, Sep 16, 2013 at 10:49:42AM +0200, David Kastrup wrote:
>> > What's wrong with GitHub, anyway?
>>
>> It requires separate accounts and credentials (much more likely to be a
>> target for attacks), has its own "terms of service", may choose to
>> discontinue projects based on commercial criteria, can cause tool
>> lock-in and so on, relies on its own proprietary software.
>
> All the above is true, but github also provides a nicer way for
> developers to interact with git, by at least one order of
> magnitude.

So the question is what we should be telling the Savannah operators to
make working on GNU projects using Git more feasible.

> I'd actually give github one order of magnitude for their overall
> website, plus an additional order of magnitude for their "git help"
> doc pages, which are absolutely fantastic.

Under which license?  All I read on the web page regarding the docs is
"© 2013 GitHub Inc. All rights reserved.".  Again, that means that it
can go away at any point of time, there is no community centered around
it, and quoting their pages anywhere might get you into trouble.

The terms of service are such that they can change them anytime, just
put up some notice on their website wherever they want, and any
continued use of their service indicates your agreement with it:

    If GitHub makes material changes to these Terms, we will notify you
    by email or by posting a notice on our site before the changes are
    effective. Any new features that augment or enhance the current
    Service, including the release of new tools and resources, shall be
    subject to the Terms of Service. Continued use of the Service after
    any such changes shall constitute your consent to such changes. You
    can review the most current version of the Terms of Service at any
    time at: http://github.com/site/terms

This kind of "we can change the terms of service at any point of time
without you having a reasonable chance of noticing, and you'll be bound
to the changed terms automagically" shenanigan is the kind of stuff
giving Facebook a bad rap.  Notice that they reserve the right to make
"non-material" changes to their usage terms without even putting up a
notice, and if you continue using the service, you agree to be bound to
the changed terms.

> The concern about terms of service and discontinuing services are
> valid ones, however unlike google, github is *all* about the
> developers.  I can't see them closing down their free open-source
> stuff, given how much bad will that would generate.

The only relevant question for their business is how much bad will it
would generate with _paying_ customers.

The whole genesis of Git itself is a story about how "free" proprietary
services can come to bite you in your behind at the least convenient
moment: Linux was developed using BitKeeper, and BitKeeper's owner
decided to lock Linux out when someone developed a free client for
accessing the repository that he did not like.

So Torvalds had to write his own version control system in a hurry, and
not everybody has a Torvalds at his disposal.

--
David Kastrup

_______________________________________________
lilypond-devel mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-devel
dak
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: we now have "lilypond" organization on GitHub

dak
In reply to this post by Janek Warchoł
Janek Warchoł <[hidden email]> writes:

> in the meantime i saw Graham's email, so just a short reply:
>
> 2013/9/16 David Kastrup <[hidden email]>:
>> [github] can cause tool lock-in and so on,
>
> every tool can.  In this case, i think that the degree of lock-in is
> small and probably negligible (as Graham said, git repositories are
> portable).
>
> Note that i'm *not* proposing to move LilyPond development to Github.
> I just want to organize stuff that's already there, and give LilyPond
> wide exposure by hosting a "semi-official" repository clone there.
>
>> With Savannah, we have system
>> administrators sympathetic to our cause rather than their business
>> model.  And the LilyPond project is quite beyond a "don't care" size for
>> them.
>
> That's good, and i'm not saying that we should abandon Savannah!
>
> I want LilyPond to be present on Github because it's a very widely
> known platform

What for?  If people want to fork LilyPond, why should we roll out the
red carpet for them?  They are free to do it on their own.

> (according to Wikipedia, it's two orders of magnitude more popular
> than Savannah:
> http://en.wikipedia.org/wiki/Comparison_of_open-source_software_hosting_facilities#Popularity).

"popular" meaning used.  Not much of a surprise here: Savannah is not a
free-for-all offering.  You have to actually apply, and you have to meet
criteria.  More so if we are talking about a GNU project, of course, but
that's not a condition for hosting.

Savannah is not a mainstream hoster.  It's a hosting service aligned
with the GNU project.

> Together with ease of use mentioned by Graham this can result in more
> contributors joining Lily development.

You mean, more non-contributors forking LilyPond Development.  It is
already easy to clone your own Git repository from Savannah.  Anybody
can set up a clone of LilyPond anywhere, including on GitHub.

--
David Kastrup

_______________________________________________
lilypond-devel mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: we now have "lilypond" organization on GitHub

Urs Liska
In reply to this post by dak




David Kastrup <[hidden email]> schrieb:

>Graham Percival <[hidden email]> writes:
>
>> On Mon, Sep 16, 2013 at 10:49:42AM +0200, David Kastrup wrote:
>>> > What's wrong with GitHub, anyway?
>>>
>>> It requires separate accounts and credentials (much more likely to
>be a
>>> target for attacks), has its own "terms of service", may choose to
>>> discontinue projects based on commercial criteria, can cause tool
>>> lock-in and so on, relies on its own proprietary software.
>>
>> All the above is true, but github also provides a nicer way for
>> developers to interact with git, by at least one order of
>> magnitude.
>
>So the question is what we should be telling the Savannah operators to
>make working on GNU projects using Git more feasible.
>

I think one big step would be to give non-members (such as e.g. me) the possibility to actually push commits in a form comparable to Github's pull requests. That is I would like to be able to make modifications and push them to a fork and ask for them to be reviewed and included directly from within the repostory's web interface.
An alternative way to encourage contribution would be some more straightforward way to get commits from my local LilyPond clone into the official review process.

Urs


_______________________________________________
lilypond-devel mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: we now have "lilypond" organization on GitHub

Janek Warchoł
In reply to this post by dak
2013/9/16 David Kastrup <[hidden email]>:
> [a rant about GitHub being proprietary etc.]

Well, that's true.
I wish github was Free, but see below.

> The whole genesis of Git itself is a story about how "free" proprietary
> services can come to bite you in your behind at the least convenient
> moment: Linux was developed using BitKeeper, and BitKeeper's owner
> decided to lock Linux out when someone developed a free client for
> accessing the repository that he did not like.
>
> So Torvalds had to write his own version control system in a hurry, and
> not everybody has a Torvalds at his disposal.

Speaking of Torvalds and Git genesis, in a talk about Git he said this:

Quoted from https://git.wiki.kernel.org/index.php/LinusTalk200705Transcript:

> I needed a replacement for BitKeeper. The reason for that was
> BitKeeper is a commercial product, but BitMover and Larry McVoy
> allowed it to be used freely for open source projects, as some of
> you may know, the only restriction was that you were not supposed
> to reverse engineer it and you were not supposed to try to create
> a competing product. And I was happy with that, because quite
> frankly as far as I am concerned, I do open source because I
> think it is the only right way to do software, but at the same
> time I would use the best tool for the job, and quite frankly
> BitKeeper was it.

I agree with him: use the best available tool for the job.  It would
be great if the best tool was Free Software, but if it's not, move on.
 If i had infinite time supply, i would promptly start writing my own
Free Software "replacement" (or contribute to Savannah), but i don't
have the resources.

In my opinion Github is the best tool for the job, and i'm going to
use it.  I'm not forcing anyone to use it, and in my opinion using
Github is not creating a serious vendor lock-in nor any strong
dependance on non-free software; we can opt-out anytime we want.
It's not like storing your data in a proprietary format which causes
lots of trouble when you want to change your tools.

> Graham Percival <[hidden email]> writes:
>> On Mon, Sep 16, 2013 at 10:49:42AM +0200, David Kastrup wrote:
>>> > What's wrong with GitHub, anyway?
>>>
>>> It requires separate accounts and credentials (much more likely to be a
>>> target for attacks), has its own "terms of service", may choose to
>>> discontinue projects based on commercial criteria, can cause tool
>>> lock-in and so on, relies on its own proprietary software.
>>
>> All the above is true, but github also provides a nicer way for
>> developers to interact with git, by at least one order of
>> magnitude.
>
> So the question is what we should be telling the Savannah operators to
> make working on GNU projects using Git more feasible.

Here you go:
A web interface with online editor, allowing to create commits from a
web browser, on any branch (as well as creating branches), integrated
with pull requests and automatic forking (so that when someone without
write access tries to modify a file, Savannah automatically forks the
repository for him and when he's done making the change, a pull
request is sent to the original repository).  Also, being able to post
comments on commits, and integration of pull requests with code
review.  And the ability to update a pull request with new commits.

As far as i know Savannah doesn't have these features.  When it will
have, i'll be happy to switch, but i don't expect it will happen today
or tomorrow, so i'm going to use Github for now.


2013/9/16 David Kastrup <[hidden email]>:
> Janek Warchoł <[hidden email]> writes:
>> Together with ease of use mentioned by Graham this can result in more
>> contributors joining Lily development.
>
> You mean, more non-contributors forking LilyPond Development.  It is
> already easy to clone your own Git repository from Savannah.  Anybody
> can set up a clone of LilyPond anywhere, including on GitHub.
> [....] If people want to fork LilyPond, why should we roll out the
> red carpet for them?  They are free to do it on their own.

It's easy for you.  It's easy for me, after being a Lilypond developer
for over 2 years.
It's not easy for everyone.

Janek

_______________________________________________
lilypond-devel mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-devel
dak
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: we now have "lilypond" organization on GitHub

dak
Janek Warchoł <[hidden email]> writes:

> 2013/9/16 David Kastrup <[hidden email]>:
>> [a rant about GitHub being proprietary etc.]
>
> Well, that's true.
> I wish github was Free, but see below.
>
>> The whole genesis of Git itself is a story about how "free" proprietary
>> services can come to bite you in your behind at the least convenient
>> moment: Linux was developed using BitKeeper, and BitKeeper's owner
>> decided to lock Linux out when someone developed a free client for
>> accessing the repository that he did not like.
>>
>> So Torvalds had to write his own version control system in a hurry, and
>> not everybody has a Torvalds at his disposal.
>
> Speaking of Torvalds and Git genesis, in a talk about Git he said this:
>
> Quoted from https://git.wiki.kernel.org/index.php/LinusTalk200705Transcript:
>> I needed a replacement for BitKeeper. The reason for that was
>> BitKeeper is a commercial product, but BitMover and Larry McVoy
>> allowed it to be used freely for open source projects, as some of
>> you may know, the only restriction was that you were not supposed
>> to reverse engineer it and you were not supposed to try to create
>> a competing product. And I was happy with that, because quite
>> frankly as far as I am concerned, I do open source because I
>> think it is the only right way to do software, but at the same
>> time I would use the best tool for the job, and quite frankly
>> BitKeeper was it.
>
> I agree with him: use the best available tool for the job.

And yet he wrote Linux instead of using the best available tool for the
job: he already had a copy of Minix, interactive UNIX was quite
affordable, and other cheap versions came around.  i386BSD (or whatever
it was called) became even freely available soon after he started Linux,
and it was at that time quite clearly in a better state than Linux.

> It would be great if the best tool was Free Software, but if it's not,
> move on.

That's not what Free Software is about.  And it is most definitely _not_
what the GNU project is about of which LilyPond is part.

You are, of course, free to use proprietary technology to any degree you
personally like, but your personal indifference towards Free Software is
nothing you are in a position to prescribe for GNU LilyPond.  As a GNU
project, we have agreed to follow the guidelines for maintaining a GNU
project, in particular

<URL:https://www.gnu.org/prep/maintain/maintain.html#Ethical-and-Philosophical-Consideration>

This states, among others:

    Please don’t host discussions about your package in a service that
    requires nonfree software. For instance, Google+ “communities”
    require running a nonfree JavaScript program to post a message, so
    they can’t be used in the Free World. To host discussions there
    would be excluding people who live by free software principles.

    Of course, you can’t order people not to use such services to talk
    with each other. What you can do is not legitimize them, and use
    your influence to lead people away from them. For instance, where
    you say where to have discussions related to the program, don’t list
    such a place.

This will hold to a much larger degree to actually hosting repositories.

> In my opinion Github is the best tool for the job, and i'm going to
> use it.  I'm not forcing anyone to use it,

You are essentially currently trying to migrate work on the LSR there:

    From: Janek Warchoł <[hidden email]>
    Subject: Re: Problem with hemiola notation
    To: Thomas Morley <[hidden email]>
    Cc: David Kastrup <[hidden email]>, lilypond-user <[hidden email]>
    Date: Mon, 16 Sep 2013 10:59:10 +0200 (1 day, 31 minutes, 26 seconds ago)

    Hi Harm,

    2013/9/16 Thomas Morley <[hidden email]>:
    > Hi again,
    >
    > I now come up with a (hopefully) improved version.
    > It is a function which takes a dotted(!) note as argument replacing it
    > with the main note and a dot (instead of a tied note)

    Looks nice!

    > \version "2.16.2"
    > % Does not work with 2.14.2 !
    > [...]

    If i understand correctly this cannot be added to LSR, so maybe you
    could add it here http://github.com/openlilylib/snippets ? (scroll
    down to see description)

    I believe that it won't take you more that 10-15 minutes to submit the
    snippet even if you're not familiar with GitHub at all (and of course
    the next time will probably be under 2 minutes).

    best,
    Janek


This whole thread is under the title "we now have "lilypond"
organization on GitHub" which means that you are not speaking just for
yourself but are trying to refocus the LilyPond community to GitHub.

And you can't even be interested in discussing how Savannah could be
made to serve our purposes better.

If one does not even permit oneself to _think_ how Free Software could
be made to fill places currently served by proprietary software, Free
Software will go nowhere.  Including LilyPond.

--
David Kastrup

_______________________________________________
lilypond-devel mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-devel
dak
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: we now have "lilypond" organization on GitHub

dak
In reply to this post by Janek Warchoł
Janek Warchoł <[hidden email]> writes:

> 2013/9/16 David Kastrup <[hidden email]>:

>> So the question is what we should be telling the Savannah operators
>> to make working on GNU projects using Git more feasible.
>
> Here you go:
> A web interface with online editor, allowing to create commits from a
> web browser, on any branch (as well as creating branches), integrated
> with pull requests and automatic forking (so that when someone without
> write access tries to modify a file, Savannah automatically forks the
> repository for him and when he's done making the change, a pull
> request is sent to the original repository).  Also, being able to post
> comments on commits, and integration of pull requests with code
> review.  And the ability to update a pull request with new commits.
>
> As far as i know Savannah doesn't have these features.  When it will
> have, i'll be happy to switch, but i don't expect it will happen today
> or tomorrow, so i'm going to use Github for now.

Now basically we have to split these into two different sets of
requirements: Savannah does not provide accounts or services to the
general public; its services will be restricted to actual developers.

But what you list above mostly is _not_ related to participating with
the project but rather with managing one's own repository using a
graphical interface that just happens to be provided as a web service,
in a similar vein to Gmail providing a web interface to handling a mail
account.

Now making people dependent on a central server for an activity better
done locally kind of defeats the point of Git as a distributed version
control system: it means you can't do basic work offline.

Obviously, Github is not interested in promoting workflows bypassing
their central servers, but that does not mean that one can't think about
that oneself.

So the question is: what kind of tools should people have for working on
their own repository, and what kind of tools are needed at the server
side?  Naturally, it would appear to make sense to have some sort of
submission mechanism.

--
David Kastrup

_______________________________________________
lilypond-devel mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: we now have "lilypond" organization on GitHub

Urs Liska
Am 17.09.2013 18:21, schrieb David Kastrup:

> Janek Warchoł<[hidden email]>  writes:
>
>> 2013/9/16 David Kastrup<[hidden email]>:
>>> So the question is what we should be telling the Savannah operators
>>> to make working on GNU projects using Git more feasible.
>> Here you go:
>> A web interface with online editor, allowing to create commits from a
>> web browser, on any branch (as well as creating branches), integrated
>> with pull requests and automatic forking (so that when someone without
>> write access tries to modify a file, Savannah automatically forks the
>> repository for him and when he's done making the change, a pull
>> request is sent to the original repository).  Also, being able to post
>> comments on commits, and integration of pull requests with code
>> review.  And the ability to update a pull request with new commits.
>>
>> As far as i know Savannah doesn't have these features.  When it will
>> have, i'll be happy to switch, but i don't expect it will happen today
>> or tomorrow, so i'm going to use Github for now.
> Now basically we have to split these into two different sets of
> requirements: Savannah does not provide accounts or services to the
> general public; its services will be restricted to actual developers.
>
> But what you list above mostly is _not_ related to participating with
> the project but rather with managing one's own repository using a
> graphical interface that just happens to be provided as a web service,
> in a similar vein to Gmail providing a web interface to handling a mail
> account.

I think that's not quite true.
IIUC Janek lists options that allow people to contribute to LilyPond
without officially applying to be developers.

You are doing code reviews through a web interface already, isn't it?
And this is because that's a quite natural way to communicate, comment
on code etc. You can't do _that_ with plain Git.

> Now making people dependent on a central server for an activity better
> done locally kind of defeats the point of Git as a distributed version
> control system: it means you can't do basic work offline.

That's not what he's talking about at all. Janek is excited about the
possibilities Github's web interface offers so that people _without Git
knowledge_ are able to contribute to a project.
This won't downgrade the role of 'real' developers but will open up the
process for _small_ contributions by volunteers.

For example:
If I find an issue with a translation or have a small documentation
suggestion I currently have the options:
- write to bug-lilypond and hope _someone_ will take care of it
- have LilyPond as a Git clone, apply a change, create a patch, try to
get that patch somewhere where it will be considered - and hope someone
will take care of that.

With a web interface as offered by Github (or Bitbucket, and probably
others too), I could directly edit a file and have it up for review
automatically. My 'pull request' is inserted in the list of issues where
it can be accepted, discussed or rejected.
If I had this opportunity I'm sure I would have submitted dozens or
hundreds of commits by now. As I don't have that opportunity I have in
fact submitted exactly _one_ commit by now, which served as a test and
corrected a single typo, and which wasn't followed by any more.

Now don't tell me I'm too lazy and actually _could_ have done more
because the road isn't blocked to contribute.
But an open source project should do what is possible to 'invite' people
to contribute.

> Obviously, Github is not interested in promoting workflows bypassing
> their central servers,

I don't think that's completely fair, but I don't care enough to go into
it right now.

> but that does not mean that one can't think about
> that oneself.
>
> So the question is: what kind of tools should people have for working on
> their own repository, and what kind of tools are needed at the server
> side?  Naturally, it would appear to make sense to have some sort of
> submission mechanism.

OK, how do I see it, what is my position as a potential contributor?

Anybody interested in any serious contribution can be expected to know
and use Git.
So we assume I have cloned lilypond from Savannah.

Now I can work on it, keep my clone in sync and add branches and commits
to my local clone.
But now when I have done some work that I want to contribute I don't
have any way to get that work into the official repository because I
don't have push access.
What seems natural to me is to get a fork of the official repo to which
I have push access.
When I have pushed my commits to that fork I need some way to tell the
maintainers that there is something and that I ask them to merge that
into the main code base.
That's what pull requests are on Github, and they are so very convenient
because they incorporate review and merging.
But I would also do with a less refined interface. Basically a pull
request is a message like: "I have commits to share. Please add my fork
as a remote, inspect it and possibly merge it into the upstream repo."

Of course this would require some way for anybody to create an account.
And if that's not possible or wanted there should be some other
semi-automatic way of getting code from my clone into upstream.
For example I could imagine some sort of access policy that allows
non-registered authors to push only to a certain class of 'sandbox-like'
branches. Maybe branches could automatically be prefixed with something
like 'external/useremail/' or the like. Once the commits are on the
server one could start reviewing and finally merging them.

But as far as I've understood, code doesn't get into upstream master
that way anyway, there is the Rietveld code review stage in between?
How do commits (from developers) actually end up in master?
Are they a) pushed to some branch, the diff uploaded to Rietveld, and
upon acceptance the branch merged to master?
Or are b) commits uploaded to Rietveld and then applied as patches to
the upstream repository?

For an outsider this process is quite obscure, and probably that's the
point where one could start to improve.
If it works like b) one should simply make the process more transparent
so it's not as adventurous to dive in.
If it works like a) it's as I've said: there should be a way an external
contributor can get commits into the repository.

####

By now I seem to be completely lost ...
But maybe someone can help me out and at that occasion have good ideas
about the issue ...

Best
Urs


_______________________________________________
lilypond-devel mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: we now have "lilypond" organization on GitHub

Jan Nieuwenhuizen
Urs Liska writes:

> You are doing code reviews through a web interface already, isn't it?
> And this is because that's a quite natural way to communicate, comment
> on code etc. You can't do _that_ with plain Git.

To me, this is one the most unnatural and therefore annoying parts of
current development.  I would much rather use git the way it was
designed and used by its designer and many other free software projects,
email patches to this list and review through email.

Jan
--
Jan Nieuwenhuizen <[hidden email]> | GNU LilyPond http://lilypond.org
Freelance IT http://JoyofSource.com | Avatar®  http://AvatarAcademy.nl 

_______________________________________________
lilypond-devel mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-devel
dak
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: we now have "lilypond" organization on GitHub

dak
Jan Nieuwenhuizen <[hidden email]> writes:

> Urs Liska writes:
>
>> You are doing code reviews through a web interface already, isn't it?
>> And this is because that's a quite natural way to communicate, comment
>> on code etc. You can't do _that_ with plain Git.
>
> To me, this is one the most unnatural and therefore annoying parts of
> current development.  I would much rather use git the way it was
> designed and used by its designer and many other free software projects,
> email patches to this list and review through email.

Well, it facilitates looking at stuff in context (though that's fairly
trivial to do by actually applying the patch in a cloned repository, and
in-file-system clones of git repositories are _really_ cheap).

It's pretty lousy for actually incorporating the feedback which, to be
fair, is mostly due to Rietveld not being made for Git.

Comparing the amount of code actually getting reviewed and the amount of
development getting done, the Linux kernel does not seem to suffer all
that badly from working with a patch/mail-centric workflow.

Of course there are some reasons that don't hold for us: Linux uses a
single-gatekeeper model (but a project like Git itself is still pretty
active), and Linux employs a fanned-out hierarchical workflow as opposed
to the flat hierarchy the web interfaces allow.

We definitely need good issue tracking (which we doe via Google code).
In contrast, I'm not so sure we are having a lot of net benefit from the
Rietveld review setup.  It's complex, and it's particularly a turnoff
for actual programmers who want to apply their existing skills.

The one area where I'd consider a web interface a possibly good tradeoff
of matching tools to skills would be translation work: that could/should
be a lot more crowdsourced than it is now.  It turns out that organizing
and tracking incremental translation work requires being able to work
with various scripts and stuff: the translation workflow does not
benefit from web-based tools at all.  As a consequence, we have at most
one translator per language.

--
David Kastrup

_______________________________________________
lilypond-devel mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: we now have "lilypond" organization on GitHub

Urs Liska
Am 18.09.2013 09:46, schrieb David Kastrup:

> Jan Nieuwenhuizen <[hidden email]> writes:
>
>> Urs Liska writes:
>>
>>> You are doing code reviews through a web interface already, isn't it?
>>> And this is because that's a quite natural way to communicate, comment
>>> on code etc. You can't do _that_ with plain Git.
>> To me, this is one the most unnatural and therefore annoying parts of
>> current development.  I would much rather use git the way it was
>> designed and used by its designer and many other free software projects,
>> email patches to this list and review through email.
> Well, it facilitates looking at stuff in context (though that's fairly
> trivial to do by actually applying the patch in a cloned repository, and
> in-file-system clones of git repositories are _really_ cheap).
>
> It's pretty lousy for actually incorporating the feedback which, to be
> fair, is mostly due to Rietveld not being made for Git.

So (as an uninformed shot in the dark) wouldn't it make sense to switch
to a code review tool which _is_ made for Git?
(Equally uninformed:) I just read about Gerrit which "simplifies Git
based project maintainership by permitting any authorized user to submit
changes to the master Git repository, rather than requiring all approved
changes to be merged in by hand by the project maintainer".

> The one area where I'd consider a web interface a possibly good tradeoff
> of matching tools to skills would be translation work: that could/should
> be a lot more crowdsourced than it is now.  It turns out that organizing
> and tracking incremental translation work requires being able to work
> with various scripts and stuff: the translation workflow does not
> benefit from web-based tools at all.  As a consequence, we have at most
> one translator per language.
That's what I said. This kind of work would greatly benefit from
allowing 'anybody' to contribute directly to a repository, with the
'developers' only having to approve or reject the change.

Urs

_______________________________________________
lilypond-devel mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-devel
dak
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: we now have "lilypond" organization on GitHub

dak
Urs Liska <[hidden email]> writes:

> Am 18.09.2013 09:46, schrieb David Kastrup:
>
>> Well, it facilitates looking at stuff in context (though that's fairly
>> trivial to do by actually applying the patch in a cloned repository, and
>> in-file-system clones of git repositories are _really_ cheap).
>>
>> It's pretty lousy for actually incorporating the feedback which, to be
>> fair, is mostly due to Rietveld not being made for Git.
>
> So (as an uninformed shot in the dark) wouldn't it make sense to
> switch to a code review tool which _is_ made for Git?  (Equally
> uninformed:) I just read about Gerrit which "simplifies Git based
> project maintainership by permitting any authorized user to submit
> changes to the master Git repository, rather than requiring all
> approved changes to be merged in by hand by the project maintainer".

The main problem is that we can talk about doing things all day.  But
any change has to be accompanied by people working on it and solving the
related problems.

Of course, a "no-tool" approach is easiest to pull off in that regard:
you declare everything the user/programmer's responsibility and are
done.

As it would seem, Gerrit is a replacement mostly for Rietveld, not for
project management, so it would need to get tied into our existing work
and review flows.  It also needs hosting, so if we are getting serious
about it, we'd have to talk to Savannah or others.

>> The one area where I'd consider a web interface a possibly good
>> tradeoff of matching tools to skills would be translation work: that
>> could/should be a lot more crowdsourced than it is now.  It turns out
>> that organizing and tracking incremental translation work requires
>> being able to work with various scripts and stuff: the translation
>> workflow does not benefit from web-based tools at all.  As a
>> consequence, we have at most one translator per language.

> That's what I said.

No, it isn't.  I said "the _one_ area" while you are trying to sell
web-based interfaces as a panacea.  For by far _most_ of the involved
work areas, web-based interfaces scare more potentially serious
contributors away than otherwise.

Linux is not developed using web interfaces.  Git isn't developed using
web interfaces.  Most _development_ is not done using web interfaces.
When we are talking about maintenance of text rather than development of
code, the balance is different.

> This kind of work would greatly benefit from allowing 'anybody' to
> contribute directly to a repository, with the developers' only having
> to approve or reject the change.

Turns out that our translators work on their own separate mailing list
in a Linux type of development style and "the developers" don't get to
approve or reject any change.  Translation workflows don't use our
review system or issue trackers.

And I don't even think they would benefit from it.  If we take a look at
the few reasonably tightly tracked translations (French and Spanish, I
think), I very much doubt that you'd improve the quality of the work of
the respective translators by forcing a web frontend on them.

And I doubt that a crowd-sourced German (say) translation would lead to
a consistent quality _unless_ several people get fully immersed into it
and again work at a level of thoroughness where web/crowdsourced
interfaces get more in the way than anything else.  Program
documentation is not a Wikipedia-like task.

--
David Kastrup

_______________________________________________
lilypond-devel mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: we now have "lilypond" organization on GitHub

Francisco Vila
In reply to this post by dak

2013/9/18 David Kastrup <[hidden email]>
The one area where I'd consider a web interface a possibly good tradeoff
of matching tools to skills would be translation work: that could/should
be a lot more crowdsourced than it is now.  It turns out that organizing
and tracking incremental translation work requires being able to work
with various scripts and stuff: the translation workflow does not
benefit from web-based tools at all.  As a consequence, we have at most
one translator per language.


I have been using the weblate online translation tool, contributing to the weblate project itself. It is internally based on git. I found it eases work for occasional contributors very much. You receive email notifications every time a string changes.

I don't know what work would had to be done for adapting translations to this system. I could look at it if I find the time.

--
Francisco Vila. Badajoz (Spain)
www.paconet.org , www.csmbadajoz.com

_______________________________________________
lilypond-devel mailing list
[hidden email]
https://lists.gnu.org/mailman/listinfo/lilypond-devel
12345
Loading...