Articles in the apps category

The "truth" about BK and the kernel

When I say "truth" I have no idea what happened, but Larry just pulling the free version didn't quite seem to fit. There had always been tension but on the whole, there was a sort of equilibrium between the kenrel community and BitKeeper.

So I've been wondering what exactly prompted BitKeeper to pull their free version. It always seemed to be about the non-compete reverse engineering clause and something to do with OSDL, Linus' employer (if a coworker is hacking BK, they can pull your license). I knew of a few names that had caused issues on the list with Larry such as Roman Zippel, Pavel Machek and Andrea Arcangeli (who wrote the openbkweb thing a while back), but nothing that directly seemed to fit. As it turns out, it seems Andrew Tridgell started work for OSDL in January of this year, and it seems he was the straw that broke the camels back. Really, if you put a binary format in front of someone like Andrew Tridgell do you expect him to not pull it apart? Obviously there's more to the story, but I haven't seen anyone talking about it.

I know that git has been said to stand for nothing, but is it possible that it's a snide reference to Australia's favourite hacker and his lack of tact leading to the BitKeeper abortion?

update Newsforge carries an article with quotes from all concerned. If it wasn't Tridge it was going to be someone else eventually; and in the end it seems based on dollars and cents rather than code. No question, BitKeeper was really good, but what non-free software giveth it can taketh away.


Last night I tried to use inkscape to do some graphic design type work. Here's my (point format) review from start to finish

  • It's not 64 bit clean. It doesn't even start on an IA64 box, and it's something to do with glib and quarks and string lists which will take more time to track down than I have, unfortunately. The code is huge; the build directory ended up hitting the 600mb mark. The best I can do at this stage is offer one of the developers a login.
  • Once working on my ibook, I was pleasantly surprised with everything but the colour chooser. There is no eye-dropper tool that I could find, and no way to store a palette of colours either, so I was forced to remembering and typing in RGB colours. If you copy and object and then edit it's colour properties, it defaults back to black. The gradient tool is fairly non-intuitive, giving strange names to stops. This was frustrating. Everything else, however, worked great.
  • The inbuilt bitmap tracing tool was really nice.
  • I was quite impressed with the final output. It looked great on the screen.
  • I needed a PDF. So I exported to to postscript, and it just looked wrong. For a start, the alpha transparency doesn't export to postscript at all, so things that were looking grey on the screen were just black. On one piece of clipart, the export had dropped a few bits leaving white gaps in the picture. It seemed to have rasterised some of the output, especially the stuff I bitmap traced, making it look really dodgey.
  • I imported the SVG into Illustrator, hoping it would save better PDF's. Illustrator also ignored the alpha transparency, but, more worryingly, when constraining the artboard to a particular size in Illustrator the Inkscape output seemed to be about 4cm larger than the (supposedly same) artboard size. I don't know who is right, but I trust Illustrator. I can't be sending wrong sized artwork to a printer, because they will just crop the overflow.

All said, trying to use Inkscape to quickly get artwork into PDF format for printing hasn't really worked all that well for me. I've had to use Illustrator to tweak the final output. With a few UI enhancements (which are happening in current dev versions) and a first-class export to PDF it would put a strong link in the linux-as-a-desktop chain.


weex is an ftp synchronisation tool. It is fantastic. Here's my weexrc

        HostName =
        IgnoreLocalDir = CVS
        DestDir = /public_html/technovelty/
        LoginName = login_name
        Password = password
        SrcDir = /home/ianw/programs/junkcode/blog
        IgnoreRemoteFile = {
        IgnoreLocalFile = {
        IgnoreRemoteDir = {
        IgnoreLocalDir = {

Then I just run

weex blog

and we're updated! In fact I might just do it now ...