This blog has moved. Please update your bookmarks.

Rainy Days

There's this part of winter that I dread; the time when everything starts melting and April rolls around. It's some strange weather phenomenon, I suppose, where everything turns gray: The sky is gray, the ground is gray, as is everything in between. The sunshine that manages to filter through the heavy, swollen clouds merely highlights the monochromatic world.

They say that when God first created the world, there was no rain. But during the time of Noah, when sin was so great upon the earth, "all the springs of the great deep burst forth, and the floodgates of the heavens were opened. And rain fell on the earth forty days and forty nights." (Gen 6:11b-12) When all was over, God put the rainbow in the sky, in remembrance of His promise to never again drown the earth - the logical conclusion is that they never had rain before, so there could have been no rainbows before that.

I think about that on days like these. Thanks a lot, oh great people of the early days of the Earth. If you'd kept to the narrow path, we could have had sunshine today. :)

VSS 2005: Out, Be Gone!

We backed down from VSS 2005 down to VSS 6.0 again on our systems. And, in doing so, cut the time for a Get Latest Version on our dpm folder down from 6 minutes to 11 seconds. A remarkable improvement, I'll say. Finally I can use the source code repository again without banging my head bloody against the wall.

I'm thinking, we must have missed some kind of fatal setting somewhere in the VSS setup. There's no way it could act so stupidly. But, it's a dollar short and a day late. Our patience is gone, forever.

So, VSS goes out, and will be replaced with something else. Maybe SourceGear Vault, which I'm lobbying hard for. We're still investigating.

Morning Has Broken

I'm sitting here waiting for our telephones to come online again after a power failure down in Stenungsund. It's remarkable how sensitive we are to power: Without it, our entire business would be gone and everyone would be back in the 1930's. Hooah.

In the meantime, I'm listening to Cat Stevens' version of Morning Has Broken, one of my favorite hymns or songs of all time.
Morning has broken, like the first morning
Blackbird has spoken, like the first bird
Praise for the singing, praise for the morning
Praise for them springing, fresh from the Word!
After a long, cold and dreary winter, the sun shines again and the sky is blue from horizon to horizon. Temperatures rise, and while I'm in love with cold, glistening winter mornings, it's a delight to see spring come rolling in. In but a month or so, green little buds will be springing forth on all the trees, grass will turn green again. Birds will be singing everywhere around, and all of God's nature will burst out in glorious green bloom again. And before long, tulips - my favorite flower - will be everywhere again in bright reds and yellows and whites.

Here in Skövde, construction work goes on. Commerce is tearing out a whole side of the mall to make room for more stores. A whole parking lot got wiped out this morning as construction of new housing set in - further worsening the parking situation - and a new road is planned from Havstenaleden into Maxi and further out towards Östra leden. The student-apartment skyscraper is nearing completion, and Maxi will probably soon start extending their mall into our first megamall. :) And because of that, several other large chainstores are moving into town.

T'is betting big, aye.

Pictures of my Heroes

I went into Gallerix the other day, and I found some wonderful photographs of two of my heroes. Of course, I couldn't resist buying them, frame them and put them on my desk.

So beautiful. *snif*

Star Trek and the Failure of Common-Sense Tactics

I enjoy watching Star Trek from time to time. I fell in love with Voyager and Captain Janeway, and I've lately been going through Episode I of Star Trek Enterprise with Captain Archer.

One thing always amazes me, though. The crew of the Enterprise is so blatantly naive. They never hesitate to send a tiny away team to board an alien vessel. When they go down on an alien planet, they never recon their surroundings or maintain proper security. And invariably, they run into problems, which always is solved one way or other by the ingenuity of the captain or some of his staff.

By properly adhering to common-sense tactics and employing fundamental security measures, I feel that it would be possible to minimize the dangers that away teams are constantly put into. For instance, these initial measures might provide a basic situational improvement:

  • Always thoroughly recon the environment before advancing. Failure to observe this rule could endanger the team and place them at severe risk to unknown toxins or other biological hazards, which is a recurring theme on the show.

  • Never send out a team without proper rules of engagement, and with a clear mission. "See if you can do anything" is hardly a specific order under which to operate when communications are down and difficulties emerge.

  • Plan ahead, and plan for contingencies. Backup procedures should be available once problems arise. Always keeping a second away team on standby should be standard procedure.

  • Never move alone. It is not infrequent for a Star Trek away team to split up into single individuals, a practice which should be frowned upon and taught against in Star Fleet Academy basic training. All experience has repeatedly shown that two-man teams are safer and more efficient.

  • An away team needs to practice tactical procedures in hostile situations. A firefight on the Star Trek show looks more like an old Wild West shootout than a disciplined team under fire. Proper defense techniques need to be employed, such as fire-and-maneuver, providing suppressive fire, and using speed to surprise and shock the opponent; and better weapons are needed, such as rapid-fire automatic weapons and stun grenades.
It seems strange to me that Star Fleet should send a crew of such seemingly "untrained cowboys" on their first, high-profile exploration mission throughout space. Personally, I feel that a few weeks of proper combat training should cure many of the problems the away teams are facing.

It would also help to instill a sense of proper chain of command in the ensigns and, more specifically, the officers on board the Enterprise... even if the commanding officer is a Vulcan.


I feel happy today. Happy, happy happy. I'm not sure why. Just a random incident of joy, I suppose. The sun is shining, the sky is blue, the birds are singing. And all the children are playing and laughing, the beer is extra good, and the policemen are holding hands, dancing down the streets and singing "Släpp fångarne loss, det är vår!" ("Release the prisoners, it's spring"; although the particular cultural context is difficult to explain.)

I seem to be the only one happy, though. Everyone else is depressed. I can't figure out why. And, oh, temperature this morning was -17 C in Såtenäs. Cool. :)

Code Defensively

If there's one single thing that new programmers should learn, as quickly as possible, it is to code defensively.

That means: Expect that things go wrong. Expect that things will fail, spectacularly, at random occasions. Expect to get garbage over the serial port. Expect random disconnects over the network. Expect programs to get access violations. Expect houses to burn down, presidents to get assassinated and large meteors to come crashing into the server hall.

Always think "what if I get garbage on the serial port". Never say "oh, that can't happen". Never append an input buffer with incoming data and then checking for STX in the first byte only.

So, here goes.


Your grandchildren will thank you for it.

VSS 2005: Slowly Walking Backwards

We recently upgraded from Visual Sourcesafe 6.0 to 2005.

In retrospect, that may have been a major mistake.

The abysmal performance of VSS 6.0 over VPN lines has now decreased even further. It took me over 30 minutes today, to run a "Get Latest Files" on our 2.0 branch of our main project. It usually takes, like 5 minutes or so. You really have to admire Microsoft for taking a produkt like VSS 6.0 and making it worse.

I wonder if it's not time to write a replacement. Maybe some kind of OpenSourceSafe, released under GPL and with a MySQL backend. How hard can it be? With some serious effort, a couple of guys running Delphi could do it pretty quickly, I think.

I mean, it's not like it's such a killer application, anyway.


I've made up my mind. I'm going to learn Ruby.

I also resolved to read more books. For instance, I think I should start with this one.


Blog contents copyright © 2005 Mats Gefvert. All rights reserved.