9. Frequently Asked Questions
Q: Will you teach me how to hack?
Since first publishing this page, I've gotten several requests a week
from people to "teach me all about hacking". Unfortunately, I don't
have the time or energy to do this; my own hacking projects take up
110% of my time.
Even if I did, hacking is an attitude and skill you basically have to
teach yourself. You'll find that while real hackers want to help you,
they won't respect you if you beg to be spoon-fed everything they
know.
Learn a few things first. Show that you're trying, that you're
capable of learning on your own. Then go to the hackers you meet with
specific questions.
How can I get started, then?
The best way for you to get started would probably be to go to a LUG
(Linux user group) meeting. You can find such groups on the
LDP General Linux
Information Page; there is probably one near you, possibly
associated with a college or university. LUG members will probably
give you a Linux if you ask, and will certainly help you install one
and get started.
Q: Would you help me to crack a system, or teach me how to crack?
No. Anyone who can still ask such a question after reading this FAQ
is too stupid to be educable even if I had the time for tutoring.
Any emailed requests of this kind that I get will be ignored or
answered with extreme rudeness.
Q: Where can I find some real hackers to talk with?
The best way is to find a Unix or Linux user's group local to you and
go to their meetings (you can find links to several lists of user
groups on the
LDP page at
Sunsite).
(I used to say here that you wouldn't find any real hackers on IRC,
but I'm given to understand this is changing. Apparently some real
hacker communities, attached to things like GIMP and Perl, have IRC
channels now.)
Q: Can you recommend useful books about hacking-related subjects?
Q: What language should I learn first?
HTML, if you don't already know it. There are a lot of glossy,
hype-intensive
bad HTML books out there, and distressingly
few good ones. The one I like best is
HTML: The Definitive Guide.
But HTML is not a full programming language. When you're ready to
start programming, I would recommend starting with
Python. You will hear a lot of
people recommending Perl, and Perl is still more popular than Python,
but it's harder to learn and (in my opinion) less well designed.
There are
resources
for programming beginners using Python in the Web.
C is really important, but it's also much more difficult than either
Python or Perl. Don't try to learn it first.
Q: But won't open-source software leave programmers unable to make
a living?
This seems unlikely -- so far, the open-source software industry seems
to be creating jobs rather than taking them away. If having a program
written is a net economic gain over not having it written, a
programmer will get paid whether or not the program is going to be
free after it's done. And, no matter how much "free" software gets
written, there always seems to be more demand for new and customized
applications. I've written more about this at the
Open Source pages.
Q: How can I get started? Where can I get a free Unix?
Elsewhere on this page I include pointers to where to get the most
commonly used free Unix. To be a hacker you need motivation and
initiative and the ability to educate yourself. Start now...