The 2nd hard disk idea is a very good approach IMO. HD is now very cheap and offers the fastest backup possible. It is very safe because it is very unlikely you crash both your hard disk at the same time.
I believe most savy computer users do it this way. In fact, some high end servers that stores critical data do it this way. They have mirror disk drives for backups within the same machine.
My strategy was always separating my data from the "others" (programs, etc). So, everynight, I had a backup program that saves only the data. As for the "others", everytime I install a new program and got it to work satisfactorily, I will make a mirror image of the hard disk. This way it saves storage space and very efficient.
I think backing up via internet is not a good strategy - too slow.