Paul Graham has written an interesting article about Great Hackers. It covers topic such as the popularity of programming languages, open source tools, design, workplace environment
Some quotes that I like:
. A great programmer might be ten or a hundred times as productive as an ordinary one, but he’ll consider himself lucky to get paid three times as much.
The programmers you’ll be able to hire to work on a Java project won’t be as smart as the ones you could get to work on a project written in Python.  And the quality of your hackers probably matters more than the language you choose. Though, frankly, the fact that good hackers prefer Python to Java should tell you something about the relative merits of those languages.
American cars are ugly because American car companies are run by people with bad taste.
Instead of writing Word directly in C, they’d be plugging together big Lego blocks of Word-language. (Duplo, I believe, is the technical term.)
And I absolutely love this quote.
It’s pretty easy to say what kinds of problems are not interesting: those where instead of solving a few big, clear, problems, you have to solve a lot of nasty little ones. One of the worst kinds of projects is writing an interface to a piece of software that’s full of bugs. Another is when you have to customize something for an individual client’s complex and ill-defined needs. To hackers these kinds of projects are the death of a thousand cuts.