BitKeeper - why is it so great?

The announcement about BitMover no longer offers kernel developers to use BitKeeper as their version control tool. Some of the reason have been that Tridgell (The guy behind the excellent product Samba) have tried to reverse engineer the binary protocol used by BitKeeper. So Linus wasn't too happy about this. While others think that Linus should cool it.

Linus doesn't seem to even consider using Subversion. The Subversion team have commented on this issue - explaining why Subversion isn't kernel developers right choice. So the question is - is it the Linux kernel development model that makes BitKeeper so great, or would other projects also benefit from using BitKeeper? Personally I've only used CVS, Subversion (currently using), SourceSafe and ClearCase. My company have bought Accurev, but I haven't been in a project using it.

My experience with ClearCase it that it seems to require a person working full time on ClearCase in order to get it to give the benefits that companies have paid big bucks for. My former employer used ClearCase, but as a developer I never saw the big benefit. We actually struggled stabilizing the ClearCase server. I've also tried ClearCase UCM, but never really liked all the steps involved. Might just be the way Rational have implemented UCM. Could have been interesting to try a different product focusing on the UCM concept.

So are there any Java developers out there that have used BitKeeper? Would non-Linux-kernel developers also benefit from using this product? If so - why?


While waiting for new version of Jython

I had the need for automatically creating tables from comma separated files, and thought of using Jython as the tool. Since the released version of Jython is based on Python 2.1, there are many features in newer versions of Python which are lacking in Jython. The Python module I was going to look at was the csv module, which is handy when working with comma separated files.

A little bit of background. I'm using a 'free' version of DBVisualizer, which is part of BEA WebLogic Platform. I needed to create a local database on a few of the tables from an ERP system and the free version of DBVisualizer only supports exporting a table definition as a comma separated file or HTML. DDL export would have been nice.

Since I got sick yesterday I decided - in boredom - to create a script reading these csv files (why are they called csv when they should have been called csf) and then create the tables in MySQL. I found the csv module, but since this module isn't part of Jython I had to use Python. The script might not be the prettiest thing, but it does the job and the tables are created within a second.

I'm really hoping that Jython gets it momentum up and running. According to the roadmap the first release will be in August and there's an indication that some of the new modules included (such as the csv module) might not be released until November....

Now I probably try looking at DBUnit to populate the database with some data.... I probably could have used Python also here, but there's nothing like trying out a new tool when struggling with a cold.