
How To Become A Hacker - krmboya
http://www.catb.org/esr/faqs/hacker-howto.html
======
onan_barbarian
Possibly the best thing ever said on the topic of this essay is from the
infamous Dabblers and Blowhards post:

\----

I blame Eric Raymond and to a lesser extent Dave Winer for bringing this kind
of schlock writing onto the Internet. Raymond is the original perpetrator of
the "what is a hacker?" essay, in which you quickly begin to understand that a
hacker is someone who resembles Eric Raymond. [...] The whole genre reminds me
of the the wooly business books one comes across at airports ("Management
secrets of Gengis Khan", the "Lexus and the Olive Tree") that milk a bad
analogy for two hundred pages to arrive at the conclusion that people just
like the author are pretty great.

~~~
mindcrime
_I blame Eric Raymond and to a lesser extent Dave Winer for bringing this kind
of schlock writing onto the Internet. Raymond is the original perpetrator of
the "what is a hacker?" essay, in which you quickly begin to understand that a
hacker is someone who resembles Eric Raymond_

Sounds like a pretty weak criticism to me. We all reflect our own biases and
opinions in our writings, surely? If pg wrote "how to be a hacker" wouldn't
you wind up with something suggesting that hackers should be like pg? If rtm
wrote "how to be a hacker" do you think it wouldn't wind up reflecting a bias
towards his mindsets and attitudes? If onan_barbarian wrote "how to be a
hacker" would it not create an argument for hackers being much like
onan_barbarian?

If esr's essay is factually incorrect or misleading or damaging in some
fashion, then I'd encourage anyone to criticize it for that, rather than just
slamming the man for writing it.

~~~
onan_barbarian
I suspect you're missing his point, possibly wilfully. Regardless of whether
you agree with it or not, his criticism is that the content of the "how to be
a hacker" essay in question is almost _nothing_ more than thinly veiled self-
description.

~~~
mindcrime
_I suspect you're missing his point_

No, I get the point, I just saying he's wrong.

~~~
soperj
I don't think he's wrong, really he should have titled it "How to be me" not
"how to be a hacker" if that's what he was going to do.

~~~
PakG1
Isn't *that" the point he was trying to make?

------
niggler
"No problem should ever have to be solved twice."

I sincerely disagree. There is rarely a problem for which there is one
strictly optimal solution. And competition (friendly or otherwise) between
solutions leads to progress.

As an example, take the browser wars. As opposed to accepting Mozilla/Firefox,
Apple and Google's efforts have moved the bar much further than if they just
decided to use Mozilla's solution

"What's not OK is artificial technical, legal, or institutional barriers (like
closed-source code) that prevent a good solution from being re-used and force
people to re-invent wheels."

If it weren't for LZW patent enforcement, we wouldn't have formats like PNG
... (I guess, "necessity is the mother of innovation")

~~~
mindcrime
_> I sincerely disagree. There is rarely a problem for which_

 _> there is one strictly optimal solution. And competition_

 _> (friendly or otherwise) between solutions leads to_

 _> progress_

You know, he does make the point that it is OK to pursue a superior solution:

 _Note, however, that "No problem should ever have to be solved twice." does
not imply that you have to consider all existing solutions sacred, or that
there is only one right solution to any given problem. Often, we learn a lot
about the problem that we didn't know before by studying the first cut at a
solution. It's OK, and often necessary, to decide that we can do better._

~~~
niggler
If you read the rest of my response, you'd see my response to his
clarification:

"What's not OK is artificial technical, legal, or institutional barriers (like
closed-source code) that prevent a good solution from being re-used and force
people to re-invent wheels."

If it weren't for LZW patent enforcement, we wouldn't have formats like PNG
... (I guess, "necessity is the mother of innovation")

~~~
mindcrime
_If you read the rest of my response, you'd see my response to his
clarification:_

Of course I read all of your response. The second part seems, to me, to be
addressing a different issue altogether. You claim to strongly disagree with
"no problem should be solved twice" but your statement about why you disagree
jibes with what ESR himself said. I'm not sure what it is you disagree with
him about in the general sense.

The second part, sure, you are saying that patent enforcement can result in
better solutions due to the "necessity being the mother of invention" factor,
whereas Raymond completely objects to "artificial barriers". But that's just a
detail, surely?

------
gatherknwldg
Does he have an entry on how to become an insufferable blow-hard?

~~~
neckbeard
<http://www.catb.org/esr/writings/sextips/>

~~~
cantbecool
That's freaking hilarious. Who knew hackers needed sex tips. I had to do a
double take on the domain to see if they were identical.

------
nnq
Kinda side-topic, but: why do most "hacker advice" tend to recommend Python
over Ruby or Perl (ok, Perl is "just old") as a beginner's scripting language?
I love Python and I like using it in production better than Ruby, but Ruby is
much more of a "hacker's language" and pushes you to more "lispyness" in
spirit and practice! (I admit I'am a bit of a Python ecosystem fanboy, with
all the cool and easy to use machine learning tools and libs, but this state
of affairs is a bit unintuitive - and I'm looking at this types of questions
from a language designer's perspective too as I'm working on a language that
has 99.9% chances of _not_ tacking over the world, but that 0.1% is enough to
"make me high" and keeps me banging my hammers on until I get to something
that I can show to the world).

~~~
3pt14159
Python is more powerful than Ruby. You have more meta-programming options
available to you and a far, far wider scope of tools (scipy, etc). Python also
naturally can lead you to c/c++ through cython as well as idiomatically
functional programming (partials, function passing, decorators) far easier
than Ruby (since in ruby parans are optional).

~~~
nnq
> as well as idiomatically functional programming

Intuitive as this may seem, it ends up being the opposite: you'll see more
"functional-like" code in Ruby codebases. A simple think like Guido
considering multi-line lambdas "a Rube Goldberg language feature" [1] and
rejecting them was sort of a butterfly effect that pushed real-world ruby
codebases away from functional programming. Same as the nice-looking block
passing syntax pushed Ruby in the opposite direction! And makes Ruby DSLs easy
as pie (though I find DSLs a bit against the "hacker spirit" - any tool that's
less "general purposes" ends up "limiting your mind" - take Rails which is a
giant "meta-DSL for web apps" imho).

...though I still recommend Python to wannabe "hackers" for the same reasons
you said above, I find myself, as a "real-world hacker", enjoying Ruby more.

[1] <http://www.artima.com/weblogs/viewpost.jsp?thread=147358>

~~~
nnq
BUG: it's "python" not "ruby" in "pushed real-world ruby codebases"

------
montecarl
What is up with the tooltips on that page? They are almost too distracting for
me to read the text. I had to use the fabulous viewtext.org to keep sane.

~~~
SleekoNiko
I thought I was going crazy.

------
ely-s
This one has been floating around the nets for a very long time.

------
crististm
It is interesting to see these classic articles getting to the HN front page.
If nothing else, it's a measure of HN new comers.

------
wfunction
His comments about Windows are plain ignorant.

~~~
jiggy2011
To be fair this was written around the time that Windows 98 was still the
version of Windows that most people were familiar with.

------
zalew
how to become a hacker? it's easy: <http://hackertyper.com>

~~~
cpressey
Cute. That's totally how real hackers write code, too: in an uninterrupted
stream from start to finish :)

------
DustinCalim
.article { margin: auto; width: 700px; }

~~~
dbaupp
max-width is significantly nicer than width for mobile users.

------
snogglethorpe
Hack.

