October 28, 2010
On Wed, 27 Oct 2010 23:08:02 +0300
>>>>>> "Vladimir" == <vladimir@thecybershadow.net> wrote:

Vladimir> As you can see, in many places Git is the antithesis to the Vladimir> "Make correct and common things easy, make shooting yourself Vladimir> in the foot hard" principle. However, I don't think this is a Vladimir> reason not to use Git for a public project.

What about 'choice' or maybe we should move to the OS used by majority of people where re-installation is very common troubleshooting procedure? ;)


Sincerely,
Gour

-- 

Gour  | Hlapicina, Croatia  | GPG key: CDBF17CA
----------------------------------------------------------------


October 28, 2010
On Thu, 28 Oct 2010 09:26:32 +0300, Gour <gour@atmarama.net> wrote:

> What about 'choice' or maybe we should move to the OS used by majority
> of people where re-installation is very common troubleshooting
> procedure?

That's a bad analogy. A good analogy is writing software only for Linux, because the major OS is so horrible.

-- 
Best regards,
 Vladimir                            mailto:vladimir@thecybershadow.net
October 28, 2010
On Thu, 28 Oct 2010 10:25:21 +0300, Vladimir Panteleev <vladimir@thecybershadow.net> wrote:

>  A good analogy is writing software only for Linux, because the major OS is so horrible.

For what it's worth, I never had any problems with my Windows install - the only time I reinstalled was when I upgraded to newer versions (and I do that when I upgrade my hardware, incl. HDDs, anyway).

From my experience of troubleshooting others' Windows computers, all the breakages come from badly-written applications (and installers), which overwrite system files or (sometimes forcibly) integrate themselves into every corner of the operating system, causing instability etc. This isn't a problem with Windows - its "problem" is that it's the most popular OS, for which so much bad software is written (not to mention malware).

-- 
Best regards,
 Vladimir                            mailto:vladimir@thecybershadow.net
October 28, 2010
On Wed, 2010-10-27 at 12:02 +0300, Vladimir Panteleev wrote:
> On Mon, 25 Oct 2010 21:42:32 +0300, Russel Winder <russel@russel.org.uk> wrote:
> 
> > On Mon, 2010-10-25 at 10:20 -0700, Bill Baxter wrote:
> >> I'm not a huge fan of Bazaar :-p ,
> >
> > Hummm... May I ask why?
> 
> Could someone please explain to me why is a VCS other than the three big ones (SVN, Git and HG) is worth using for an open-source project such as this?

Because it is good. Because there are four major players in the game, including Bazaar.

> I have never used Bazaar, DARCS and Monotone, and only briefly used HG, and I acknowledge that they may be better than Git in some aspects.

They are, but the problem is that currently there is no scientific and objective data, all views on this are opinion and adherence to either fashion or tribalism.

> However, IMHO, one of the main decisions for a VCS for a public project is its accessibility. SVN is the most popular one, but it's pretty established that SVN isn't anywhere as productive as DVCSes, and obviously it can't be used in a distributed manner.

The only sensible use for Subversion in a FOSS project is not to use it. Bazaar, Mercurial and Git are the VCS tools for FOSS projects.  Why? Because DVCS aligns with the principles of FOSS.  Subversion is all about creating an elite priesthood.

Subversion is fine is a context where the entire developer population
have access and are permanently connected to the Internet and are only
allowed to work when so connected -- i.e. in companies where no working
outside the "boundary fence" is allowed.  But the FOSS community has
outgrown the Subversion model.

> If I'd consider contributing to an open-source project using a VCS I'm unfamiliar with, it's quite likely that I'd get turned off by the hurdle of downloading, installing and learning to use the respective VCS.

It's not the downloading that is the problem so much as the unfamiliar with.

> Russel wrote in another, unrelated thread:
> > Of course using BitBucket or Launchpad may well be more likely to get support as Mercurial and Bazaar are so much more usable that Git.
> 
> I'm sorry, but to me that sounds like a biased personal opinion stated as if it was an objective fact :( I seriously doubt that any project would get more "support" if it used an obscure (albeit possibly better in some ways) DVCS, unless the intended audience for the project's contributors is already familiar with that DVCS. Maybe Bazaar etc. is more popular with EMACS users/hackers?

I'll accept that there is an element of personal opinion -- I believe that Git is over-complicated both in operational model and command line. Bazaar and Mercurial beat Git hand down in my usability.  As noted above no-one to date has objective data so all statements on this are opinion. This includes your view on Git :-)

I wouldn't say Bazaar was more popular with the Emacs developers, there was a huge row about it and there are still rumblings.  However Bazaar is the official VCS for Emacs.

> Also, I think that it's pretty hard to beat the workflow that GitHub facilitates for open-source projects (with one-click forking and pull requests).

For personal individual working GitHub is fine.  However, as far as I know, it has no notion of team.  Launchpad has both the notion of personal and of team.  For uncontrolled FOSS this perhaps doesn't matter, but it makes it a lot easier to actually emulate the high priest elite that many project like to have.

-- 
Russel. ============================================================================= Dr Russel Winder      t: +44 20 7585 2200   voip: sip:russel.winder@ekiga.net 41 Buckmaster Road    m: +44 7770 465 077   xmpp: russel@russel.org.uk London SW11 1EN, UK   w: www.russel.org.uk  skype: russel_winder


October 28, 2010
On Wed, 2010-10-27 at 12:56 +0300, Vladimir Panteleev wrote: [ . . . ]
> It's not really about Git, it's about GitHub:

Actually, it is about your use model of GitHub.

> 1. Repo creation is instant, doesn't need to go through a human approval process, etc. (big turn-off from DSource, SourceForge as I create and work on many small projects)

Any FOSS project allows this, you just want to use a hosting site. Launchpad and BitBucket behave like GitHub in this respect -- I don't know about Gitorious but I suspect it is the same.

> 2. One-click forking - self-explanatory, you get a cheap clone of a project in your own namespace, to which you can push to to instantly publish your changes.

And the difference with others -- except the one-click being replaced by a command line?

> 3. Pull requests - pretty self-explanatory, but integrated with the issue system.

Personal workflow, the model is not special.

> 4. You've probably seen one of GitHub's "network chart"?
> ( e.g.: http://github.com/jquery/jquery/network )
> You can instantly see activity of all of the project's forks on GitHub.
> This allows easily finding nice forks to merge / cherry-pick. If you're
> lazy, you don't even need to send your patches upstream - as long as you
> don't change the license, the project maintainers can cherry-pick from
> your fork as long as you push them to your fork. Personally, I think this
> feature is revolutionary, and quite "hard to beat" compared to the
> oldschool approach of mailing lists etc. ;)
> 
> GitHub has other nice things, such as line-level commit comments, as well as the usual things you'll find in many other open-source project hosters (issues, wiki, HTML project homepage).
> 
> And finally, IMHO a pretty convincing argument is that GitHub is one of the most popular open-source hosting websites. Not having to register and familiarize yourself with a project hosting website lowers the contribution barrier even lower.

I quite like GitHub for when I use Git, but I like Launchpad for when I use Bazaar, or BitBucket for Mercurial -- and of course I host things on my own server, which means Bazaar or Mercurial or sometimes Git.  It more about what the group of activists on a project choose to use, there are no absolutes.

Git and GitHub are not special in any of the above points.  DVCS and hosting is the underlying model and all the above mentioned have the basic model.  Everything else is really just "little things".

-- 
Russel. ============================================================================= Dr Russel Winder      t: +44 20 7585 2200   voip: sip:russel.winder@ekiga.net 41 Buckmaster Road    m: +44 7770 465 077   xmpp: russel@russel.org.uk London SW11 1EN, UK   w: www.russel.org.uk  skype: russel_winder


October 28, 2010
On Wed, 2010-10-27 at 17:25 +0300, Vladimir Panteleev wrote: [ . . . ]
> project where community involvement is important. For example, I think that moving DMD/Phobos/DRuntime from SVN to Bazaar/Monotone/DARCS would be a very bad idea (and I think that GitHub's featureset would fit D's community perfectly).

Moving to any of Bazaar, Mercurial or Git would be a huge step forward for any FOSS project currently using Subversion.  Monotone and Darcs would be a big risk because Bazaar, Mercurial and Git are the main players.

Staying with Subversion acts as a barrier to development effort by anyone other than the Subversion committers.  Even if the bzr-svn, hgsubversion or git-svn plugins are used to bridge from a central Subversion repository, the barriers are just too high to allow for ad hoc contribution.  So if a project wishes to enforce the "us and them" partitioning of the community then fine stay with Subversion.  If the idea is to allow for a widening of the active contributor base then a move to a DVCS is an enabling step.

-- 
Russel. ============================================================================= Dr Russel Winder      t: +44 20 7585 2200   voip: sip:russel.winder@ekiga.net 41 Buckmaster Road    m: +44 7770 465 077   xmpp: russel@russel.org.uk London SW11 1EN, UK   w: www.russel.org.uk  skype: russel_winder


October 28, 2010
"Vladimir Panteleev" <vladimir@thecybershadow.net> wrote in message news:op.vk9y2yhztuzx1w@cybershadow.mshome.net...
> On Thu, 28 Oct 2010 10:25:21 +0300, Vladimir Panteleev <vladimir@thecybershadow.net> wrote:
>
>>  A good analogy is writing software only for Linux, because the major OS
>> is so horrible.
>
> For what it's worth, I never had any problems with my Windows install - the only time I reinstalled was when I upgraded to newer versions (and I do that when I upgrade my hardware, incl. HDDs, anyway).
>
> From my experience of troubleshooting others' Windows computers, all the breakages come from badly-written applications (and installers), which overwrite system files or (sometimes forcibly) integrate themselves into every corner of the operating system, causing instability etc. This isn't a problem with Windows - its "problem" is that it's the most popular OS, for which so much bad software is written (not to mention malware).
>

Don't forget drivers. Half the time it seems like there isn't a single hardware manufacturer that actually knows what they're doing when it comes to writing Windows drivers.


October 28, 2010
On Thu, 28 Oct 2010 11:33:40 +0300, Nick Sabalausky <a@a.a> wrote:

> Don't forget drivers. Half the time it seems like there isn't a single
> hardware manufacturer that actually knows what they're doing when it comes
> to writing Windows drivers.

Good point. I wonder if Linux allowing proprietary/closed-source drivers is a bad or good thing in the long run.

-- 
Best regards,
 Vladimir                            mailto:vladimir@thecybershadow.net
October 28, 2010
On Thu, 28 Oct 2010 08:54:31 +0100
>>>>>> "Russel" == Russel Winder wrote:

Russel> Moving to any of Bazaar, Mercurial or Git would be a huge step Russel> forward for any FOSS project currently using Subversion.

+1

Russel> Monotone and Darcs would be a big risk because Bazaar, Russel> Mercurial and Git are the main players.

I agree...I just mentioned them since I am using them for personal stuff.


Sincerely,
Gour

-- 

Gour  | Hlapicina, Croatia  | GPG key: CDBF17CA
----------------------------------------------------------------


October 28, 2010
On 27/10/2010 22:33, "Jérôme M. Berger" wrote:
> 	Well, Mercurial offers much less opportunities to shoot oneself in
> the foot and is much easier to use. This is especially true if you
> come from another VCS like SVN: you can use the same commands for
> the same results on the local repository and you only need to learn
> a couple of commands for syncing. Git uses different commands for
> everything (this is actually a stated design goal: try to make
> things as different from CVS as possible!)
>
> 	The only true advantage that Git has over Mercurial is the staging
> area, and even that is a two edged sword: IMO it should not be
> enabled by default since it helps people to lose data. And the same
> functionality can be emulated (and superseded) in Mercurial with
> record and mq anyway.

But isn't the staging area similar, if not identical to SVN? I mean, in svn you also have to do a command "svn add" to add new files to the "sandbox". They won't get commit otherwise, right?

(note: im somewhat familiar with SVN and Git, but not with Mercurial)


-- 
Bruno Medeiros - Software Engineer