Someone who is passionate about their technology or field, and is normally quite good a it. For example, a Hacker might be a Geek, but doesn’t necessarily have to, while equally you can have law geeks or astronomy geeks or even rugby geeks. Some Geeks resent the term and would prefer something more glamarous to replace it, like William Gibson's Cowboys, but many view it as a compliment – a statement of respect towards one's ability or knowledge.
In pre-InterNet land, a Nerd and a Geek were roughly the same thing. Today, a Nerd is the stereotypical RPG-playing social outcast who is so tied up in their passion they don't see anything else, like making time for PersonalHygiene or stepping into the BigBlueRoom.