Insightful Opinions from 'Hackers and Painters'

You are asking for trouble if you try to decide what to do without understanding how to do it.


... research must be original--and as anyone who has written a PhD dissertation knows, the way to be sure that you are exploring virgin territory is to stake out a piece of ground that no one wants.

Relentlessness wins, because in the aggregate, unseen details become visible.

Great software, likewise, requires fanatical devotion to beauty. If you look inside software, you find that parts no one is ever supposed to see are beautiful too.

Fashion is mistaken for good design; moral fashion is mistaken for good.

To launch a taboo, a group has to be poised halfway between weakness and power. A confident group doesn't need taboos to protect it.

And just as there is nothing so unfashionable as the last discarded fashion, there is nothing so wrong as the principles of the most recently defeated opponent.

When people are bad at math, they know it, because they get the wrong answers on tests. But when people are bad at open-mindness, they don't know it. In fact they tend to think the opposite.

Working to implement one idea gives you more ideas. So shelving an idea cost not only that delay in implementing it, but also all the ideas that implementing it would have led to.

Software has to be designed by hackers who understanding design, not designers who know a little about software.

Wealth is what you want, not money.

Money is not wealth. It's just something we use to move wealth around.

It's doing something people want that matters, not joining the group.

A startup is not merely ten people, but ten people like you.

A McDonald's franchise is controlled by rules so precise that it is practically a pieces of software. Write once, run everywhere.

You get paid by doing or making something people want, and those who make more money are often simply better at doing what people want.

How much someone's work is worth is not a policy question. It's something the market already determines.

The same principles of good design crop up again and again.

Humor is related to strength. 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 it.

A novice imitates without knowing it; next he tries consciously to be original; finally, he decides it's more important to be right than original.

Languages evolve slowly because they're not really technologies. Languages are notation. A program is a formal description of the problem you want a computer to solve for you.

As technologies improve, each generation can do things that the previous generation would have considered wasteful.

Programming languages are not just technology, but what programmers think in.

So the short explanation of why this 1950s language is not obsolete is that it was not technology but math, and math doesn't get stale.

The most important part of design is redesign.

People who do good work often think whatever they're working on is no good. Others see what they've done and think it's wonderful, but the creator sees nothing but flaws. This pattern is no coincidence: worry made the work good.

The people I know who do great work think they suck, but that everyone else sucks more.

And yet, making what works for the user doesn't mean simply making what the user tells you to. Users don't know what all the choices are, and are often mistaken about what they really want. It's being like a doctor. You can't just treat a patient's symptoms. When a patient tells you his symptoms, you have to figure out what's actually wrong with him, and treat that.

The point is, you have to pick some group of users. I don't think you can talk about good or bad design except with reference to some intended user.

Design means making things for humans. But it's not just the user who's human. The designer is human too.



你可能感兴趣的:(Insightful Opinions from 'Hackers and Painters')