A good rule to follow might be not to connect stuff to / disconnect stuff from chips while powered, but to turn the thing off.
Grounds should be connected, unless you know you want them separated.
Check every connection twice.
Install heatsinks when necessary.
And don't forget the most important rule, also known as the Fourth Law of Thermodynamics: If anything can go wrong, it will.
@ Jim, No I disagree with your assessment "Crap" is what you say when you do delete your last three day's of work.. I've done it with code and schematics and PCB artwork too. I think personally that it is a "Rite of Passage", something that simply is a part of learning that you aren't infallable..
You don't learn to program by losing stuff... you might learn to be a better housekeeper, as in being more careful and organised, and do backups and stuff, but those are disciplines that any computer user needs. They have nothing to do with one's ability to turn a program design into working code.
accidentally deleting/overwriting files is part of learning to program
I hope you accidentally left the smiley off there, because that's crap....
Completely disagree.
JimboZA:
you might learn to be a better housekeeper, as in being more careful and organised, and do backups and stuff,
Okay. And how do you learn why that is important and the methods that work best for you?
fungus:
... like accidentally deleting/overwriting files is part of learning to program.
Oh right, that's how.
It's like writing good comments. You can tell a new programmer until you run out breath why comments are important. Until they come back to their own code weeks later, they won't understand the importance.
One important thing is to be extra careful if any part of your circuit is using more than +5V or less than 0V - voltages out of
range can instantly destroy chips expecting a max of +5.5V. This analogous to exceeding a pressure-vessel's pressure rating,
if exceeded the device can fail completely and rapidly
If using significant power and high currents then a fuse is always a good idea. Also check for overheating components, use
current-limited supply for initial testing (so short circuits aren't going to melt anything).
And double-checking your connections as has already been mentioned - and before applying power you can measure for
shorts between power rails and ground with a multimeter - one simple check catches many possible problems before any
damage can be done.
a) Resettable fuses have a limited endurance (number of times you can trip them)
b) You can replace an ATmega328P (the chip on the Arduino) for about $3, and they're quite hard to destroy, read these forums for examples of the abuse they survive...
fungus:
b) You can replace an ATmega328P (the chip on the Arduino) for about $3, and they're quite hard to destroy, read these forums for examples of the abuse they survive...
Not really a precaution, but a bit of pro-active planning: order a couple of ATmega328P with the Arduino bootloader on them. That way if you do take one out (or an IO pin), you can swap it and move on.
The problem with always being right, and never ever making any mistakes, is ...
"most" of us are just humans after all. Such is life.
The best rule to remember is: "measure twice, cut once" [ie, always double-check,
look before you leap, etc], but in real life, you usually have to add "file to fit".
That all being said, the single best way to protect Arduinos from early death is
to use small-value series resistors in the I/O lines, eg 150 to 330 ohms.