The Artima Developer Community
Sponsored Link

Weblogs Forum
BitBucket/Hg vs. Launchpad/Bzr

2 replies on 1 page. Most recent reply: Dec 30, 2008 4:56 AM by Stefano Tortarolo

Welcome Guest
  Sign In

Go back to the topic listing  Back to Topic List Click to reply to this topic  Reply to this Topic Click to search messages in this forum  Search Forum Click for a threaded view of the topic  Threaded View   
Previous Topic   Next Topic
Flat View: This topic has 2 replies on 1 page
Bruce Eckel

Posts: 875
Nickname: beckel
Registered: Jun, 2003

BitBucket/Hg vs. Launchpad/Bzr (View in Weblogs)
Posted: Nov 13, 2008 12:53 PM
Reply to this message Reply
We recently moved "Python 3 Patterns & Idioms" from Launchpad to BitBucket. Here's why.

First, I want to make it clear that I think Launchpad is great, and especially the code base that it was created for, Ubuntu Linux. The Ubuntu crew gets that Linux needs to be friendly from top to bottom, and they are doing a terrific job.

Our experience with Launchpad was good. They do a lot of things right, and it's hard to say what, if anything, they don't do right. For some reason it was just a little harder than it could be. Also, the web site had a slow response time.

The key shift happened when I decided I wanted to lower the barrier to entry for participating in the project, and a wiki seemed like the right way to do this. If someone wants to contribute but they don't want to learn about Spinx and distributed version control and the mechanisms of the hosting site, they can just put text into a wiki and we will take it and do whatever is necessary.

We looked at third-party wikis (in particular, wikidot seemed very nice), but then someone suggested BitBucket, which has a wiki for each account.

After some brief experimentation, I decided to move the project to BitBucket and I've been much happier with it ever since. But the two sites provide more or less the same services, so it's hard to pin down exactly why one seems to provide a more pleasant experience than the other.

Clearly, the speed of the BitBucket site is a significant issue. It just feels more responsive. But more than that, the design appears cleaner, and the use of it -- including mercurial -- just seems ... smoother, somehow. For example, whenever you upload a package to BitBucket, the latest version is automatically ready for download in compressed format (it does the compression for you) by anyone. This changed the way we organized the project, so that all the elements of interest to the end user show up at the top-level directory, then there's a src directory where all the build stuff goes. When you download the compressed file, you get everything, and you can just look at the book or you can look at the sources and our build system. The result is that it's much easier to think about and -- this is important, I think -- every time I do a push to BitBucket, it becomes the latest everything, so there's no "now we're going to do something special to make a distribution." It's always a distribution. Of course, you don't have to do it this way but I found that the "implicit guidance" given by BitBucket in this direction was very helpful.

I had an observation about Launchpad's "Blueprints" feature: It appears that Launchpad was created with Ubuntu development in mind (I'm sure it was) and so tended to funnel us in the direction of the way Ubuntu development works. Thus, they have "Blueprints," a specific way to add features, while BitBucket has a wiki, which allows you to do anything -- and in our case, was a better solution to the problem.

In general, I think the Ubuntu orientation of Launchpad turned out to feel a bit constraining, whereas BitBucket seems to have thought more about making a platform that is flexible for a larger number of projects.

I also found Mercurial to be more straightforward than Bazaar; again, hard to specify exactly why but it's as if Bazaar overthinks the problem and that adds cognitive load to the learning process. (This was definitely not a double-blind experiment; I had already learned a little about distributed version control from Bazaar, but Mercurial still seems clearer).

Joe Ryan

Posts: 1
Nickname: jryan
Registered: Dec, 2008

Re: BitBucket/Hg vs. Launchpad/Bzr Posted: Dec 26, 2008 8:31 PM
Reply to this message Reply
Hello Bruce

I am a novice programmer kind of hopping between languages like C++ C and Python trying to hone my overall skills. I was wondering if Bzr being implemented in Python has anything to do with the feeling of unresponsiveness. I have noticed in some reading that performance was an issue in Python applications. Although that issue may be due to the implementation and not the language itself. Or is Python more suited for "glue" type scripting etc.


Stefano Tortarolo

Posts: 1
Nickname: astratto
Registered: Dec, 2008

Re: BitBucket/Hg vs. Launchpad/Bzr Posted: Dec 30, 2008 4:56 AM
Reply to this message Reply
just wanted to say that Mercurial is written mainly in Python.

Here's one comparison (google to find others...) between Mercurial and Bazaar.


Flat View: This topic has 2 replies on 1 page
Topic: On Dasher Previous Topic   Next Topic Topic: The New Old

Sponsored Links


Copyright © 1996-2019 Artima, Inc. All Rights Reserved. - Privacy Policy - Terms of Use