A hacker is a computer enthusiast. At least three major hacker subcultures, characterized by their largely distinct historical
development, use the term in their jargon for self-identification.<1> They are centered around
different, but partially overlapping aspects of computers and have conflicting ideas about who may legitimately be called a hacker (see hacker definition controversy). In computer
security, a hacker is someone who focuses on security mechanisms. In common use, which was popularized by the mass media, that refers to someone who illegally breaks into computer and network systems. However, parts of the subculture see their aim in correcting security problems and use the word in a positive sense. This use is contrasted by the different understanding of the word as a person who follows a spirit of playful cleverness and loves programming. It is found in an originally academic movement unrelated to computer security and most visibly associated with free software and open source. In a third meaning, the term refers to computer hobbyists who push the limits of their software or hardware.