I would definitely say there is a difference between geeks and nerds. Another distinction is nerds know how to program and such, but more out of necessity in school, work etc. than fun. Geeks are the ones that go home from work and find scenarios and problems that give them reasons to fire up C++.
I have long been proud to distinguish myself as not a geek. However, I'm realizing I may be geekier than I thought. The other day I used Google Earth and Matlab to create a plot of the elevation changes from my Apartment to UT. Just in case I decided to ride my bike to school.