I am not an English native speaker, no, but when for instance reading the Penny Arcade cartoons, Ctrl-Alt-Delete cartoons, various gaming forums etc. I do get the feeling that there are slight differences in the usage of nerd, geek, and dork.
And more people seem to refer to themselves as geeks than as nerds.
Urbandictionary might not be the most reliable language source around but it definitely is fed and maintained by native speakers:
1177 up, 206 down
The term "geek" originally referred to the carnival performers whose act consisted of biting the heads off chickens and eating glass. Over time it came to be applied to anyone who got paid to do work considered odd or bizarre by mainstream society.
The term now enjoys a special status within the technical community, particularly among particularly knowledgable computer programmers. To identify oneself as a "geek" indicates a recognition that most people still consider programming computers to be a bizarre act, along with a certain fierce satisfaction in being very good at their inglorious profession.
That most software geeks now easily earn twice as much as the average laborer just sweetens their defiant embrace of the term.
Note: Unlike the word "nerd," which is always pejorative, "geek" often carries a positive connotation when used by one of the group. The use of the term by outsiders is considered insulting.
"If you really need the right answer, check with Bob; he's our resident alpha geek."
993 up, 278 down
Not to be confused with Nerd. A geek does not have to be smart, a Geek is someone who is generaly not athletic, and enjoys Video Games; Comic Books; being on the internet, and etc.
Only a geek would waste their time on the internet, defining geek on urbandictionary.com