Month: December 2005

Alright, so it is the last day of the year and it is freezing outside (by the way).

Nonetheless, when the time comes, another fun and relaxing year will roll in, bringing new and challenging opportunities our way.

The tricky part is remaining patient (not that one nor that one, but...) just long enough so that you grab the right one before it passes you by.

This morning I took Maarten and his best friend Bas to the NEMO Science Center in Amsterdam.

We had a great time exploring and taking part in all of the scientific experiments, and although this place is geared towards young children, it was also refreshing knowledge for pseudo-geek parents like myself.

There was also some exhibition on the brain and how personalities define who we are.

I sat down behind one of the computer terminals and did the 10-minute quiz consisting of forty odd multiple-choice questions.

Finally arriving at somewhere in the high thirties, the poor computer got so confused by my answers that it froze with the following last gasp message:

"Syntax error, index out of range."


Whenever a new version of FreeBSD comes out, I get very impatient, endlessly feeling itchy and uncomfortable and sleeping lousy until I have finally upgraded my system to the latest and greatest.

The only problem is that upgrades like this are not trivial and there are certain risks involved, for example your whole system not working anymore.

So to make a long story short, despite the dangers involved and the chances of blowing up my poor laptop, I have managed to upgrade successfully from version 5.4 to 6.0, hurrah.

Only had some problems with my wi0 wireless interface due to some subtle changes (I mean improvements) for wireless networks that have been introduced. Namely the following error message kept appearing during boot:

ieee80211_load_module: load the wlan_wep module by hand for now.

This is what I had to do. Add the following line to my kernel configuration file LAPTOP and do a rebuild:

device wlan
device wlan_wep # Added this line.

and change the ifconfig stuff in my /etc/rc.conf file to this:

ifconfig_wi0="inet [ip_addr] netmask ssid [ssid_name] mode auto wepmode on weptxkey N wepkey N:0x[hex-password]"

I had to add the weptxkey N command and the wepkey N: prefix. Replace the [hex-password] etc. values with your own, of course.

That's it.

I should have discovered this fantastic browser management tool for MySQL ages ago.

For an honest-to-goodness open source utility things cannot be better than this.

Main documentation.

What the heck are microformats?

| 1 Comment

For awhile now, I have been wondering how difficult it would be to setup my very own MySQL Cluster on my home network? As it turns out, this morning when I woke up, I immediately sat upright in my bed and knew for sure what I had to do.

You see, the only way to really find out would be to try it myself. Roll up the old sleeves and immerse oneself in the technology so to say.

Downstairs I've got a couple spare FreeBSD machines lying around with memory to spare. Although I just have a plain-vanilla standard 100 Mbps Ethernet network (which is the minimum requirement according to the documentation though probably too slow), it should do the trick. Hopefully, that is.

For the management node, I can just use my laptop which once the cluster is up and running alright I can switch off and use for other things as required.

For those of you interested, I will chronicle my challenging endeavor as it unfolds, hopefully captivating my audience and even attracting droves of new curious readers. If in the long run I have been able to convert even one soul out there to the wonderful world called MySQL, then I will have been successful in more ways than one.

Here are some references for those wanting to know more:

There was this crazy-looking guy who jumped on the tram at the very last minute just before the doors slid shut behind him.

Although the tram was packed so tightly that you could barely move, this crazy-looking person was able to fit in easily with room to spare.

Those folks nearest to him subtly pushed and shoved themselves away, either consciously or subconsciously, little shuffling motions of the feet, slightly poking backs and wedging elbows. In no time, this person had managed to create an invisible buffer zone around him, a nice comfortable, invisible force field that gave him alot of extra room to stand, to wave his arms around, and to look this way and that.

I on the other hand found this individual interesting enough, that I daringly stepped into his little realm of comfort in order to observe him more closely, trying to make some more sense of it all.

When the doors opened again at the next stop, he spat through the opening, creating even more room by preventing more travelers from entering to fill in and replace the mass of cytoplasm which had just exited.

People moved away, providing us two lost souls even more room in which to move around and observe.

Sometimes it can be advantageous to be slightly crazy.

The official hit-count for this blog has passed the sixty thousand mark (see for yourself over there to the left down at the bottom).

Maybe that does not sound like alot, but I only count the unique visitors per complete visit.

My definition of a visit being stretches of time where all activity takes place within a thirty-minute period, e.g. a following visit taking place thirty minutes later counts for another visit.

Keep on coming all you kind visitors. Maybe someday we can reach the hundred thousand mark together.

Timbl's Blog, from the man himself who started it all.

What a pleasant surprise it is receiving such a nice Christmas card from a couple you do not know.

After having studied the picture closely which they enclosed in the envelope, the two of them looking sharp and standing in front of the water fountain just after getting married, I cannot for the life of me figure out who this nice couple is.

If only I could make out the scribbled words and the unknown signature at the bottom, then perhaps I could solve this mystery. Oh well, just hang it up with all the others.

Thanks for the card anyway. Whoever you are.

And did they get you to trade
Your heros for ghosts?
Hot ashes for trees?
Hot air for a cool breeze?
Cold comfort for change?
And did you exchange
A walk on part in the war
For a lead role in a cage?

- Pink Floyd

It's that time of year again, as the first snow flurries come tumbling, tumbling down.

Sometimes it can come down so hard that the rumbling sounds on the roof drown out every other sound in the whole house. As if I am lying inside of this cardboard house which is vibrating at a subtle and redundant frequency.

[Then it stops]

The greyish underside of the thickish blanket first sticking and then sliding down the slanted windows...

...revealing the new kind of whiteness outside which looks good.

Was hoping that this weekend I could upgrade to MySQL 5.0 without a hitch, as I am eager to investigate all of the new possibilities in this wonderful database product upgrade.

Sometimes the pursuit of knowledge gets out of hand and consumes too much of my life. Take for example the fact that at any given time I cannot just stick with one book, but I have to read a bunch of variegated subject matters simultaneously. Impatiently reading this and that and all kinds of other stuff.

  • Alexander the Great - Robin lane Fox, page 172 of 498.
  • High Peformance MySQL - Zawodny & Balling, page 217 of 265.
  • Lunar Park - Bret Easton Ellis, page 47 or 307.
  • Ambient Findability - Peter Morville, page 76 of 188.
  • To The Last Man - Jeff Shaara, page 146 of 636.
  • Switching to VoIP - Ted Wallingford, page 162 of 451..

Information overload. What's it all for? What am I trying to prove?

Having extra free time over for myself during the holiday season is relaxing and nerve-racking at the same time. Preparing for the future is not easy, but the good news is that there are a number of interesting angles to pursue. As always.


So I decided to be clever again, but this time around in an unusual javascript kind of way.

Do you see all of those links down the left and right columns? Well, if you have javascript enabled in your browser, then you should see a bunch of messed-up looking links which are randomly sized, some bold, some italic and others just plain old normal.

For those lucky enough to be knowledgeable in the fine art of Dynamic HTML, I will reveal my secret.

Here it is:

<script type="text/javascript">
// Creates random fontsize, bold, italic or normal for links.
function resize_menu_links(class_name, h2_names, min, max) {
  var divs = document.getElementsByTagName('div');
  for (var i = 0; i < divs.length; i++) {
    if (typeof(divs[i].className) == 'string' && divs[i].className == class_name) {
      var h2s = divs[i].getElementsByTagName('h2');
      if (h2s && is_in_array(h2_names, h2s[0].innerHTML)) {
        var a_links = divs[i].getElementsByTagName('a');
        for (var j = 0; j < a_links.length; j++) {
          var fs = min + Math.floor(Math.random()*(max-min+1));
          a_links[j].style.fontSize = fs+'px';
          var rx = Math.floor(Math.random()*4);
          if (rx == 1) { // bold
            a_links[j].style.fontWeight = 'bold';
          } else if (rx == 2) { // italic
            a_links[j].style.fontStyle = 'italic';
          } else if (rx == 3) { // both
            a_links[j].style.fontWeight = 'bold';
            a_links[j].style.fontStyle = 'italic';

The function is_in_array checks to see if a given string matches one of the elements of the array, returning true or false.

function is_in_array(the_array, what) {
  for (var i = 0; i < the_array.length; i++) {
    if (the_array[i] == what) return true;
  return false;

Finally, I use the standard setTimeout function to make sure that the changes are made once the page has been loaded, waiting 50 milliseconds before firing off the function resize_menu_links , passing the array of allowed section strings as well as the range of font sizes, in this example 9-17px.

// Only for titles given in 2nd array parameter.
setTimeout("resize_menu_links('menu_subsection', ['Categories', 'More links', 'Archives', 'More entries'], 9, 17)", 50);

Do you have javascript enabled?

The answer is:

My, my la de la come on now it ain't too far,
Tell your friends all around the world,
Ain't no companion like a blue eyed merle.

Richard Pryor ...Lately it seems that too many great people are dying at an early age.

In order to become great, one must push the unnatural borders way beyond the limits, and though much is accomplished and fame is attained, the average life expectancy is decreased somewhat.

Doesn't seem fair, only sixty-five years old.

Good-bye Richard Pryor, we are going to miss you.

There was this yelling and cussing and everyone seemed to be hollering at each other without regarding the true condition of the situation in which this sea of voices had unknowingly found itself.

There was this subtle unawareness smothered underneath frustrations and fear and a sharpened readiness to jump at anyone who dared.

There was this inner animalistic attitude that though providing an endless source of energy required for such bizarre and unrestrained motions of flailing arms and legs held each individual firmly in place preventing unnecessary bodily harm.

There was this erratic mindfulness that somehow kept everything in check as if even the slightest imbalance would cause the whole scene to dissolve into nothingness.

There was this.

You would think that after all these years I would finally get used to the fact that here in Europe they use the twenty-four hour clock as the default time format.

That means that eleven-thirty in the evening is represented as twenty-three-thirty so you can pretty much forget about all that PM and AM stuff altogether.

Look up in the TV-guide what programs are showing after dinner at eight-thirty, I mean eight-plus-twelve-plus-thirty-minutes is twenty-thirty. Confused? I (still) am.

So this might seem like a slight inconvenience, at least until it goes terribly wrong. Here's an interesting and entertaining example of such an oversite, though at the time I did not find it very amusing at all.

While in Amsterdam one evening late last week, I knew that the last direct train back home left at eleven-thirty, at least that is what I had carefully looked up the day before on the NS Treinplanner website.

Little did I realize while standing there in the dark on the platform waiting for a train which never came, that I had inadvertently looked up eleven-thirty European time which can only mean eleven-thirty in the morning.

I should have been more careful and looked up the correct time of twenty-three-thirty, e.g. twelve-plus-eight-plus-thirty-minutes.

Fortunately, upon closer inspection of the yellow list of times posted over there behind glass, there was a train traveling south via Utrecht. There I could change trains to nab the last stoptrein to Gouda.

Next time I will have to be more careful.


I cannot run Civilization IV for some reason. A real bummer...

The game 'seems' to start alright, but in the end I just get a black screen with the civ-cursor floating there in empty space, and the intro-music playing along happily as if nothing is wrong. No matter how I move and click and whatever, nothing happens. I've also tried alt-tabbing in and out and back again, but that doesn't help either. Drats.

I have a Dell Inspiron 8200 laptop 2GHz Pentium IV with 1024 MB and a Radeon Mobility 9000 graphics card. I've downloaded and installed the latest drivers from ATI. I've played enough of the latest new-fangled games on this system, and never had problems, so I'm fairly confident it is not a limitation of my configuration. Looks like the kind folks at Firaxis didn't test it sufficiently with ATI-cards I suspect.

What gives? I'm truly desparate to play the latest Civilization while on the move but to no avail - very frustrating for a enthusiastic though unfortunate Civ-addict like myself.

Would appreciate any help anyone can give, thanks alot in advance.


Yesterday evening I attended the Amsterdam Perl Mongers meeting for the very first time.

I was the only one without a laptop, so I had to sit patiently at the table twiddling my thumbs while the gang discussed those perl things we all love and cherish.

This computer language called Perl is quite unique when it can inspire so many folks to come together and talk about it once a month.

Next month I will be sure to bring my laptop with me so that I can melt better into the group. Can't wait.

In the last two days this blog has welcomed more than a thousand visitors. To me that is truly mind-boggling. Where is everyone coming from? What brings them here? What entries are they reading? Why on earth would they want to drop by my blog of all places?

Check it out yourself

Whatever you do, please be sure that you do NOT include the following line in your rc.conf file:

# /etc/rc.conf

I thought I was being overly clever again by having all of my so-called leftover temporary files removed during each reboot, but boy was I mistaken.

The next time I tried to fire up my good old Gnome Desktop it blew up with the following cryptic error message:

_ICETransmkdir: ERROR: euid != 0, directory /tmp/.ICE-unix will not be created.

As it turns out, after nearly a whole day of struggling and searching, I finally figured out what the problem was. You see, the clear_tmp_enable="YES" directive in the rc.conf file was deleting the /tmp/.ICE-unix file. Due to some security feature of X Windows, this file (and also the file /tmp/.X11-unix by the way) has to be root owned. You can't just create it via the desktop as the usual default user.

Here is the workaround in case you too have become entangled in this dilemma. First make sure you are logged in as root, then do the following:

# cd /tmp
# mkdir .ICE-unix
# chmod 777 .ICE-unix
# chmod +t .ICE-unix

So try not to be too clever unless you are absolutely sure of the potential consequences and do not especially like wasting a whole day searching and struggling for nothing.

Got my Uninterruptable Power Supply (a.k.a. UPS) installed and now it seems to be running alright. Thanks to the apcupsd driver which offers much in terms of monitoring the power supply and getting your servers shutdown cleanly in case of electrical spikes and/or interrupted power.

Then the test... When it came down to testing the setup to make sure it was working, I must admit feeling a little bit nervous about pulling the plug to see what would happen. However, it was actually kind of fun when you think about it. Living on the edge by closing my eyes tight and ripping out the plug. There we go, I did it. The master-slave setup went fine, enough power for two machines continuing for nearly fiftteen minutes. Then the automatic shutdown, beep-beep, and the power off sequence. Truly amazing. Put the plug back, the UPS beeped alive and the two machines rebooted perfectly. Just as if nothing had ever happened.

UPS Network Monitor

I was just really curious how it's been going with my former team members. The future-famous development team versus reality.

So has the so-called 'real-world' been treating you guys alright? Tell me by commenting here if you feel inclined to do so. If not, then that's alright also.

Random entries

Here are some random entries that you might be interested in:

Recent Comments

  • Long time no see: I remember them, as well. I remember Donald was my ...
    - Charles
  • Bridge to the moon: Yes it was a drawing and my older brother told me ...
    - jpmcfarlane
  • Bridge to the moon: Wow, that's quite a coincidence that we both sent ...
    - Kiffin
  • Bridge to the moon: Hello I was in my teens when Gemini 4 went up that ...
    - jpmcfarlane
  • Back to work: Congratulations Kiffin, I hope it is something you ...
    - KathleenC

Golf Handicap


This personal weblog was started way back on July 21, 2001 which means that it is 7-21-2001 old.

So far this blog contains no less than 2498 entries and as many as 1877 comments.

Important events

Graduated from Stanford 6-5-1979 ago.

Kiffin Rockwell was shot down and killed 9-23-1916 ago.

Believe it or not but I am 10-11-1957 young.

First met Thea in Balestrand, Norway 6-14-1980 ago.

Began well-balanced and healthy life style 1-8-2013 ago.

My father passed away 10-20-2000 ago.

My mother passed away 3-27-2018 ago.

Started Gishtech 04-25-2016 ago.