Several times now I've accidentally shorted my board when it's powered by USB. This brings down the computer, I assume because it draws too much power. I'm not an electronics whiz, but it seems like this could be prevented somehow.
Your computer is supposed to prevent it by limiting the current available to the USB ports. A lot of computers seem to skip this :-(
they've included USB short protection in the Diecimilia. It's a little thermal fuse that auto-resets after a short. They're called PPTC's generically; I'm not sure what model they used on the Diecimilia, but these are typicaly 30 cents if you wanted to add one to your NG board. The tricky thing is finding the right value.
If you want to protect against shorts, the exact trip value of the "fuse" you use isn't critical. Your PC power supply will happily source 10s of amps at 5V; far more than an Arudino project. Stick a 1A fuse in there and you're probably in good shape. The problem with PTC-type fuses (and perhaps with old-fashioned fuses as well) is that they react relatively slowly to overloads; perhaps not quickly enough to prevent a short from bringing down the host computer (in fact, I may have been overly harsh in by criticism against your PC; PTC type protection in the PC side is a pretty common and cheap way to limit USB power, so perhaps your PC has protection, but that protection is insufficient against a short because it is too slow.) A small-value resistor might be more useful; a 1 ohm resistor would limit short-circuit current to 5A, and produce only 1V drop at the 1A that's more likely to be a realistic limit for an ardurino project. (Needs to be 5W+, though, making it rather large.) The resulting variable voltage might not be so good for "hard analog" projects, though.
I did some thinking about how to provide a "fast" current limiting circuit, and didn't come up with any brilliant ideas that didn't result in a significant voltage drop or a lot of additional complexity and/or size. (The easiest circuit (conceptually speaking) would be a LDO or SEPIC voltage regulator powered from the USB port; most integrated voltage regulators have all sorts of useful over-current limiting features.)
If it's problem with your computer, a workaround might be to purchase an inexpensive external POWERED USB hub that would isolate (perhaps with some minor modifications) the Arduino/etc from the PC power supply completely.
I wonder if a compliant hub wouldn't be in order? Preferably one that had an external power supply.