From Wikipedia, the free encyclopedia
A hacker is often someone who creates and modifies computer software and computer hardware, including computer programming, administration, and security-related items. A hacker is also someone who modifies electronics, for example, ham radio transceivers, printers or even home sprinkler systems to get extra functionality or performance. The term usually bears strong connotations, but may be either favorable or denigrating depending on cultural context (see the Hacker definition controversy).
- In computer programming, a hacker is a software designer and programmer who builds elegant, beautiful programs and systems. A hacker can also be a programmer who hacks or reaches a goal by employing a series of modifications to exploit or extend existing code or resources. For some, "hacker" has a negative connotation and refers to a person who "hacks" or uses kludges to accomplish programming tasks that are ugly, inelegant, and inefficient. This negative form of the noun "hack" is even used incorrectly among users of the positive sense of "hacker".
- In computer security, a hacker is a person who specializes in work with the security mechanisms for computer and network systems. While including those who endeavor to strengthen such mechanisms, it more often is used incorrectly, especially in the mass media, to refer to those who seek access despite them.
- In other technical fields, hacker is extended to mean a person who makes things work beyond perceived limits through their own technical skill, such as a hardware hacker, or reality hacker.
- In hacker culture, a hacker is a person who has attained a certain social status and is recognized among members of the culture for commitment to the culture's values and a certain amount of technical knowledge.
Categories of hacker
The hacker community, the set of people who would describe themselves as hackers or described by others as hackers, falls into at least three partially overlapping categories. Sometimes alternate terms such as "cracker" are used in an attempt to more exactly distinguish which category of hacker is intended, or when attempting to put a contextual distance between the categories due to the Hacker definition controversy.
Hacker: Highly skilled programmer
This mainly positive usage of hacker refers to one who knows a (sometimes specified) set of programming interfaces well enough to program rapidly and expertly. This type of hacker is well-respected (although the term still carries some of the meaning of hack), and is capable of developing programs without adequate planning or where pre-planning is difficult or impossible to achieve. This situation gives freedom and the ability to be creative against a methodical and careful progress. At their best, hackers can be very productive. The technical downside of hacker productivity is often in maintainability, documentation, and completion. Very talented hackers may become bored with a project once they have figured out all of the hard parts, and be unwilling to finish off the "details". This attitude can cause friction in environments where other programmers are expected to pick up the half finished work, decipher the structures and ideas, and bullet-proof the code. In other cases, where a hacker is willing to maintain their own code, a company may be unable to find anyone else who is capable or willing to dig through code to maintain the program if the original programmer moves on to a new job.
Additionally, there is sometimes a social downside associated with hacking. The stereotype of a hacker as having gained technical ability at a cost in social ability has been observed many individuals, including noted psychologist Phillip Zimbardo. Some researches have speculated on a possible link between hacking and conditions in the Autism spectrum, such as Asperger's Syndrome; for example, Bram Cohen, the hacker who created the Bittorrent protocol, is believed by many (including himself) to have Asperger's. While such social stunting from whatever cause is not universal among hackers, nor even only restricted to hackers, the difficulty in relating to others and the often abrasive personalities of some hackers makes some of them difficult to work with or to organize into teams. On the other hand, it is not uncommon for hackers to thrive on social interaction.
Hacker: Computer and network security expert
In the networking sense, a hacker is one who specializes in work with the access control mechanisms for computer and network systems. This includes individuals who work toward maintaining and improving the integrity of such mechanisms. However, the most common usage of hacker in this respect refers to someone who exploits systems or gains unauthorized access by means of clever tactics and detailed knowledge, while taking advantage of any carelessness or ignorance on the part of system operators. This use of hacker as intruder (frequent in the media) generally has a strong negative connotation, and is disparaged and discouraged within the computer community, resulting in the modern Hacker definition controversy.
For such hackers specializing in intrusion, the highly derogatory term script kiddies is often used to indicate those who either claim to have far more skill than they actually have, or who exclusively use programs developed by others to achieve a successful security exploit.
Hacker: Hardware modifier
Another type of hacker is one who creates novel hardware modifications. At the most basic end of this spectrum are those who make frequent changes to the hardware in their computers using standard components, or make semi-cosmetic themed modifications to the appearance of the machine. This type of Hacker modifes his/her computer for performance needs and/or aesthetics. These changes often include adding memory, storage or LEDs and cold cathode tubes for light effects. These people often show off their talents in contests, and many enjoy LAN parties. At the more advanced end of the hardware hackers are those who modify hardware (not limited to computers) to expand capabilities; this group blurs into the culture of hobbyist inventors and professional electronics engineering. An example of such modification includes the addition of TCP/IP Internet capabilities to a number of vending machines and coffee makers during the late 1980s and early 1990s.
Hackers who have the ability to write circuit-level code, device drivers, firmware, low-level networking, (and even more impressively, using these techniques to make devices do things outside of their spec sheets), are typically in very high regard among hacker communities. This is primarily due to the enormous difficulty, complexity and specialized domain knowledge required for this type of work, as well as the electrical engineering expertise that plays a large role. Such hackers are rare, and almost always considered to be wizards or gurus of a very high degree.
There are theoretical types of hackers who are considered to possess an atypical level of skill beyond that of other meanings of the positive form of "hacker", which include the Guru and the Wizard.
In some portions of the computer community, a Wizard is one who can do anything a hacker can, but elegantly; while a Guru not only can do so elegantly, but instruct those who do not know how. In other sub-communities, a Guru is one with a very broad degree of expertise, while a Wizard is expert in a very narrow field. In practice, such exact distinctions are usually more at home in a RPG world, and not often heard in actual conversation.
Within the mainstream media, hackers are often characterised as strange, mysterious, reclusive, and especially tricky. This may be seen as an extension of the human tendency to stigmatise what is ill-understood, which used often to be applied to natural philosophers who were often thought by superstitious neighbours to be wizards or mystics. One such example was Leonardo da Vinci, who was thought to be a necromancer due to his extensive (and, at the time, extraordinary) knowledge of human anatomy and his study of dead bodies.
Due to the overlapping nature of the hacker concept space, many of these individuals could be included in more than one category. See also Hacker (computer security), which has a list of people in that category, including criminal or unethical hackers.
- Tim Berners-Lee, inventor of the world wide web, while a student in the 1970s, was banned from access to the Oxford University computer for hacking access.
- Dan Bernstein, the author of qmail and djbdns, also a mathematician and cryptographer.
- John Carmack, a widely recognized and influential game programmer. Through his work, he has made significant contributions to the field of 3D computer graphics and his games have sold in the millions. In 1999, Carmack appeared as number 10 in TIME's list of the 50 most influential people in technology.
- Shawn Fanning, the author of napster
- Bill Gosper, mathematician and programmer, and contemporary of Richard Greenblatt.
- Richard Greenblatt, primary designer of the MIT Lisp machine and pioneer of computerized chess.
- Grace Hopper, the first programmer of the Mark I Calculator, also developed the first compiler for a computer programming language.
- Bill Joy, the co-founder of Sun Microsystems and author of many fundamental UNIX utilities. He wrote the original SunOS in one weekend, according to Nerds 2.0.1: A Brief History of the Internet
- Mel Kaye, the archetypal Real Programmer, was credited with doing "the bulk of the programming" for the Royal McBee LGP-30 drum-memory computer in the 1950s. Ed Nather, another hacker, published the widely acclaimed "Story of Mel" in the 1980s.
- Donald Knuth, best known for practically creating the field of algorithm analysis, coding the TeX typesetting system, and writing The Art of Computer Programming - one of the most respected references in the field.
- Rasmus Lerdorf, the creator of the PHP scripting language.
- John McCarthy, the inventor of the Lisp programming language. Also coined the term "Artificial Intelligence."
- Rob Pike, a software engineer and author. He is best known for his work at Bell Labs, where he was a member of the Unix team and was involved in the creation of the Plan 9 and Inferno operating systems.
- Dennis Ritchie and Ken Thompson, who created Unix in 1969. Ritchie is also notable for having created the C programming language, from Ken Thompson's B programming language.
- Guido van Rossum, the creator of the Python programming language.
- Randal Schwartz, Perl programming language pioneer, billed himself as "Just another Perl hacker (but not what the media calls "'hacker'!)" This was in reference to characterizations made during his criminal prosecution for unauthorized computer access.
- Richard Stallman, the founder of the free software movement and the GNU project, and original author of the GPL, Emacs, GDB, and the GNU Compiler Collection. Acclaimed in Steven Levy's Hackers: Heroes of the Computer Revolution as "The Last True Hacker."
- Bjarne Stroustrup, the creator of the C++ programming language.
- Theo de Raadt, the founder of the OpenBSD project.
- Michael Tiemann, a co-founder of Cygnus Solutions, president of the Open Source Initiative. Made many contributions to the GNU C compiler, GNU debugger, and many other GNU development tools. Author of the GNU C++ compiler.
- Linus Torvalds, who was a computer science student at the University of Helsinki when he began writing the Linux kernel in 1991.
- Wietse Venema, best known for writing the Postfix mail system and co-creating (with Dan Farmer) the Security Administrator Tool for Analyzing Networks (SATAN), a remote vulnerability scanner.
- Larry Wall, the creator of the Perl programming language.
- Steve Wozniak, a co-founder of Apple Computer (with Steve Jobs). Got his start making devices for phone phreaking, working with John Draper.
Hacker media personalities
Listed below are individuals who, while fitting in one or more of the above categories, are currently more widely famous (especially among the general public) for their media presence than their technical accomplishments.
- Loyd Blankenship (also known as The Mentor) — Former LOD member. Author of The Conscience of a Hacker (Hacker's Manifesto).
- Eric Corley (also known as Emmanuel Goldstein) — Long standing publisher of 2600: The Hacker Quarterly and founder of the H.O.P.E. conferences. He has been part of the hacker community since the late '70s.
- CULT OF THE DEAD COW — A high profile hacker group that has both made news and been consulted by the media on numerous occasions.
- William Henry Gates III (Bill Gates) — is the co-founder and chairman of Microsoft Corporation. Although he personally demonstrated considerable personal coding skill early in his company's history, he is most widely recognizable today as the world's richest individual. Formerly CEO, in June 2006 he also stepped down as chief software architect, with the intention of stepping down as chairman in July 2008. 
- Patrick K. Kroupa (also known as Lord Digital) — Former LOD member, co-founder of MindVox, author of Phantom Access programs, and MindVox: The Overture. Appears in over 20 books and hundreds of media and press articles.
- Gary McKinnon — accused of hacking into 97 United States military and NASA computers in 2001 and 2002. 
- Kevin Mitnick — A former computer criminal who now (since his release from prison in 2000) speaks, consults, and authors books about social engineering and network security.
- Neal Patrick and The 414s — teenage hackers who gained brief but widespread media coverage in 1983.
- Bruce Perens — Also one of the founders of the Open Source Initiative. He was the former Debian GNU/Linux Project Leader, and is the primary author of the Open Source Definition.
- Eric S. Raymond — One of the founders of the Open Source Initiative. He wrote the famous text The Cathedral and the Bazaar and many other essays. He also maintains the Jargon File for the Hacker culture, which was previously maintained by Guy L. Steele, Jr..
- Hacker culture
- Hacker ethic
- Computer crime
- Computer security
- Life hacking
- Hacker Emblem
- Hacker Manifesto
- Reality hacker
- Wetware hacker
- Information wants to be free
- Video hacker
- The Hacker Test
- The Snoopy Calendar program is the classic Fortran program referenced in the Hacker Test
- List of fictional hackers
- ^ "The Hacker Papers" in Psychology Today August 1980
- ^ USA Today Article 
- ^ Wired Article 
- ^ For example, Theo de Raadt and Richard Stallman http://www.softpanorama.org/People/Stallman/prophet.shtml
- ^ BBC News 31 Dec 2002 Web's inventor gets a knighthood - "Banned from using the university's computer when he and a friend were caught hacking" Accesssed October 2006.
- ^ http://ei.cs.vt.edu/~history/Hopper.Danis.html
- ^ http://www.hopper.navy.mil/grace/grace.htm
- ^ http://catb.org/~esr/jargon/html/R/Real-Programmer.html
- ^ http://catb.org/jargon/html/story-of-mel.html
- Levy, Steven (1984). Hackers: Heroes of the Computer Revolution. Doubleday. ISBN 0-385-19195-2.
- Sterling, Bruce (1992). The Hacker Crackdown. Bantam. ISBN 0-553-08058-X.
- Slatalla, Michelle; Joshua Quittner (1995). Masters of Deception: The Gang That Ruled Cyberspace. HarperCollins. ISBN 0-06-017030-1.
- Dreyfus, Suelette (1997). Underground: Tales of Hacking, Madness and Obsession on the Electronic Frontier. Mandarin. ISBN 1-86330-595-5.
- Verton, Dan (2002). The Hacker Diaries : Confessions of Teenage Hackers. McGraw-Hill Osborne Media. ISBN 0-07-222364-2.
- Certified Ethical Hacker
- Certified Information Security Manager
- Certified Information System Auditor
Dictionary definitions from Wiktionary
Textbooks from Wikibooks
Quotations from Wikiquote
Source texts from Wikisource
Images and media from Commons
News stories from Wikinews
Learning resources from Wikiversity
- The Jargon File
- The New Jargon File: An effort to establish an open hacker culture document, in the tradition of the Jargon File
- How To Become A Hacker by Eric S. Raymond
- On Hacking by Richard M. Stallman
- The MIT Gallery of Hacks