I agree, if you have a finite and reasonable number of possible errors, the puppy/colored box idea should work great as long as each different error icon is unique enough (i.e., a puppy icon and a kitten icon would be fine, but I would avoid different types of puppies...the user will remember they saw a puppy, not necessarily what type of puppy).
Other possible ideas would be to just assign a number to your error and make it flash. Flashing gives a sense of urgency and, as long as your list of typical errors is small, the user should be able to recall a flashing number. If you get into the hundreds, this might not work so well.
"Be *excellent* to each other." -- Bill, or Ted, in Bill and Ted's Excellent Adventure