TransactionScope for unit testing complex database access code.

Since .NET 2.0 came out, the TransactionScope class has provided an excellent way to manage complex transactions in the simplest way possible: using the scoping rules of the language itself. The basic method for using a TransactionScope couldn't be easier:

using (TransactionScope scope = new TransactionScope())
    ... your transactional code here ...

An overview of TransactionScope can be found on MSDN.

Junction Trouble? Try Link Magic

Link Magic is one of those programs that has a very narrow focus, but if you need what it does, you should download and try it out.

In my case, I was receiving mount point errors from a Windows 2003 R2 server. To find the possible problem I used Link Magic to list all of the Junction Points, Symbolic Links, Mount Points and other operating system links, looking for any with a broken entry. Junction Magic also removes and creates links in a simpler manner than the traditional command line methods.

Dummy SMTP servers: Papercut, smtp4dev and (n)Dumbster

It has been said that every program will grow until it can send e-mail. Today this is probably even more true than ever as the modern Internet user simply expects notices to be sent via e-mail to confirm orders, notify about shipping status or simply reset a password.

The problem with this is that it is often necessary to test software that sends e-mail. Actually sending those e-mails creates two new problems: we need to review the e-mails somehow and we run the risk of creating "noisy" software that fills someone's inbox with test data.

A quick link to a good summary.

Some good articles are linked to in this end of year summary of The Geek Stuff articles.

50 UNIX / Linux Sysadmin Tools.

A good idea - taxpayer receipts.

This site ( computes how much was paid out into the government based on your federal taxes paid. If one wants to argue about taxes (or over-taxation) it seems prudent to actually know what one paid for via their taxes. I found the actual numbers very interesting and somewhat different than what my guess was before this site.

A more comprehensive (but more confusing) representation of the *costs*:

Can not copy... Visual Studio error.

A common problem with Visual Studio is that it leaves locks in place inappropriately after debugging. A quick search for

visual studio 2010 "unable to copy file"

will show how prevalent the problem is.

This workaround was suggested for building add-ins, but it works for WinForm applications as well: File Lock Issue in Visual Studio When Building a Project.

The basic idea is to add a few lines to your Pre-build event:

TeraCopy for Windows 7, 64 bit.

I was copying a large software project from one directory to another in preparation for upgrading the project files to Visual Studio 2010 format. The copy dragged on and on moving at just over 1MB/s with 1GB to copy. It completed in about 20-25 minutes, which was absurd.

Doing some Googling I found plenty of references to slow copy problems (something I had also encountered in Vista), but I also saw a reference to TeraCopy as a solution.

Games for Windows Live

Shamus at 20 Sided put together a post that completely describes my experience with Games for Windows Live.

How is it that the largest software company in the world, with a huge console gaming arm, can't write PC software for game management?

CSS Techniques

This is simply one of the better resources for CSS that I have stumbled across: CSS Techniques I Wish I Knew When I Started Designing Websites. I really don't have anything to add, except to say that I really hope somthing like Sass becomes a standard. CSS is great, but repeating oneself is not.

Cleaning out the backlog.

I have a few items I have had pending, but never got around to a full write up on. Today's "needs to leave the list" entry is by Seth Godin. Seth Godin is an interesting pundit who talks a lot about marketing and professional development. He has written quite a few business books that I haven't read and quite a many blog posts which I have. I wholeheartedly recommend his blog if you are interested in business marketing topics.


Subscribe to Timewarp Technologies, LLC RSS