In computing, a hacker is any skilled computer expert that uses their technical knowledge to overcome a problem. While "hacker" can refer to any computer programmer, the term has become associated in popular culture with a "security hacker", someone who, with their technical knowledge, uses bugs or exploits to break into computer systems.
Hacker culture, an idea derived from a community of enthusiast computer programmers and systems designers, in the 1960s around the Massachusetts Institute of Technology's (MIT's) Tech Model Railroad Club (TMRC) and MIT Artificial Intelligence Laboratory. The hobbyist home computing community, focusing on hardware in the late 1970s (e.g. the Homebrew Computer Club) and on software (video games,software cracking, the demoscene) in the 1980s/1990s. Later, this would go on to encompass many new definitions such as art, and Life hacking.
Security hacker. People involved with circumvention of computer security.
White hats are hackers employed with the efforts of keeping data safe from other hackers by looking for loopholes and hackable areas. This type of hacker typically gets paid quite well, and receives no jail time due to the consent of the company that hired them.
Grey hats are hackers who are neither good nor bad, and often include people who hack 'for fun' or to 'troll'. They may both fix and exploit, though grey hats are usually associated with black hat hackers.