Rob Kraft's Software Development Blog

Software Development Insights

Archive for February, 2010

Analogy – Estimating Software development is like estimating drive times

Posted by robkraft on February 12, 2010

Estimating a software development project is a little like estimating driving time.  If you are estimating something you do over and over, like your drive to and from work, then you can provide estimates that are very accurate.  However, there is always a chance for unexpected traffic jams and bad weather that could unexpectedly make your estimate grossly inaccurate.
When estimating a trip that you have not taken before, the accuracy of the estimate decreases with your knowledge of the possible paths and the accuracy also decreases with longer distance.  Is it not the same with software?  Our estimates become less accurate when there are more things we need to do that we are not familiar with, and as the scope of the project increases.


Posted in Estimating | Leave a Comment »

Redirect to

Posted by robkraft on February 8, 2010

If you attempt to access a web site that exists on the web host, and that web site has the SecurityGuard firewall set to High (the default), you may get blocked and redirected this page
This does not occur for all users, but only for those that have a large UserAgent. The UserAgent is the information that your browser sends to every web site when connecting to let the web site use that data to potentially customize what is sent to you and to track data about who is connecting to the site.
If you want to see what is in your user agent, just go to
There are two ways I know of to get this to work. One is to have the owner of the web site change the SecurityGuard setting to Medium. I have done this on one of my sites I host on webhost4life. The security risk is really quite small for most sites. The other fix is to uninstall some software from your computer so that your useragent is smaller. Unfortunately there is really not much you can uninstall that affects your user agent.
You might also try a different browser. I noticed that I can access sights blocked by SecurityGuard using Firefox instead of IE because FireFox, in my case, sends a much smaller UserAgent.

Posted in Web Sites | Tagged: , | Leave a Comment »

Eliminating some of the foreign language resource files

Posted by robkraft on February 8, 2010

I’m all in favor of the use of resource files for strings and other elements of our programs, but I don’t like seeing all the subfolders for various foreign language resource builds in projects where I will never need them.
Our Silverlight projects were creating 8 foreign language subfolders (de, es, fr, it, ja, ko, zh-Hans, and zh-Hant). Not only does this clutter my hard drive, complicate my version control, and annoy me; but it requires a little longer to compile, and it nearly doubles the size of my nant output log. I know that it doubles the size because when I caused it to stop, the log file size was cut in half.
I managed to stop the creation of all the foreign language resource versions of the files by deleting the foreign language subfolders with those names from C:\Program Files\Microsoft SDKs\Silverlight\v3.0\Libraries\Client.

Posted in Visual Studio 2008 | Tagged: , , | Leave a Comment »

When CopyLocal=True means CopyLocal=False

Posted by robkraft on February 8, 2010

We have learned that CopyLocal = true is misleading. CopyLocal is set to true by default, but that does not always cause the DLL to get included in the .xap. However, if you change it to false, then back to true, it does get included in the .xap. We have experienced this many times in VS2008 with Silverlight 3.

Also, after you do this, you will notice that it does cause a change in the .csproj file. It sets the Private Tag explicitly to true, rather than relying on the msbuild default value of true.
I hope this post helps others resolve this xap file problem more quickly.

Posted in Visual Studio 2008, Visual Studio 2010 | Tagged: , | Leave a Comment »

How to activate Windows Server 2008

Posted by robkraft on February 7, 2010

I spent several hours a few weeks ago simply attempting to activate my copy of Windows Server 2008 (64bit) on a new computer. The problem I experienced is that I was not prompted to activate it at any time during the install or during the configuration and subsequent reboots over the following few days. In the past, didn’t the operating systems nag us early and often to be activated?
I thought that maybe Windows had already activated itself somehow based on the way I had acquired the DVD. I was not sure what was going on or how to figure out if it had been activated. Eventually I called a Microsoft rep but I had a very difficult time explaining to him that I did not have an immediate problem; rather that I just wanted to know why I was not prompted to activate Windows. The lack of activation concerned me because I was going to deliver this server to a remote site then occasionally manage it via RDP. I did not want to discover one month later that the operating system locked up because it was not activated and that it required me to be there in person to unlock it.
I finally found the place to activate Windows Server 2008 in Control Panel, System. There, I was able to enter the Product Key and complete the activation. I wish that Microsoft would have made this easier to find, or included in their help documentation an entry about it.

Posted in I.T. | Leave a Comment »