OSCON 2004: Paul Graham on Great Hackers


What follows are some thoughts from Paul Graham's talk last night.

Variation in wealth is a sign of variation in productivity. Low-tech societies don't have variations in connectivity.

We need to understand especially productive people. How do you recognize them? How do you become one? How do you get them to come to work for you?

Like all craftsmen, hackers like good tools. They refuse to work on projects that use the "wrong" tools.

When you decide what infrastructure to use on a project, you're not just making a technical decision. You're making a social decision. The quality of the people who work on your project will depend on the tools you choose.

Programming languages are mediums of expressions. They are more than standards.

Good hackers insist on control. That's why they prefer open source.

After software, the most important tool to a hacker is the office. Offices are places to think in. Making hackers work in a noisy environment is like having a paint factory where the air is filled with grit and dirt.

What tools do hackers choose when they can choose freely? Open source operating systems and languages like Perl and Python.

People like to work with people with high standards. Buts its not enough just to be exacting. If you're not a hacker, you can't tell who the good hackers are. To drive design, the manager must be the most demanding user of the company's product.

Solving a lot of nasty little problems is not nearly as interesting as solving a few big problems. Solving nasty little problems doesn't teach you anything. Big problems have patterns. Solving nasty little problems makes you stupid.

Great hackers like other great hackers. Good hackers clump.

Having great hackers is not in itself enough to ensure success. A company that can attract great hackers has a definite advantage.

How do you know when you meet a great hacker? It seems the only way to tell is to work with them. This is why Universities are at the center of high tech areas. They serve as intellectual dating services.

How do you become a great hacker? The key to being a good hacker may be to work on things they like. To do something well, you have to love it. If you're worried that your current job is rotting your brain, it probably is. Curiosity is listed as the number one property of great hackers given by many people. The ability to concentrate is also frequently mentioned. If may not be possible to cultivate these qualities, but it is possible to repress them.