Hackers & Painters: Big Ideas from the Computer Age
Rate it:
Open Preview
43%
Flag icon
Because kids are unable to create wealth, whatever they have has to be given to them. And when wealth is something you’re given, then of course it seems that it should be distributed equally.
45%
Flag icon
Once it became possible to get rich by creating wealth, society as a whole started to get richer very rapidly.
45%
Flag icon
But it was not till the Industrial Revolution that wealth creation definitively replaced corruption as the best way to get rich.
45%
Flag icon
Jobs and Wozniak didn’t have to make us poor to make themselves rich. Quite the opposite: they created things that made our lives materially richer. They had to, or we wouldn’t have paid for them.
45%
Flag icon
But since for most of the world’s history the main route to wealth was to steal it, we tend to be suspicious of rich people.
46%
Flag icon
Is it a problem if technology increases that gap? It doesn’t seem to be so far. As it increases the gap in income, it seems to decrease most other gaps.
46%
Flag icon
I’d like to propose an alternative idea: that in a modern society, increasing variation in income is a sign of health. Technology seems to increase the variation in productivity at faster than linear rates. If we don’t see corresponding variation in income, there are three possible explanations: (a) that technical innovation has stopped, (b) that the people who would create the most wealth aren’t doing it, or (c) that they aren’t getting paid for it.
47%
Flag icon
Will people create wealth if they can’t get paid for it? Only if it’s fun. People will write operating systems for free. But they won’t install them, or take support calls, or train customers to use them. And at least 90% of the work that even the highest tech companies do is of this second, unedifying kind.
47%
Flag icon
All the un fun kinds of wealth creation slow dramatically in a society that confiscates private fortunes.
47%
Flag icon
If you suppress variations in income, whether by stealing private fortunes, as feudal rulers used to do, or by taxing them away, as some modern governments have done, the result always seems to be the same. Society as a whole ends up poorer.
47%
Flag icon
It’s absolute poverty you want to avoid, not relative poverty.
51%
Flag icon
If there is such a thing as beauty, we need to be able to recognize it. We need good taste to make good things. Instead of treating beauty as an airy abstraction, to be either blathered about or avoided depending on how one feels about airy abstractions, let’s try considering it as a practical question: how do you make good stuff?
51%
Flag icon
Saying that taste is just personal preference is a good way to prevent disputes. The trouble is, it’s not true. You feel this when you start to design things.
52%
Flag icon
In math, every proof is timeless unless it contains a mistake.
52%
Flag icon
Aiming at timelessness is a way to make yourself find the best answer: if you can imagine someone surpassing you, you should do it yourself.
53%
Flag icon
Gödel’s incompleteness theorem seems like a practical joke.
53%
Flag icon
To have a sense of humor is to be strong: to keep one’s sense of humor is to shrug off misfortunes, and to lose one’s sense of humor is to be wounded by them. And so the mark — or at least the prerogative — of strength is not to take oneself too seriously.
53%
Flag icon
If you’re not working hard, you’re probably wasting your time.
53%
Flag icon
Not every kind of hard is good. There is good pain and bad pain. You want the kind of pain you get from going running, not the kind you get from stepping on a nail.
53%
Flag icon
Wild animals are beautiful because they have hard lives.
54%
Flag icon
It’s not cheating to copy.
54%
Flag icon
It’s rare to get things right the first time. Experts expect to throw away some early work. They plan for plans to change.
54%
Flag icon
Mistakes are natural. Instead of treating them as disasters, make them easy to acknowledge and easy to fix.
54%
Flag icon
Open source software has fewer bugs because it admits the possibility of bugs.
54%
Flag icon
I think the greatest masters go on to achieve a kind of selflessness. They just want to get the right answer, and if part of the right answer has already been discovered by someone else, that’s no reason not to use it. They’re confident enough to take from anyone without feeling that their own vision will be lost in the process.
55%
Flag icon
A thousand Leonardos and a thousand Michel Angelos walk among us. If DNA ruled, we should be greeted daily by artistic marvels. We aren’t, and the reason is that to make Leonardo you need more than his innate ability. You also need Florence in 1450.
55%
Flag icon
Nothing is more powerful than a community of talented people working on related problems.
55%
Flag icon
Today’s experimental error is tomorrow’s new theory. If you want to discover great new things, then instead of turning a blind eye to the places where conventional wisdom and truth don’t quite meet, you should pay particular attention to them.
55%
Flag icon
In practice I think it’s easier to see ugliness than to imagine beauty. Most of the people who’ve made beautiful things seem to have done it by fixing something they thought ugly. Great work usually seems to happen because someone sees something and thinks, I could do better than that.
57%
Flag icon
Open source gives you a lot more control.
58%
Flag icon
I prefer dynamic typing. I hate a language that tells me what to do. But some smart people seem to like static typing, so the question must still be an open one.
60%
Flag icon
It’s important not just that the axioms be well chosen, but that there be few of them. Mathematicians have always felt this way about axioms — the fewer, the better — and I think they’re onto something.
60%
Flag icon
A program is a formal description of the problem you want a computer to solve for you.
60%
Flag icon
Current implementations of some popular new languages are shockingly wasteful by the standards of previous decades.
60%
Flag icon
I can already tell you what’s going to happen to all those extra cycles that faster hardware is going to give us in the next hundred years. They’re nearly all going to be wasted.
61%
Flag icon
Inefficient software isn’t gross. What’s gross is a language that makes programmers do needless work. Wasting programmer time is the true inefficiency, not wasting machine time. This will become ever more clear as computers get faster.
64%
Flag icon
Software is a very competitive business, prone to natural monopolies. A company that gets software written faster and better will, all other things being equal, put its competitors out of business.
65%
Flag icon
In a big company, you can do what all the other big companies are doing. But a startup can’t do what all the other startups do. I don’t think a lot of people realize this, even in startups.
65%
Flag icon
The survival rate for startups is way less than fifty percent. So if you’re running a startup, you had better be doing something odd. If not, you’re in trouble.
66%
Flag icon
In business, as in war, surprise is worth as much as force.
66%
Flag icon
I’ll begin with a shockingly controversial statement: programming languages vary in power.
68%
Flag icon
Ordinarily technology changes fast. But programming languages are different: programming languages are not just technology, but what programmers think in. They’re half technology and half religion.
68%
Flag icon
The pointy-haired boss miraculously combines two qualities that are common by themselves, but rarely seen together: (a) he knows nothing whatsoever about technology, and (b) he has very strong opinions about it.
69%
Flag icon
Some languages are better, for certain problems, than others.
72%
Flag icon
I can think of three problems that could arise from using less common languages. Your programs might not work well with programs written in other languages. You might have fewer libraries at your disposal. And you might have trouble hiring programmers.
73%
Flag icon
Within large organizations, the phrase used to describe this approach is “industry best practice.” Its purpose is to shield the pointy-haired boss from responsibility: if he chooses something that is “industry best practice,” and the company loses, he can’t be blamed. He didn’t choose, the industry did.
73%
Flag icon
In programming languages, as Erann Gat has pointed out, what “industry best practice” actually gets you is not the best, but merely the average.
73%
Flag icon
If you want to win in a software business, just take on the hardest problem you can find, use the most powerful language you can get, and wait for your competitors’ pointy-haired bosses to revert to the mean.
75%
Flag icon
Of all tyrannies, a tyranny exercised for the good of its victims may be the most oppressive. — C.S.LEWIS
76%
Flag icon
A programming language does need a good implementation, of course, and this must be free. Companies will pay for software, but individual hackers won’t, and it’s the hackers you need to attract.