Another interesting topic for debate! This is great. I've always hated working on dirty grimy engines (or anything else for that matter!), but certainly have had my hands into grit & grime up to my elbows sometimes. I wipe down my tools before putting them away too.
Anyway, I have always kept my vehicle engines clean. Some reasonably clean, some way beyond that...
matheny9 made a statement about using a foaming tire shine to keep the plastic covers, etc. shining. I totally agree. I've been doing that for about 5 years now, using No Touch brand, and the results are great. It lifts off the dirt and gets under it with a slippery surface so it won't settle back down. Works GREAT. It doesn't harm the aluminum parts, and gives those a bit of a shine too. Do NOT get it on the belts or pulleys!!! I always take a paper towel and wipe down all the plastic surfaces for a better result, even though the name says "No Touch".
Now to the point of hot vs cold. Back in the day, I used to do it hot. Now, with higher operating temperatures, and various metal castings, there's no way I would hose it off unless I could touch every engine surface without burning my fingers. Not even if you have access to a hot water supply with your hose. I have a european turbodiesel and hitting a hot turbo with water is a big no-no! So my answer here is - hosing off a barely warm or cold engine is okay. Nothing else.
Electrical - the connectors are SO much better today, that I don't worry about that. I do exercise caution around the alternator so I don't spray directly into it.
Definitely spray through the radiator (preferably from the inside toward the front) to get rid of bugs and other clogs, salt and other chemicals. Never with a power-washer.
I don't recommend using a power-washer, but if you do, keep your distance, and know what areas you'll hit and what areas you'll avoid BEFORE you start.
A clean engine will run a bit cooler, and its easier to spot issues when they are still small.
Using degreasers (I use GUNK only if an engine is really gross and disgusting) can allow unpainted metal surfaces to deteriorate faster, as even a light coat of petroleum product provides protection from salt and other road chemicals.
If you live in the "rust belt", be sure to protect all metal surfaces when you are done cleaning. Wax works good. I think the foaming tire cleaner does a decent job of protecting too.