Jan 2005

Martin Pool on Revision Control Systems

Coders of the world rejoice, for Martin Pool is building a distributed revision control system:

I am not working directly on Ubuntu, but rather on improving the tools used by open source developers inside and outside of Canonical. The charter is to build a distributed version-control system that open-source hackers will love to use.

Knowing Martin, this will have the usability of Subversion and Darcs, the algorithms of Arch, and the pure leetness of rsync. Beware, other RCS authors: your days are numbered!


Australian Open 2005

I just wanted to make a short comment to say how absolutely awesome the tennis in the Australian Open has been this year. The level of play is fantastic and the competition has been great (a crazy number of five-setters!). I don’t ever remember an Australian Open which has been this good. I only wish I were in Melbourne!


SD card with built-in USB

Mmm, I want one of these (never mind that I already have a 1GB SD card and a tiny 1GB USB flash drive):

SanDisk has today announced a unique SD card which has a hinged portion, flip this over and the card becomes a USB 2.0 Flash Drive. This neat piece of engineering means that you can flip the card out of your camera and straight into your computer without the need for any card readers or cables. Clever. SanDisk expect to be able to produce this new card in capacities of up to 1.0 GB, they will have more detail and initial samples at the upcoming PMA 2005 show.


Windows Calling Conventions

I found an excellent webpage about Win32 calling conventions when I had the pleasure of writing a C++ Apache 2 module. If you’re a UNIX guy who’s learning to deal with anything that involves both C and C++ on Windows, and you’re getting stack dumps which just does not make sense, it could be a calling convention problem. If you don’t think that’s too bad, just wait until you have to write typedefs and use type casts which involve calling conventions! (C’s typedef syntax seriously needs a kick in the nuts.)



If you’re like me and have about 100 files sitting in your Safari downloads folder, have a look at DownloadComment:

When you download things in Safari, DownloadComment will put the original URL into the saved file’s Finder Comments. Now you’ll always know where your downloads came from.

Cmd-I in Finder to display the file comments, and BAM! Instant reminder where on earth you got that file from and why. I’ve been using it for less than a week, and it’s already proven itself useful.


Linux Kernel Patch of the Week

And the Linux Kernel Patch of the Week award goes to …

Jake Moilanen provided a series of four patches against the 2.6.9 Linux kernel [story] that introduce a simple genetic algorithm used for automatic tuning. The patches update the anticipatory IO scheduler [story] and the zaphod CPU scheduler [story] to both use the new in-kernel library, theoretically allowing them to automatically tune themselves for the best possible performance for any given workload.

Whether it really is truly effective will only be seen, but the coolness factor is so there …


Guido gets serious about types in Python

Hmm, so Guido’s blogged even more about adding static typing to Python. I’m not sure if that’s a good idea. While I’m certainly a static typing evangelist, Python has always been a dynamic language, and shoe-horning a static type system on to a language which was never designed for it sets off alarm bells in my head. Objective-C deals with ‘static typing’ quite nicely: you get compiler warnings if the types don’t match. This doesn’t limit any of its dynamism, but you get some extra safety if you decide to use types in your program. Patrick Logan doesn’t like Guido’s proposal either, although that’s no surprise.

So, Python might just get static typing in the future. What’s next, Haskell getting more dynamic?


Je ne sais quoi

This is gold:

Mr. Jobs, please establish eligibility requirements for the purchase of a new Mac. A good start would be to disqualify anyone who listens to Ashanti or anything they play on K-Rock.