Previous Entry Share Flag Next Entry
09:07 pm, 21 Feb 05

influential hackers

I've been thinking lately about the hackers that have inspired me and the sorts of people they are. Bear with me: I'll come back to this in a sec.

First, a top five list in the order I encountered them.
  • There's gotta be a whole generation of people my age who, just like me, grew up reading jwz's gruntle and thinking "I wanna be just like him when I grow up". Computers aside, I think I even discovered Depeche Mode 'cause he wrote about them.
  • I first encountered something graydon wrote on a mailing list maybe five years ago and I've been vaguely following him ever since: he doesn't know it but he's responsible for all sorts of things including my discovery of functional languages.
  • I actually probably met jeffr because of his "fame", because that's how Jag met him. He's a top-notch fellow in general but what's especially inspiring to me is how unstoppable he became without any community to help him: my father worked with some of the earliest computers, my mother as a math major took one of the first CS classes offered at UCLA, my friends throughout middle school and onwards were computer geeks, but as far as I can tell Jeff just got a computer and went.
  • brad's unstoppable in a different way: a seemingly endless supply of good ideas and also the ability to make things happen.
  • And the fifth slot is unclear, maybe Jacques Garrigue of O'Caml fame (pretty much any PL theory question or machine optimization that ever comes up on the mailing list is absolutely nailed by him) or Owen Taylor (Pango) or Linus Torvalds.

What's striking to me about this list (aside from the fact that they all ended up on LiveJournal -- no idea how Graydon got here, I just noticed him on a friend's info page) is that the sorts of people I've grown up admiring have been hackers in the nuts and bolts sort of sense, mostly doing what scholarly types would call systems.

For contrast: a friend got hit by a car (she's ok) and I took Sep to the hospital to visit her. (Sep: check out some of his papers for his background.) He recently sold his startup to Google and so he mostly had businessy questions about Six Apart, but we talked a bit about grad school. He said I ought to study machine learning. Machine learning! Who do I know who knows anything about machine learning?

Where were the academic types to influence me while I was still a kid? Sure, a lot of them end up wanking in academia but the same can be said for the vast majority of application programmers (which is what jwz did, after all) who ending up wanking in the industry writing web apps. And the weirder thing is that I now have access to the academic cream -- tonight I was reading The boosting approach to machine learning: An overview and they kept citing Yoram Singer, who is one of the 15 or so people in one of my groups at work. But I notice I still look up to the systems guys.

It seems to me there's this whole body of knowledge that's screaming for somebody good at hacking things out to take advantage of but for some reason it doesn't seem to happen. This paper was explaining how Eq's 8 and 9 could be shown to be similar around zero because their Taylor expansions are the same "up to second order" and I was struck by how rarely these things I've learned (like Taylor expansions) are applied. Two theories:
  1. There aren't many problems where this sort of knowledge helps.
  2. There aren't many applications for Math in the real world.
But I'm not sure I believe either of those -- rather, it seems like there are more applications of Math that we haven't discovered because there are so few people making it happen.

I think there's another aspect: My friend Noam has created multiple large-scale systems that are great practical applications of crazy theoretical ideas (refuting theory (2) above), each probably worth more money than I'll ever be worth in my life. In terms of great hackers he ought to be at the top (he's got a really unique and awesome personality, too). But rumor has it he's a rather sloppy programmer. And I think that may get more to the heart of it: a researchy friend at work who just got his PhD came to me the other day to ask how to do something trivial with his computer, something like changing his bash prompt.

You see, for jeffr to become a great kernel hacker he had to become a knowledgeable programmer and user first, and I think that's where the split lies: people at the tops of their field in e.g. machine learning, or computer graphics, are not necessarily actually good with computers. But the sort of person who naturally rises to fame making systems is almost by definition good at writing code. That is, good systems programmers are a natural evolution of good programmers.