How did you learn programming the Arduino?

If you have a library local to you, check for a book entitled "Sams Teach yourself C in 24 hours"

It's not Arduino specific, but they are great books to get started in programming as a whole.

As mentioned, the tutorials on here are excellent as well.