ie8 fix
madison

Zero Day

Ryan Naraine, Emil Protalinski and Dancho Danchev

How to become a hacker

By | October 3, 2011, 9:39am PDT

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:

What is a hacker?

Lives of others - two aspects of social engineering

Hire hackers to catch other hackers?

Kick off your day with ZDNet's daily e-mail newsletter. It's the freshest tech news and opinion, served hot. Get it.

Topics

Kenneth 'Ken' Hess is a full-time Windows and Linux system administrator with over 15 years of experience with Mac, Linux, UNIX, and Windows systems in large multi-data center environments.

Disclosure

Ken Hess

My full-time employer is EDS (HP). I write as a freelancer for ZDNet. The postings and opinions on this blog are my own and don't necessarily represent EDS's, HP's, their subsidiaries or affiliates positions, strategies or opinions. I own no investments or direct financial instruments in the companies I write about.

Biography

Ken Hess

Kenneth 'Ken' Hess is a full-time Windows and Linux system administrator with over 15 years of experience with Mac, Linux, UNIX, and Windows systems in large multi-data center environments.

Ken writes on a variety of topics including interoperability, virtualization, data center operations, databases, and open source software. He has written and co-written books on Linux, databases, and virtualization. He currently writes a System Administration column for Linux Magazine and is a regular contributor to Linux User & Developer magazine, ServerWatch.com's Trends and InfoStor. He often contributes to other online and print publications as well.

His first computer was a Commodore VIC-20, which he purchased because William Shatner was in the commercials.

In his limited spare time, Ken enjoys painting, drawing, and flinging angry birds at fortified pigs.

Related Discussions on TechRepublic

Did you know you can take part in these discussions with your ZDNet membership?
43
Comments

Join the conversation!

Just In

Thoughts on the negative comments
teancum6302 Updated - 10th Oct
I believe this article was written for a specific target audience. That audience is people who are interested in becoming a hacker, but don't know much about computers. I think of my teenage son. For him, this article has some great advice. For example, the article suggests an aspiring hacker should start out learning python - followed by the other languages mentioned. Starting with python is great advice for the reasons mentioned. Also, I believe the combination of languages mentioned will greatly help develop an aspiring hacker's programming (hacking) skills. I would add that an aspiring hacker should obtain both A+ and Network+ certifications prior to delving into the programming.

For those who criticized this article, I believe you are deserving of some critique yourselves for the following reason: you fail to recognize an article (or any piece of literature) has a target audience. If you are already a computer hacker/expert or even an intermediate hacker, you are not the target audience of this article. For the novice, this article is a good piece. Your criticisms indicate that you have not been well trained in written communications.
0 Votes
+ -
The Hacker term is not a perjorative
Dietrich T. Schmitz * Your Linux Advocate 3rd Oct
when used in this story's context:

h-t-t-p://en.wikipedia.org/wiki/Hacker_%28programmer_subculture%29
@Dietrich T. Schmitz * Your Linux Advocate
0 Votes
+ -
Revised
tdyz Updated - 5th Oct
I'm going to edit this post again. I'm standing by my original stance that this article is simply useless. I don't know why authors write these type of articles that provide nothing new or have any substance, maybe it is just to get their names out there.

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.
0 Votes
+ -
That was unkind. Do you have bile?
Dietrich T. Schmitz * Your Linux Advocate 3rd Oct
@tdyz
Consult a Physician.
0 Votes
+ -
@Dietrich T. Schmitz * Your Linux Advocate

You're right where are my manners indeed.
0 Votes
+ -
RE: How to become a hacker
webprogrammerdude 3rd Oct
@Dietrich T. Schmitz * Your Linux Advocate

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".
0 Votes
+ -
@Dietrich T. Schmitz * Your Linux Advocate,
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.
0 Votes
+ -
You are reading his 2nd revision.
Dietrich T. Schmitz * Your Linux Advocate 4th Oct
@nkfro
The first reply was entirely different and was quite unkind.
He did the right thing. Corrected it.
0 Votes
+ -
RE: How to become a hacker
great-ish-soul 4th Oct
@Dietrich T. Schmitz * Your Linux Advocate
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.
0 Votes
+ -
RE: How to become a hacker
jdm0830 6th Oct
@tdyz I agree. Total fluff piece.
0 Votes
+ -
RE: How to become a hacker
benched42 3rd Oct
Excellent article. Too many times in today's press we see the term "hacker" used when it should be either "black-hat hacker" or "cracker". It's time the press learned...

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.
0 Votes
+ -
RE: How to become a hacker
ITSamurai 3rd Oct
@benched42 I prefer not to add a positive or negative morality to the term hacker. It is very simply someone who wants to live with a deeper understanding of how the world around them works. The hacker mentality is as old as man himself - fire and the wheel being two of the earliest hacks we knew. Hackers take the existing rule set and find ways to manipulate it and do things that aren't in the manual (and often void warranties.) The only place, in my humble opinion, the terms hacker and cracker belong are in the corporate world. It's like trying to differentiate between the Jedi and Sith - at the end of the day both use the force to try and mold the galaxy into their vision of what it should be - but the Force itself is about balance and requires both sides of the coin. Also depending on the cirlce a cracker is simply a hacker that specializes in cracking encryption and that is not always malacious. At the end of the day all knowledge can be used for good or evil, it is up to the wielder, a hacker is simply someone who lives on the bleeding edge seeking that which is yet unknown regardless of the topic. How they use that knowledge is a moot point.
0 Votes
+ -
RE: How to become a hacker
Tora1337 4th Oct
@ITSamurai Of course, I'm going to presume that in terms of defining what a hacker is/does, what they do with that knowledge is moot.

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.
0 Votes
+ -
RE: How to become a hacker
eirearmenia 4th Oct
@ITSamurai
You'r description about hacker's term is perfect. Thank you!
0 Votes
+ -
Don't forget about Hackerspaces in various cities throughout the country. These are great resources to pick up skills and ask questions of fellow hackers. Many of them are free, and may even include community hardware such as soldering irons, CAMs, prototype printers, and various electronic equipment for your various hacking needs. happy

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.
0 Votes
+ -
And the point is.... ???
leskern Updated - 4th Oct
Aspiring to be a hacker is exactly like wanting to live in your mom's basement, eating Cheeto's, and living in a fantasy world where you think you are actually doing something worthwhile. You are not. It's sad really... all that effort to produce exactly nothing. Why not use your programming skills to make an app everyone would want that helps someone or some thing? That too much to ask? But it's a free world, so go waste your life. But know that if you **** with ME and my own I will rain down upon you like the Four Horsemen of the Apocalypse. Loser.
0 Votes
+ -
How about CEH classes?
Arshammm 3rd Oct
For instance, you can get a Certified Ethical Hacker cert by taking a course like this: http://www.phoenixts.com/it-courses/certified-ethical-hacker-ceh-certification-dc-md
0 Votes
+ -
CEH = joke
magallanes 3rd Oct
@Arshammm
0 Votes
+ -
...if he hadn't thrown the Anakin Skywalker reference in there at the end. Strong with the hacking, this one is.
0 Votes
+ -
RE: How to become a hacker
SuzCorner 3rd Oct
I am old enough to remember when the term "hacker" simply meant "good programmer", and the term "cracker" hadn't been invented yet, because security wasn't so much an issue because computers didn't talk to each other. I am also old enough to remember that C is itself based on Fortran. But I do keep up in my field. I can't stop doing what I love, even if it's pure freelance.

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!
0 Votes
+ -
Contributr
@SuzCorner

I didn't say anything negative or bad about gray hair.
0 Votes
+ -
Go deep for a full understanding
pwatson Updated - 4th Oct
Learn every command and configuration of at least two debuggers.

Study machine architecture; registers, addressing, memory organization.

Know what is in /etc/services
0 Votes
+ -
lol.
A hacker needs
html
unix shell
c/c++
and assembler.

Some Perl and nothing more.

Python is poop.
0 Votes
+ -
Another definition of a hacker
fit.fix007 3rd Oct
Hacker: Someone who modifies or uses a programme/OS/ or hardware in a novel ways to get around its limitations or use in a way it was not intended or designed for??
0 Votes
+ -
RE: How to become a hacker
SuzCorner 4th Oct
@fit.fix007 Yes! That's probably where the word "hacker" itself comes from - somebody who could hack code apart and put it back together (re-assemble/re-compile) into something that worked better, or did something else entirely. That takes a good programmer, to be able to both read & write code, and know where to go with the hacked off pieces of it.
0 Votes
+ -
Read Read Read
heidx 3rd Oct
I was aware of some obsession being an asset, but was pleasantly surprised by the comments on communication skills. No one can try every possibility and being able to draw on others experience is critical.
Being able to offer that experience is where you start turning the corner by giving back.
0 Votes
+ -
Giving back. Very nice.
Dietrich T. Schmitz * Your Linux Advocate 4th Oct
@heidx

Thank you.
0 Votes
+ -
hjgyuf
kingsain 3rd Oct
Top sex films, Sex tool for sell that you will like them ,welcome to http://url7.me/5ph4
0 Votes
+ -
Hey this sounds cool
xangpow 3rd Oct
When I first read the title I thought "That would be interesting to know." Then I read "...you should learn C/C++..." then I thought "OK, im out." lol
0 Votes
+ -
well thats sounds cool
xangpow 3rd Oct
When I first read the title I thought "That would be interesting to know." Then I read "...you should learn C/C++..." then I thought "OK, im out." lol
0 Votes
+ -
And then I read your reply and thought
Dietrich T. Schmitz * Your Linux Advocate 4th Oct
@xangpow
A mind is a terrible thing to waste.

Start by getting a copy of K&R. Read Read Read is key.
0 Votes
+ -
RE: How to become a hacker
xangpow 4th Oct
@Dietrich T. Schmitz * Your Linux Advocate
YaY story time happy

A while back I had a friend that was GREAT at math (I'm not so much) She took Calculus classes as a freshman in high school and aced everything. When we graduated I talked to her and found out that she was taking computer programing. She said that when she got to her C++ class SHE thought it was hard. Thats when I knew I wouldnt be doing computer programming and stayed on the hardware side of the house. lol
0 Votes
+ -
RE: How to become a hacker
pdickey043@... 4th Oct
@xangpow In reference to your comment about your friend: I think that's why they recommend learning Python first. Since it's a "C" derivative, and easier to learn, it will ease you into C. Java is another one, although having learned Java, I'm not entirely sure how well it helped me to learn C.
0 Votes
+ -
RE: How to become a hacker
mclairmont 4th Oct
It has always been a dream career of mine to become an ethical hacker, but outside of taking advanced security college courses and taking a class to learn about backtrack, I didnt really know where to start. While other people have nit picked apart the english side of things, I thank you for taking the time to write this and give me a sense of direction with what I need to do/learn to get into the field and more in depth with using all forms of Linux.
0 Votes
+ -
RE: How to become a hacker
Three_finger_reboot Updated - 4th Oct
Look folks... Star Wars just wasn't and isn't that great. Time to get some new analogies (but PLEASE, don't turn to the hobbits).
0 Votes
+ -
Citation needed?
alex.esplin 4th Oct
I see that you've raided some content from esr's "How to become a hacker" essay. Link?
0 Votes
+ -
Contributr
@alex.esplin

I actually referred to Eric Raymond's information twice in the article.
0 Votes
+ -
RE: How to become a hacker
rxantos 4th Oct
Hacking is when you lean the insides of technology and use them for uses that the creators of that technology did not forseen. Thus 90% of people that call themselves hackers are just hacks. happy
0 Votes
+ -
Why ninjas?
Sitwon 4th Oct
While some hackers are also otakus, it's inaccurate and unfair to imply that all of us are. At HacDC we don't discriminate.
http://www.flickr.com/photos/notbrucelee/5748818953/
0 Votes
+ -
RE: How to become a hacker
great-ish-soul 4th Oct
Cracker-ass cracker!
0 Votes
+ -
RE: How to become a hacker
bb_apptix 5th Oct
"To become a hacker, you first must have a keen interest in computers"

Stunning.

"learn Python first. After becoming comfortable with Python, you should learn C/C++, Java, Perl and LISP."

Great. I should be ready by... next Tuesday. Either that or 10 years from now, but by then all the technology will have changed.
0 Votes
+ -
Fluff Piece
tdyz Updated - 5th Oct
I don't know why authors write these type of articles that provide nothing new or have any substance, maybe it is just to get their names out there.

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.
0 Votes
+ -
Thoughts on the negative comments
teancum6302 Updated - 10th Oct
I believe this article was written for a specific target audience. That audience is people who are interested in becoming a hacker, but don't know much about computers. I think of my teenage son. For him, this article has some great advice. For example, the article suggests an aspiring hacker should start out learning python - followed by the other languages mentioned. Starting with python is great advice for the reasons mentioned. Also, I believe the combination of languages mentioned will greatly help develop an aspiring hacker's programming (hacking) skills. I would add that an aspiring hacker should obtain both A+ and Network+ certifications prior to delving into the programming.

For those who criticized this article, I believe you are deserving of some critique yourselves for the following reason: you fail to recognize an article (or any piece of literature) has a target audience. If you are already a computer hacker/expert or even an intermediate hacker, you are not the target audience of this article. For the novice, this article is a good piece. Your criticisms indicate that you have not been well trained in written communications.

Join the conversation!

Formatting +
BB Codes - Note: HTML is not supported in forums
  • [b] Bold [/b]
  • [i] Italic [/i]
  • [u] Underline [/u]
  • [s] Strikethrough [/s]
  • [q] "Quote" [/q]
  • [ol][*] 1. Ordered List [/ol]
  • [ul][*] · Unordered List [/ul]
  • [pre] Preformat [/pre]
  • [quote] "Blockquote" [/quote]
ie8 fix
Click Here
ie8 fix

The best of ZDNet, delivered

ZDNet Newsletters

Get the best of ZDNet delivered straight to your inbox

Facebook Activity

White Papers, Webcasts, & Resources
ie8 fix
ie8 fix