How to become a hacker
Summary: Becoming a hacker is a worthwhile pursuit. Do you have what it takes to become a hacker?
You've read about the exploits of groups such as LulzSec, Anonymous and AntiSec. You've read my Kevin Mitnick interview with great interest. You've followed such famous programmers as Richard Stallman, Linus Torvalds, Marc Andreesen and Dennis Ritchie. And, now you want to become a hacker. But, how does one become a hacker? Is there some secret society with blood rites that tests your willingness to exploit and deliver malicious payloads to unsuspecting computer users? Or, do you have to sell your soul and pledge allegiance to an organized crime boss to break into this mysterious field?
It's much easier than that, but it isn't an overnight process.
It takes dedication, intelligence and an analytic mind. You must have a desire to solve problems, a knack for verbal and written communication and a persistence to try new approaches when solutions don't come easily.
To become a hacker, you first must have a keen interest in computers, how they work, their components and how computers communicate at the lowest level. If you aren't a programmer, you need programming skills.
Eric Raymond suggests that you learn Python first. After becoming comfortable with Python, you should learn C/C++, Java, Perl and LISP. Python, Java and Perl are all C-based languages but Python is an easier first language to grasp. LISP is an ancient language (in computer terms) but its approach will give you a different perspective on programming and will make you a better programmer and hacker.
You also need to obtain an open source operating system such as Linux, FreeBSD or OpenSolaris to use to hone your skills. Using existing code as a guide helps you learn to program.
Other than programming, what other skills do you need as a hacker?
Look back at the list of attributes given earlier: dedication, intelligence, analytic, problem-solving, communications and persistence.
These are less tangible points but no less important.
You'll need dedication because becoming a competent hacker doesn't happen quickly. Like any job, you need to start small, grow and set personal goals. You need to have at least average intelligence.
You do not have to have a genius-level IQ or be a MENSA member. You should possess a natural curiosity for solving problems and have an analytic or logical mind. You'll look at taking programs apart as often as you will look at how to build them so the ability to analyze a situation or a program is a very valuable skill.
Believe it or not, the ability to communicate verbally and in writing is extremely valuable and is an essential tool in your skillset. And, Eric Raymond further suggests that you need at least a functional grasp of English, the language of hacking.
Have you ever heard that "Persistence pays off"? It does. Especially in dealing with computers and programming. You'll learn more if you can be persistent with your work. A bit of an obsessive personality is actually a positive trait for hackers.
To become known in the field, you need to get involved.
Get involved in an open source project. Help with debugging code, assist with documentation and contribute to the project in positive ways. Project managers actively solicit assistance, so you won't have any trouble finding a project that needs your help. Start with SourceForge and search for projects for which you have an interest. You'll find developer contact information on the Summary page.
Having your name associated with a project gives you the street cred that you'll need going forward in your career.
You also should get some formal training. Yes, training is available. You can often find courses at community colleges, universities or online for ethical hacking or security.
Get involved with a local 2600 chapter or other hacking enthusiast group. Check online in your area or ask around at other user groups. It took me about ten minutes to find all the meetings and groups in my city and state. Remember to be respectful, humble and silent at the meetings. If you come on too strong or self-aggrandize, you'll not make any friends or allies and you could alienate yourself for a long time. You're a newbie. Listen and learn.
Now, for the difficult issues associated with becoming a hacker.
Don't enter into this field if your purpose or desire is to illegally hack or compromise computer systems. You'll get caught and possibly serve prison time for it or have to pay damages to your target. Can you really afford either one? Make positive choices for yourself. Becoming a hacker or security expert can bring financial rewards instead of negativity and problems. Use your powers for good.
And, don't be discouraged if your results aren't immediate. Learning any skill takes a long time--years perhaps. Don't try to rush things. Remember the fate of Anakin Skywalker who wanted to gain power and prominence too quickly.
It doesn't matter how old you are when you decide to discover hacking and programming. There's no minimum or maximum age for entering the field. Many hackers start out at a very young age (teen or even preteen) and progress through their lifetimes. Gray hair isn't shunned, it's revered as experience. So, don't worry about appearances.
Finally, read all that you can about computer security, hacking and programming.
And, as Richard Stallman would say, "Happy Hacking!"
If you have any resources that you'd like to share for newbies trying to learn the art, please post them in the Comments.
See Also:
Kick off your day with ZDNet's daily email newsletter. It's the freshest tech news and opinion, served hot. Get it.

Talkback
The Hacker term is not a perjorative
h-t-t-p://en.wikipedia.org/wiki/Hacker_%28programmer_subculture%29
By the way, Wikileaks founder Julian Assange was hacker, too
Revised
The material in this article is pretty much a rehash/ripoff of Eric Raymond's "How to become a hacker" (catb.org/~esr/faqs/hacker-howto.html) which is a document referring to the definition of hacker as software developer/open-source software contributor which is not a problem in itself but the author of this article is ripping the info and trying to weave it into a guide for the definition of hacker as someone who aims to audit the security of information systems. The author of this article is either confused, lazy, or both. Let's be honest here, this article is a fluff piece.
That was unkind. Do you have bile?
Consult a Physician.
RE: How to become a hacker
You're right where are my manners indeed.
RE: How to become a hacker
We need a new rating system. I'm convinced that 99% of all internet content is crap. The other 1% is probably useful. Using the 100 scale with 1 being the crappiest and 100 being the goodiest, I rate this article about 28. I rate the mundane comment a "1" and your comment also a "1". This reply is also a "1".
RE: How to become a hacker
Unkind? I don't think so. Of all participants here, I'm likely to be the least skilled. The article appealed to me because I haven't yet earned my junior novice decoder ring. For a person with more experience, 'mundane' seems appropriate.
You are reading his 2nd revision.
The first reply was entirely different and was quite unkind.
He did the right thing. Corrected it.
RE: How to become a hacker
Yes. I do believe that any Hacker-wannabe really should either be a genius if they don't want to get busted by a better, faster and stronger Hacker, or otherwise just check themselves before they wikikity-wreck themselves.
RE: How to become a hacker
RE: How to become a hacker
HACKER:
[originally, someone who makes furniture with an axe]
1. A person who enjoys exploring the details of programmable systems and how to stretch their capabilities, as opposed to most users, who prefer to learn only the minimum necessary.
2. One who programs enthusiastically (even obsessively) or who enjoys programming rather than just theorizing about programming.
3. A person capable of appreciating hack value.
4. A person who is good at programming quickly.
5. An expert at a particular program, or one who frequently does work using it or on it; as in `a UNIX hacker'. (Definitions 1 through 5 are correlated, and people who fit them congregate.)
6. An expert or enthusiast of any kind. One might be an astronomy hacker, for example.
7. One who enjoys the intellectual challenge of creatively overcoming or circumventing limitations.
8. [deprecated] A malicious meddler who tries to discover sensitive information by poking around. Hence "password hacker", "network hacker". The correct term is cracker.
RE: How to become a hacker
RE: How to become a hacker
I think we both know, that beyond the definition, what one does with the knowledge is certainly not moot. That while one may prefer not to apply a morality to something, does not mean one does not/should not exist with that something.
I believe that it's appropriate that everyone of all skill levels actually learn to identify precisely what they're doing, and just as well, what side of the law and 'morality', they may wish to end up on during that on-going process.
RE: How to become a hacker
You'r description about hacker's term is perfect. Thank you!
Don't forget about Hackerspaces...
Also, many cities have a Maker Faire where you can see exhibits of other peoples' hacking projects (software and hardware) and see what other people in your community are up to.
And the point is.... ???
How about CEH classes?
CEH = joke
I would not have taken this seriously...
RE: How to become a hacker
Because, I do object to your characterization that gray hair doesn't matter. Take a look at the people sitting around you. Nothing matters ~more~ in this field, as far as regular corporate hiring.
How's that for good clear English!