Tuesday, April 05, 2005

A bug in my Pants


We are well beyond the delivery date and there is a bug in my system. The problem seemed to have gone unnoticed as we developers don't normal run test harnests to jive the application's run to perfection. I would think that the test team was responsible for running any imaginable tests on the application that I built. But to have users complain at this late stage goes to show that heavy drill tests have not been carried on my app by the test team. No matter how much they claim to be doing their job ... they missed some grounds for sure. The pre-release users found 2 bugs with it late last week when they tested it on a drive run on some parts of spain and italy. We have until today, been unable to reproduce one of them. The other one had been assigned to me for which I had already fixed as of now. Next thing to do is to test it my self on a drive run when I go home today. Who knows, besides fixing this small bug i might even uncover other big ones. But its all just small bugs that needs to be tended to like a lover on valentines day no doubt.

Having tested my fix, I found that the application now behaves quite well and needs a few minor tweaks before I can close the PT on it. While testing my fix, I found another rather interesting problem that could explain my 1st bug and ultimately help deliver the software to the EU market right on time. On my test run, I enabled the Simulator checkbox in the preferences menu to get the device running in the simulator mode. But the checkbox value doesn't hold when i try to save it to the config.ini file on the /My Flash Disk directory. Checking up on it, I found that the checkbox value had defaulted to off and that the config.ini file and the /My Flash Disk on where it sits had disappeared.

The winCE micro kernel thats causing the /My Flash Disk dir to disappear comes from a HK company and its really typical of asian companies to produce such flaky software. Crap. On resetting the device, the kernel is rebuilt and you can see the /My Flash Disk dir and the config.ini file again. This is why we don't buy from asia. They give us such crappy software. The disappearing directory and config.ini file also explains why the turn-off-to-power-save settings in the preferences also defaulted to being checked and why the routing occasionally stalls the application.

While in the routing loop, a mysterious callback returns with a TIMER event that saves preferences onto the config.ini file. So if the file and the directory that it lives on goes missing, then of course writing to this file would return a FALSE and take some delay time when it tries to open non-existing file. Benefits of CE handling file IO. Just imagine the accumulated time delays when this save setting function is called a couple of times a second in a route. I think I have just solved my major bug. I'll just wait for a bug meeting on the product to highlight these issues and gain recognition and company fame. Why am I smiling as I write this?

The 6 things I want to do before I go ....

1. Swim naked with the dolphins
2. Buy a house by lake Taupo and watch sunset by my pool
3. Finish off the software i'm writing and get paid $4 mil for it

4. Say "No" when Kate Beckinsale asks me out on a date wearing only thong pyjamas
5. Buy my own pacific island and turn it into a playboy mansion in the pacifics
6. Ask god for forgiveness for all my mortal sins.
|