What's the reset button for?

I've used the arduino controller for many years and have never figured out what the reset button is for; never had to use it. What is it?

When you push the reset button, the Atmega chip resets, causing the bootloader to run, and then the program loaded. On older boards without the auto reset functionality, you have to push the reset button every time you want to upload a program (I prefer it actually :)).

It's also useful for restarting your program without having to remove power.

Cool! I assume that the program in memory starts from line 1 and not where ever the program stopped?

I assume that the program in memory starts from line 1

It dose.

not where ever the program stopped?

It doesn't

Supposed you have a program that calibrated say ambient light levels when it started up, in the setUp() section. This code only ever runs either when you first plug it in or when you press the reset button.