All posts by Chris

Waitakere fireworks display 2006

Went to the fireworks display at Waitakere Stadium last night. All I can say is WOW.

Those free style motor cross riders were amazing.

Free Style Motor Cross 1
Free Style Motor Cross 2

As for the actual fireworks display it was even more impressive. Some of those explosions you could really feel. According to the time stamps on my photos the display lasted about twenty minutes!

Fireworks display

Aside: Every year in New Zealand they (the media) talk about banning the selling of fireworks. So every year people act more and more stupid as this will be “the final year”. I believe now it has snow balled to the point where it might actually happen.

Fortunately there will always be large scale events such as this one to look forward to.

Alright, I’m a delivery boy!

Recently work sent a couple of LED screens over to Australia for the Lexmark Indy 300. Without going into too much detail (of who screwed up) the guys in Australia found they were missing half of the LED module cables for one of the screens. Now we could have sent them via a courier company; but that ran the risk of being held by customs or arriving too late. So instead I got the honour of hand delivering them.

The pit
The pit
Bert's Cranes
Bert lifts a screen into position
Tire delivery
Tires

On my way out of Brisbane I nearly had my 15 metre ethernet cable seized. Turns out that it was borderline, as you are not allowed rope in your carry on luggage since you could tie someone up. In fact the border inspector suggested he could tie me up with my own cable… (he must have misinterpreted my look of disbelief).

[Book] The mythical man-month

I recently finished reading the mythical man-month by Frederick P. Brooks, Jr. This was the anniversary edition with four new chapters (oooo).

Quite an interesting read.

I was however, unaware of just how old this book was (originally published in 1975). Three decades later some of the problems addressed in this book are still valid, while others have become so much of a non issue it is ridiculous. For instance in a discussion concerning memory usage; the IBM APL interactive software system uses at least 160 kilobytes of memory. 160k! Further in the same paragraph we find that on a Model 165 (IBM mainframe) one kilobyte of memory rents for about $12 per month. Now days I can go out and _buy_ 262,144 kilobytes for twice that.

Fortunately not all of the ideas presented are displaced by large advances in technology. In fact I find it hard to imagine a future where Brook’s law of ‘adding manpower to a late software project makes it later’ does not apply…

[c++] Commenting tricks

When tracking down a compilation problem or even while refactoring code; I find it extremely useful to selectively disable blocks of code. Now I could just wrap the offending section in a ‘#if 0’ and change the 0 to a 1 as needed. Unfortunately not many IDE’s colour these sections correctly, and those that do sometimes get it wrong. Instead I prefer the good old block comment method:

some code
/*
commented code
// */
more code 

Notice how the line with the end of the block comment ‘*/’ has been preceded with a line comment ‘//’? This way you can comment out the start of the block comment with a single slash and not get an error from the unmatched end:

some code
//*
no longer commented code
// */
more code

I realise this is a fairly obvious “trick”, but I haven’t seen it mentioned anywhere else.

Xen there was Virtuozzo

Previously i mentioned that hosting was on a Xen virtual machine. This is incorrect. It is actually accomplished with a Virtuozzo virtual machine. Admittedly the outbreak of virtualization technologies is making it harder to keep track of all the solutions available.

Virtuozzo is implemented at a slightly higher level than Xen. Xen exposes an API for modified operating system kernels to use to perform their relevant tasks. Virtuozzo on the other hand, uses just one kernel which partitions resources and acts like multiple machines.

Which is better? Well that would depend on who you ask.

Xen offers more choice allowing for things like running BSD under Linux.
Virtuozzo in theory would have less virtualization overhead, and possibly better overall management of resources.

For further reading I suggest you start out at Wikipedia – Virtualization.

Portal technology

Portals like those seen in Narbacular Drop, Prey, and the soon to be released Portal have far more uses than just personal transport. For starters if you have portal technology you have the potential for unlimited energy…

Well that is assuming that the amount of energy required to maintain a portal is negligible. In which case you could create your own hydro electric power plant by sticking a turbine in between two portals and just add water.
Thermal gradients are another obvious source of energy. One end of the portal near a hot region (sun?) and the other near a body of water. Although this then raises the question of whether all the air on earth would be blown out into space?

So lets assume that portals do in fact require a large amount of energy to create and maintain. Not only in an effort to respect the conservation of energy, but to avoid the anarchy that would result from personal portal devices. At least this way governments, large corporations, and billionaires would be the only people in control of them.

Sure the technology would be abused but just think; here we have the solution to world hunger, population overcrowding, public transportation, non-renewable resources, and space exploration. All because portals allow objects to be transported from one location to another instantly.

A really good book featuring this technology is Pandora’s Star by Peter F Hamilton.

Site hosting change (again)

This site is now hosted on a Xen Virtuozzo virtual server hosted by TecTonic. While not free, it does allow for near complete administration of the server. So most of my time these last couple of days has been consumed by setting it all up and rediscovering the joys of absent, incorrect, and just plain wrong documentation. Fortunately I can use this experience as an incentive to fully document and improve the usability of my own programs.

Also thanks to WordPress this site is now dynamically generated (if you hadn’t noticed). Goodbye to managing text files and worrying about html formatting.

Error free programming

So the latest Ask Slashdot was concerned with writing ultra stable software in C++. Of course you have the usual anti-C++ crowd immediately crawl out of the wood work but there was one post that was interesting… well ok not the post itself but the link they referred to was: They Write the Right Stuff.

In brief the article refers to the work of the “on-board shuttle group” and their software defect rate. I’ve had this very article mentioned to me several times before by a work colleague and only now have I actually gotten around to reading it. The most interesting part of the article was not what it said but what it didn’t. Notice at no stage was the programming language they used mentioned. Why? Because it is not relevant. In essence the trick to achieving 99.9% reliability is process control.

Infact I’m confident that the “on-board shuttle group” will pass the The Joel Spolsky test.

Welcome

Well I’ve finally gotten around to finding a new home for my site. While there is not much on here at the moment at least there is something.