Rob Kraft's Software Development Blog

Software Development Insights

Archive for the ‘Free tools’ Category

Find bugs in your javascript using Closure

Posted by robkraft on June 5, 2011

Just in case you have not found the Closure tool from Google yet, I’m making this little post to help you discover it.  Closure is a free online tool at that will examine your javascript for bugs and compact it for you.  If you write javascript and are not using any tools to assist you in finding coding errors, check out closure.  It is online and it is free.

Posted in Code Design, Dev Environment, Free tools | Leave a Comment » is your online alternative to Visio

Posted by robkraft on May 24, 2011

I just recently started making use of the online charting tool and I highly recommend it as your alternative to Visio.  I used IE9 and found the charting tools to work very much like a Windows desktop application.  It is very easy to click and drag, copy and paste, draw connector lines, change captions and do so many of the core tasks that you can do in Visio.  I believe this product is much better than the open source and free products such as OpenOffice Draw or Dia.  There appears to be no direct print option, but I am 100% happy without that feature because you can save to PDF and print from the nice-looking PDF document.  I am also impressed by the number of templates available at start and that I can use the product for free.  I can even share my diagram with 2 other people under the free model.  LucidChart offers several free priced plans and we are evaluating the tool now to determine a pricing plan to follow, but you can use the free version indefinitely if you would like.  Finally, you can import your existing Visio diagrams into LucidChart, though I did not try this.

If you want to make any diagrams and you don’t own Visio, or even if you do own Visio, you should spend a few minutes to check out

Posted in Free tools | Leave a Comment »

Use MailChimp for a great free mailing list

Posted by robkraft on February 22, 2011

I have maintained a few mailing lists for some non-profit organizations for the last ten years using a .Net program I wrote.  I was proud of my little program and the features I provided, but I recently discovered and am now using it instead.

With MailChimp I can send 12,000 emails per month for free.  I can upload a list of existing email addresses from an Excel spreadsheet.  I get feedback and statistics about who has opened the email, when it was opened, and where it was opened from. They also provide dozens of email templates to make your emails look great!

If you manage small email lists and are using your own excel spreadsheets, or just a blob of emails you send to from within outlook, you owe it to yourself to take a few minutes and get to know

Posted in Free tools, Web Sites | Leave a Comment »

Clean up all the old versions of DLLs on your development PC

Posted by robkraft on December 24, 2010

Sometimes I desire to clean up all the old copies of my DLLs from my computer in order to insure that I am testing the correct and current version.
Using the great tool “Search Everything” from, I have found that I often have a lot of detritus in the following folders:
1) The Global Assembly Cache (GAC)
1a) In .Net 2.0, I could find the GAC at c:\windows\assembly and delete my files
1b) In .Net 4.0, the GAC is at C:\WINDOWS\Microsoft.NET\assembly in multiple sub-folders
2) The temporary ASP.Net file cache
2a) This is located at a folder with a name like C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files
3) If you develop with Silverlight, then you may find a history of every version of Silverlight DLL file you created at:
C:\Documents and Settings\%loggedInUser%\Local Settings\Application Data\assembly\dl3
4) Clear your browser cache
5) Look for DLLs in all of your bin and obj folders.  “Search Everything” is great for this purpose.

I clean up much of this with a batch file like this now:

cd “C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files”
rd /S /Q root
rd /S /Q vs

cd “C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files”
rd /S /Q root
rd /S /Q vs

cd “C:\Users\rkraft\AppData\Local”
rd /S /Q temp

cd “C:\Users\rkraft\AppData\LocalLow”
rd /S /Q temp

cd “C:\Users\rkraft\AppData\Local\Microsoft\VisualStudio\12.0\Designer”
rd /S /Q ShadowCache

cd “C:\Users\rkraft\AppData\Local\Microsoft\VisualStudio Services\5.0\”
rd /S /Q Cache

Posted in Coding, Free tools, Visual Studio 2010 | Leave a Comment »

Determine your Silverlight version at

Posted by robkraft on December 22, 2010

The simplest way to determine the version of silverlight installed in any browser is probably to navigate to this web site:

Posted in Free tools, Online Resources | Leave a Comment »

How to group files in partial classes under one file

Posted by robkraft on May 9, 2010

I’ve always liked that the separate files (designer and cs) comprising my aspx pages were grouped together under one aspx. Did you know that you can group any files together under one specific file? You can modify the project file and add the DependentUpon element to any include file and specify the name of the file it is dependent upon.

In Visual Studio 2010, you can do this more easily with an Extension. Go to Tools/Extension Manager, Online Gallery, and find VSCommands 2010 and install it.
This should open a web page with a quick description of the features this add-in provides. (Grouping files, open in blend, copy as link, etc.).

Posted in Free tools, Visual Studio 2010 | 1 Comment »

Great free tool: CodeRushExpress

Posted by robkraft on September 9, 2009

CodeRush now provides a free version of their tool called CodeRush Express. You can download it from this URL:

They also provide a nice list of features and short tutorials on each.

If you are not familiar with the features that CodeRush or ReSharper provide that can increase developer productivity in Visual Studio .Net, this is a great way to learn.

Posted in Code Design, Free tools, Visual Studio 2008 | 2 Comments »

How to delete duplicate rows in SQL Server

Posted by robkraft on March 28, 2009

Developers new to SQL often expect that it should be easy to write a query to delete duplicate records, but that is not the case.  Here is a stored procedure you can use to delete duplicates.  There are two stored procedures here and you need both, both one just calls the other.  After compiling the stored procedures, you can use the following to delete all the duplicate records from a table:


    @table_name VARCHAR(32),
    @Column_List VARCHAR(8000) OUT
    DECLARE @Column_ID INT,
        @Column_Name VARCHAR(128)
    SELECT @COlumn_List =
    –partial query from
    WHERE TABLE_NAME = @table_name
    –Loop through all the columns of the table, to get the column names and their data types
        TABLE_NAME = @table_name
        SET @Column_List = @Column_List + @Column_Name + ‘,’
        SKIP_LOOP: –The label used in GOTO
        WHERE TABLE_NAME = @table_name AND
        ORDINAL_POSITION > @Column_ID
    SET @Column_List = LEFT(@Column_List,LEN(@Column_List) 1)
    @table_name VARCHAR(32)
    DECLARE @columns VARCHAR(8000)
    SELECT @SQL = ‘with numbered as ( select ‘ + @columns + ‘, row_number() over
        (partition by ‘
+ @columns + ‘ order by ‘ + @columns + ‘) as nr
        from ‘
+ @table_name + ‘) DELETE FROM numbered where nr > 1’

Posted in Free tools, SQL Server | Leave a Comment »

Episodes tool for identifying client-side performance problems

Posted by robkraft on November 26, 2008

I am excited by the performance measurement tools I see upon the horizon.  For years many web developers focused on improving the performance of the web server, and the benefits of future optimization on the server are diminishing.  Now the tools and techniques allowing us to systematically improve client side performance are arriving.  One such tool is Episodes from Steve Souder.  Out of the box, Episodes shows the breakdown of response time between back end and front end processing.  But the real treasure in the product is the ability to break down many aspects of the client side processing time to see how each piece performs.  This should help you identify what javascripts are taking a long time to process.  You can even collect live performance data from actual users.

You can find the product on the web at  Steve Souders is the author of Yslow, another excellent Firebug for Firefox addin.

Posted in Free tools | Tagged: , , | Leave a Comment »

Simple SQL Backup

Posted by robkraft on January 22, 2008

This quick post is not about C#, though my program was written in C# Express Edition.  The program allows you to backup, restore, or move a SQL Server database (any edition from 7.0 through 2008).  Best of all it is free, and it is very easy to use.  The target audience for this program is non-IT people that probably have an application written on SQL Server Express 2005.  The program is called Simple SQL Backup and you can download it from, or from

Posted in Free tools, I.T., SQL Server | Tagged: | Leave a Comment »