Category: General

For a while now, I have been playing futsal, otherwise known as indoor soccer. I play with a bunch of the guys from Cenqua, some former workmates and friends. We play mostly for fun and fitness.We also mix this with to get better fitness results. This season (winter season), we did pretty well and ended up in the final, which we played last night.

We went into the match without great expectations as we were without our only star player, Daniel. Since I seemed to be coming down with the flu, I decided to play goalie. Even without Dan, we played really well so that the scores were locked at 1-1 even after extra time. That meant we had to have a penalty shootout. Maybe goalie wasn’t such a good choice after all.

The shootout consisted of 5 penalties for each side. After the first two shots by each side we were down 2-0. It looked pretty grim. I was able, however, to save the next 3 shots so that we came out on top 3-2.

Ever since Alan Jones won the Formula 1 championship, I’ve been following Formula-1. Before that there was no coverage in Australia. Being an F1 fan in Australia requires a certain stamina since the evens are shown late on a Sunday night.

I think last night’s Hungaroring yawnfest could be the end of the line for me. Even the commentators noted that the most exciting part of the telecast was watching Ross Brawn eat a banana. While the previous round at Hockenheim had produced some racing it was like an addict getting his last fix before kicking the habit.

It isn’t about Schumacher and Ferrari being totally dominant, although that is a problem in itself. It’s about the fact that in most races what little passing that does happen, happens in the pits. How about some actual racing for a change? These days it seems the real excitement in F1 is about the race to get a seat.

We’ve had 3mm of rain in Sydney over the last day. It’s been so long since we had rain here that those 3mm really felt like a downpour. We need a lot more and, in the perversness of nature, will probably get a year’s worth in a short space of time.

Nevertheless, you can’t help but feel that if we continue to push the atmosphere to its limits it’s going to leave whatever stable negative feedback region we’ve enjoyed and go bonkers.

It reminds me of an old elec. eng. adage. The best way to build an oscillator is to try and build an amplifier and vice versa. Let’s hope we don’t discover real atmospheric instability.

I took part in the ICFP programming contest again this year. As with last year, this was great fun and this year’s topic was strangely familiar.

I noticed a few things – being the weekend of my son’s birthday and given the usual commitments of two weekend soccer games, I really did not have enough time to do a proper job of it. With that note, however, it is amazing just how much code you can crank out in 72 hours.

This year I decided to build everything in C#. No big reason for that other than it is what I have been spending a lot of my time coding with lately. There’s not much to pick between C# and Java in terms of how you think.

The problem was neatly divided into three tasks

Develop Simulator and GUI to run Ants

Develop a compiler for a high level Ant language

Develop some Ants in my language

Ideally I would spend 24 hours on each task but due to other commitments, I had to get some sort of best electric shaver from the development of my ants and, as a result, they were somewhat unintelligent.

This year’s entry was a solo effort. I think if I do this again next year, I would like to be part of a team to share workload around.

Coming up with a high level language was interesting. The better your language the easier it is to think about Ant behaviour at a higher level. My language was simple enough but did provide some high level structures and also managed allocation of states for the state machine. My lexer and parser were simple hand crafted affairs but good enough for the task at hand. It reminded me a little of the entry in the Pragmatic Programmer – Implementing a Mini-Language. I did use the C# delegate feature to avoid a tedious switch statement for the language elements which was kinda nice.