Arduino GPRS shield caught fire

LukeZ:
Other than powering devices on at the same time (although even then there is always bound to be time differences of at least a few milliseconds), is there any practice recommended to somehow protect against this? It just seems like having power on one side of an equation is something that is going to happen all the time.

One method is to wire series resistors at all the digital input pins sized to limit current flow to be less then the maximum clamping diode current rating.

Lefty