How To Become A Hacker
catb.org
catb.org
----
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.
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.
No, I get the point, I just saying he's wrong.
Look, I disagree with esr on more than a few things myself. But this essay strikes me as a fairly reasonable introduction to a number of activities and mindsets that a would-be hacker would want to cultivate. And it's not like he is saying "This is the only route to becoming a hacker".
I also don't understand your thing about finding the reference to pistol shooting "offensive". I can understand if you're an anti-gunner or whatever and don't like guns, but the simple facts are that millions of people enjoy going to the range and shooting their pistols. We're talking about something that is legal (with some caveats), safe, fun, and has positive personal benefits... it's not like he suggested going out and watching kiddie-porn or stealing food from starving children.
Books and essays like "Management secrets of Gengis Khan" are an attempt at invoking this kind of power, that the writer is both knowledgeable enough and the topic is relevant enough to the times in which it appears to hold sway in some way (if only for book sales, natch). If nobody cares who the "Gengis Khan" author is and their way of describing what they're talking about reaches enough people to operate a (sub-) cultural transformation, then the words will therefore have little meaning in the practical sense.
To be sure, writers write from their own subjectivity. This cannot be avoided, so to critique something as having too much of the author in it is a little beyond the pale (pace Derrida). The last century-plus of philosophy and critical exercise have taught us that objectivity doesn't exist (irony intentional); there will always be hints of the writer's mind, biases, and so on. So of course the Jargon File is going to have ESR's fingerprints all over it.
We can talk about how the JF's corpus is weak and riddled with a particular subjectivity, but the simple facts are that it's accessible, easy to digest, and an early description of many, many concepts of the subcultures affiliated with computers. It acquires authority this way, regardless of followers-on and critiques. It's the same problem the Bible and other major religious texts have, but it's also germane to the scope of things like operational best practices, equity allocation, and any other topic where there are schools of thought. The critique raised here is simply another front in a battle between schools. Steven Levy articulated an infinitely more detailed description of hackers, but that has a concomitant inaccessiblity (length), but in my mind equally valid. At the end of the day, we may as well be talking about what band is the most Rock.
Well that's easy: Mötley Crüe.
I think it relates to your point, because another way to say this is that it's presented in an obnoxiously (to me) self-help-book-esque fashion. If it was called "The Workings of a Hacker's World" or some such, I'd find it less grating.
I assume this is the Dabblers and Blowhards post to which you refer: http://idlewords.com/2005/04/dabblers_and_blowhards.htm ... thanks, I'll give it a read.
Sure, you can argue that if a person gives an opinion of what it means to be "X", then he superimposes his own idea of "X" upon the abstract "X", as it were. But I believe that that abstract "X" doesn't exist (in and of itself), and all we have are labels ("hacker") which lend a solidity to something that is inherently fluid. Even if there is such a concrete abstract that we all understand and agree on (Plato's 'perfect form', if you will), in the bottom of your heart (and logically, for that matter), you must acknowledge that the abstract "hacker" is far superior than any of the forms you and I can conceive (name drop here if you wish). All we can manage are ghosts and reflections of that, sometimes beautiful, but inherently incomplete. I thank Mr Raymond for this gem in particular:
The Hacker Attitude
1. The world is full of fascinating problems waiting to be solved.
2. No problem should ever have to be solved twice.
3. Boredom and drudgery are evil.
4. Freedom is good.
5. Attitude is no substitute for competence.
Which enlightened my twelve year old mind in a manner that I fear is no longer possible.
I read this back when I was 12 in 2000. It got me into programming, made me learn to use Linux. That Zen Koan at the beginning is something that has grown with me over the years, it took me a long time to see how loaded those six lines are; therein truly lies the means to mastery of any path.
I will never forget the feeling of realising that my partitioning command had failed and now I had no access to my windows machine (and thus, the internet and anybody that could help me). Luckily, I had printed out the Gentoo manual (I was obsessed with apparent speed increases that could be achieved by compiling everything for your own arch) and I managed to get a dial up connection (yes, we still had dial-up in South Africa in 2000 :) working and some basic text-based browsing to continue the mission. ah.
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")
> 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.
"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")
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?
If there weren't patents on formats, people would still make new formats. Crappy energy inefficient and data expensive algorithms get replaced when basic research (unaffected by patents mind you) show that better ways exist.
Here is a thought: figure out a new algorithm that lower the bandwidth use of Google by 25%. They would surely pay you with heaps of money no matter if there is a patent involved or not.
Solution to what problem? I would say that the reason browsers have continued to evolve is that all of the existing ones have always sucked; whatever problem past browsers thought they were solving, it wasn't sufficient to solve the real problems users were having with existing browsers.
In short, no problem should ever have to be solved twice; but it does need to be solved once.
Same for a lot of programming languages.
Same for a lot of things.
Technology seems to progress by a combination of people's interest and snagging at the low-hanging fruit of "this has become unbearable". At some point, a better gif would have happened just because it hit the proper pain point.
...
"Cathy: Try this on a stranger in an elevator, if you must, to minimize the fear level."
When it comes down to it, he is a politician, a lobbyist and while these roles are arguably not without use I would rather not have someone like that lay down the law what I as a "hacker" should and should not do or how I am supposed to be more like him.
I actually remember reading ESRs writings as a teenager and actually being slightly afraid of ending up like him.
Which, I think, is one of the main reasons why Python is recommended more: it's simpler and has less sharp corners. The other thing is that Ruby is significantly slanted towards the object-oriented paradigm while Python remains much more neutral in this regard.
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