I am now a 50 year old manager of a small piece of a very large company that purchased us about 1 year ago. Been into computers since grade school in the late 70's, having spent years working in the field, building, fixing, installing, selling, teaching, gaming, programming and now consulting on all the aforementioned topics. Computing life is good.

Friday, June 15, 2007

Testing 1,2,3....


As developers go I like to think that I am better than the average developer at testing out the nooks and crannies of my own code. (That may not be saying much but I'll take it wherever I can get it). For some time now I have been diligent in using various testing paradigms on my own stuff with various results always beating a blank.

Nunit Testing
Virtual Machine Testing
Grunt UI manipulation with a printed list of steps
UI Automation with various tools
and so on

Now have stumbled onto another technique that I will be adding to my arsenal and am excited at the possibilities that this new technique affords. The new technique being "Running applications in/on foreign platforms". I am not talking about using VMware or Virtual PC to run a vista developed app on XP. I am of course speaking of running applications targeting .Net platforms on MONO. The Mono in question running on a different OS entirely like Linux.

Running a native .Net application on linux under mono presents all manner of challenges that really can test your mettle as a developer. Sure some of the challenges are as of yet insurmountable as mono is not as feature complete as it needs to be, but Mono is really coming along and for a great deal of our applications and custom controls for our client/server applications, our things run well on Mono. Its usually just a matter of getting the database connectivity happening and launch the thing and watch as it come up and runs. Where this becomes useful from a test standpoint is that subtle issues that might not cause any problems natively will stop you dead in Mono.

Case in point was just discovered today. I was testing out one of our applications called the Profiler on my Fedora 7 equipped Inspiron 9100 and found the app just bombed doing a series of data manipulations from our grid to parse that information and sent it along to our line charting control. All the stuff that you might expect to have a problem worked fine, it was blowing up on a simple Val() function. (Yeah its an old app written in VB.Net we transitioned to C# some time ago but we still have these older things lying here and there). The point is I was doing something stupid and the .Net framework handled my stupidity well enough but Mono simply said "Hey Stupid!" and went belly up. Just because stupidity can be handled doesn't mean it should be handled and I classify this as a bug thats been there forever. Mono showed it to me where all my other testing that I did on this years ago did not.

I take two things from all this

Revisit old applications from time to time they might prove enlightening

Try the thing on Mono you might learn something

Monday, June 04, 2007

Enlisting a little thermal help...

A short and sweet post today..

Came into work this morning to one of our developers having a bit of trouble with her Dell Inspiron 9300 laptop. She had been having problems before getting the thing to complete its BIOS post and start booting windows XP. In this case it would either halt dead before the little message to press F2 for setup or F12 for boot menu appears in the upper right corner of the screen. It may also display that message but halt shortly afterwards. Her fix for this in the past was to turn it off and try again. This had always eventually worked until this morning where for her life it would simply not boot.

Of course she needed to get the thing to boot so she could check some things into source control, and get some documents off that she had been working on. All tasks that are just a hell of a lot easier if you can get the windows environment to boot up just one more time....

In helping her I tried all the standard sorts of things like taking the battery out. Trying it on battery power alone. Disconnecting the docking ports, reconnecting the docking ports, pentagram chalk and white candles. All to no avail. Then I remembered my younger days as a board level repair technician using thermal spray to blast freeze chips one at a time in the face of an overheating problem with the simple computers of the time. (One step above beads on some strings). So I unplugged the laptop from everything and after some quick re-arranging of what were dubious contents in the company chill chest/ice machine, I placed the laptop in the deep freeze for about 10 mins. (Just enough time to get some Coffee)

On taking it out I quickly hooked it up enough to turn it on and it booted just fine.

She thinks I am a genius.. In reality I am just OLD but still have a memory...

Now she can get her stuff of the slowly expiring machine and we can call Dell and get it fixed...