09:57 am, 29 Jul 04
great hackers
Paul Graham, in Great Hackers, hates on Java and American cars and lauds Apple and Google. I liked this footnote:
Google is much more dangerous to Microsoft than Netscape was. Probably more dangerous than any other company has ever been. Not least because they're determined to fight. On their job listing page, they say that one of their "core values'' is "Don't be evil.'' In a company selling soybean oil or mining equipment, such a statement would merely be eccentric. But I think all of us in the computer world recognize who that is a declaration of war on.And he claims great hackers choose Perl -- a surprise coming from someone whose every essay turns to lisp.
"Because you can't tell a great hacker except by working with him, hackers themselves can't tell how good they are. This is true to a degree in most fields. I've found that people who are great at something are not so much convinced of their own greatness as mystified at why everyone else seems so incompetent. The people I've met who do great work rarely think that they're doing great work. They generally feel that they're stupid and lazy, that their brain only works properly one day out of ten, and that it's only a matter of time until they're found out."
because that gives me some hope that I might be a Great Hacker =)
I have to disagree with him, though, on wanting your tools to be open source so you can fix them. That attitude scares me when I discover it in myself, because I feel it's a rathole: "before I can write the perfect A, I have to fix tool B, which is broken because it uses the stupid C library, which uses the inefficient D algorithm ..." and before you know it you're telling IBM or Intel how to fix their damn microcode, leaving a recursive-descent trail of half-fixed stuff behind you, and the project you really really wanted to work on (A) is still vaporware.
Donald Knuth appears to have spent most of his career going into such a rathole, ending up writing TeX / Metafont because he didn't like the typography of his books.
- wrt Knuth, you made it sound like writing TeX was a bad thing...
Also, TeX and Metafont are neat and useful, but it occurs to me that they weren't influential. To write stuff people might use TeX if they're scientists/geeks, or an SGML-based technology like HTML or DocBook, but out in the real world most everyone uses a word processor. Bravo was ten times as influential as TeX. As for Metafont, the people who design fonts don't want to design fonts that way, so except for hybrids like Knuth, it was kind of a dead end.
There are certain things GUIs are absolute wins for; typesetting complicated math is most definitely one of them (though most apps manage to get it all Wrong, thank the gods for Wolfram... =)
TeX has been influential
The typesetting algorithms have been reused by other programs, especially now that computers are fast enough to do it within the GUI paradigm. Metafont is pretty much a dead end.Re: TeX has been influential
You're right, actually -- I used to work with a guy who was trying to get TeX's line-breaking algorithms to work in real time in a GUI editor.I was thinking more of the markup language than of the typesetting back end, I s'pose.
This has to be one of my single worst habits.
As with most of my bad habits, it's a matter of exercising self-restraint and focusing. You can't allow yourself to get distracted by anything but fixing bugs outside of your immediate scope (, josh). You can throw around XXX/TODOs like confetti, but don't ever allow yourself to lose focus on the task at hand (, josh). It's really, really hard sometimes. Especially when you're working on tools written by, uh, "distinctly non-Great Hackers" (read: "systems administrators").
This might even make my list for "advice to yourself in the past." A tattoo on my forearm ("You can't fix it all") might even be in order.
I think this is one reason why so many Great Hackers end up working on OS kernels or language compilers/runtimes. The intense heat of their brains causes sort of a China Syndrome where they successively descend into fixing their toolchain, all the way to the bottom.
This is the Risk Inherent in Being a Sufficiently-Smart Compiler...
... you tend to partially evaluate everything and diverge.I think it's good that there are people criticizing something as omnipotent/secretive as google, but I think he'd be a lot more effective if his criticisms weren't so, um, insane.
It's funny to read about Matt Cutts 'cause I work with him; he's one of my favorite people at work because he's always in a great mood and it just sorta infects you if you talk to him.
I admire that about people!
The cookie page didn't look so crazy when I first saw it. Now that there's more context, yeah...
Yeah, you and
Yeah, you and the three other people who do so.