+1 - if you want to carry development tools with you, why not an entire development environment? I have Kubuntu installed on an 8G thumb drive, and it's sufficiently performant for the environments where I find myself booting it up

One of my USB Flash drives has the books I bought in PDF format from Safari Online. The ability to carry ten or twenty books about .NET, HTML, CSS, SQL, Active Directory, Security, WPF, or whatever else I happen to have in there, and pull it up without breaking my back is PRICELESS.

Another has NUnit, TestDriven.NET, WinMerge, the scrollbar fix for VB6, AnkSVN, a copy of the C# specification, and a couple of homebrew tools.

I go nowhere without puretext.exe. It's just a 28 Kb executable that gives you under Windows+V (or whatever key you want) what I would otherwise be doing quite often manually after hitting Ctrl+C somewhere:

Windows+R

N, O, T, E, P, A, D (if needed, often was still in my Run dialog...)

Enter

Ctrl+V

Ctrl+A

Ctrl+C

Alt+F4

N (for No)

Alt-Tab (correct number of times needed, if any...)

Ctrl+V

In other words: it pastes "pure text" from the clipboard, without any of the markup that might have been copied onto the clipboard with the text.

Any PC I work on for more than an hour - where I have permissions to get puretext.exe onto and running - I put it in C:\WINDOWS\, double-click it once, set it to autostart in its settings and always hide the icon in the task bar.

It pastes text from the clipboard as plain text, without any markup. In other words: the same you would get if you opened Notepad, pasted into that, select everything, copy it again to the clipboard and then paste into the actual destination. I'll edit my reply to elaborate.

I carry a VirtualBox hard drive file that contains the whole development environment for our project.

It takes about a minute to set up on a any new machine for development in a familiar environment.

Install VirtualBox, create a new virtual machine, plug in the usb drive, point the virtual machine to the hard drive file, boot into the dev environment from the virtual machien. Takes about a minute atop of the download time of VirtualBox.

I've been using this approach for a couple of months now. Here are some additional observations:Make your VM drive large (14 gigs here so it fits on the 16 gig stick); resizing VM drives is a b*tch and no 8 gigs is NOT enough, you will run out. How much space is used on your dev box by IDEs etc.? You get the idea.Needless to say, speed of the drive matters. You can also copy the VM image to the HD before you boot the VM. Which brings me to...Treat any specific VM image as completely disposable. This means check in or otherwise "shelf" your progress at a remote location, religiously.

UnixUtils are a set of commands of Unix ported to windows, so I only have to add a directory to the windows path and then i'm able to use most of the common linux command in the shell of a windows machine, making my job easier.

I would have to second Sean's recommendation for PortableApps, since it sounds from your example like you might be doing pc troubleshooting and not development work. PortableApps provides portable versions of a number of significant tools you might need that will run completely from a thumb drive, including Firefox (browser), Thunderbird (email), FileZilla (ftp), and Open Office (word processing, spreadsheet, database, etc.), 7-Zip (zip file management), etc. If you happen to be a .NET developer troubleshooting an application problem, you might want to check out SharpDevelop which will run completely from a thumb drive.

I would add LINQPad to this list. If you have to do anything at all with LINQ queries, it's must-have software. It has a self-contained executable so you could run it completely from a thumb drive if you wanted to.

However, if you're like me and tons of folks are asking you to deliver demons from their PC because they're not savvy users, then you'll also want to have a copy of a free virus protection software like AVG.

I keep my acme-sac (inferno-based vm) builds for all platforms I interact with - Win, Mac, Linux, BSD. That way I always have my preferred work environment with me. For Win, I also throw in cdb.exe so I can have a real debugger instead of that DevStudio monster.