06 December, 2006

learning to drive

in his book extreme programming explained, kent beck compares software development to driving a car, and makes the following insight:


The driver of a software project is the customer. If the software doesn't do what they want it to do, you have failed. Of course, they don't know exactly what the software should do. That's why software development is like steering, not like getting the car pointed straight down the road. Our job as programmers is to give the customer a steering wheel and give them feedback about exactly where we are on the road.


talk about a useful mindset to have! on a similar note, eric (my current manager at work) always tells me about how in one of his most succesful projects, they presented the product to the customer on a daily basis to provide the feedback beck talks about.

05 December, 2006

wtf: sonic cineplay

i'm well aware of what wtf stands for; however, i choose to ignore that and have it mean Curious Pervasions in Information Technology.

here the is my first wtf:
on friday december 1st i rented a movie. for some unknown reason the dvd would not play correctly on our desktop... after about an hour of trying to make it work, we decided to to just watch the movie on our laptop.

a few days later, my wife tells me: "something is wrong with the desktop. it won't play the 'signing time' dvds either. i take a quick look, and sure enough, the dvds play but there is no sound.

after trying everything i could think of (checking codecs, checking settings on the player, checking audio drivers, etc.) for four days, i'm about to give up and roll back to a previous back up. before doing this however, i try one more google search... i find the following on one of roxio's customer forums:


All,

There is an issue with Cineplayer not working. That could be no video, no audio or corrupted video. We’re aware of the issue and are working with Sonic on getting this resolved shortly.

The problem only manifests when the clock is set to the month of December. So simply change the date to another month and it will work.

This is only a workaround. We are currently working with Sonic to resolve this issue. We’ve been told that a patch should be available by Wednesday, December 6th.

We apologize for the inconvenience and assure you we are working to get this resolved as quickly as possible.


this is a wtf on so many levels... i just can't even begin to comprehend why a codec does not work on the month of december. it would be great to look at the code that's causing this bug and then posting it for learning purposes.

i'm glad i didn't roll back to a previous back up; that would have failed and then i would have probably re-installed everything; after that i would have probably shipped my computer to dell... and pulled my hairs out :)

22 November, 2006

taking notes (and a little on UML)

i've written about this on my personal blog, but i'll mention it here again... taking notes helps you remember stuff, so i like to do it even if i never look at my notes again.

not too long ago i interviewed with bill, a manager in the company i work for. while we were talking he took copious notes. while he was doing this he told me not worry, that he always does this even though he normally just throws his notes away.

under the guidance of this principle, i'd then like to write down the following idea from Fowler's UML Distilled:
use cases help you determine requirements; and actors help you determine use cases.

i like the idea because it's simple, easy to remember, and it helps keep the end in mind.

21 November, 2006

asp 1.1 and 2.0 on the same box

the compnay i work for, and a lot of guys on my team have added the .net 2.0 framework to their boxes recently.

a lot of people have come to ask me either why their 1.1 web projects stopped working or why they can't get a 2.0 asp project to work. 9/10 times the problems arises because the box is trying to run asp 1.1 and 2.0 under the same app pool.

so, the answer to the problem is to make sure that at the very minimum all your 1.1 stuff is running under one app pool, and all of your 2.0 stuff is running under a different pool.

a lot of people have asked me why this is, and honestly, i don't know yet (but i'm looking)... i'll post a follow up as soon as i find out.

but there's an important lesson to learn here, not just some obscure fact about asp:
solving this issues is actually easier than what one would think; all one has to do is look in the eventviewer, where the following error would be logged:

It is not possible to run two different versions of ASP.NET in the same IIS process. Please use the IIS Administration Tool to reconfigure your server
to run the application in a separate process.


it's been my experience that most devs don't look in the eventviewer, iis logs, etc, to find clues to their problems. as i've worked with BizTalk (and thus have been forced to look there) i've learned what great tools the eventviwer, the performance counters, and others are.

03 April, 2006

a place holder

just an entry fot this new blog of mine.