Hackers & Painters: Big Ideas from the Computer Age
Rate it:
Open Preview
2%
Flag icon
Computer programs are all just text. And the language you choose determines what you can say. Programming languages are what programmers think in.
2%
Flag icon
But I think that misfits and iconoclasts are also more likely to become hackers. The computer world is like an intellectual Wild West, where you can think anything you want, if you’re willing to risk the consequences.
5%
Flag icon
I think the important thing about the real world is not that it’s populated by adults, but that it’s very large, and the things you do have real effects. That’s what school, prison, and ladies-who-lunch all lack. The inhabitants of all those worlds are trapped in little bubbles where nothing they do can have more than a local effect. Naturally these societies degenerate into savagery. They have no function for their form to follow.
6%
Flag icon
As far as I can tell, the concept of the hormone-crazed teenager is coeval with suburbia. I don’t think this is a coincidence. I think teenagers are driven crazy by the life they’re made to lead. Teenage apprentices in the Renaissance were working dogs. Teenagers now are neurotic lapdogs. Their craziness is the craziness of the idle everywhere.
7%
Flag icon
There are certainly great public school teachers. The energy and imagination of my fourth grade teacher, Mr. Mihalko, made that year something his students still talk about, thirty years later. But teachers like him were individuals swimming upstream. They couldn’t fix the system.
9%
Flag icon
Hacking and painting have a lot in common. In fact, of all the different types of people I’ve known, hackers and painters are among the most alike. What hackers and painters have in common is that they’re both makers. Along with composers, architects, and writers, what hackers and painters are trying to do is make good things.
10%
Flag icon
Universities and research labs force hackers to be scientists, and companies force them to be engineers.
10%
Flag icon
When I got to Yahoo, I found that what hacking meant to them was implementing software, not designing it. Programmers were seen as technicians who translated the visions (if that is the word) of product managers into code.
10%
Flag icon
Only a small percentage of hackers can actually design software, and it’s hard for the people running a company to pick these out.
11%
Flag icon
So if you can figure out a way to get in a design war with a company big enough that its software is designed by product managers, they’ll never be able to keep up with you. These opportunities are not easy to find, though. It’s hard to engage a big company in a design war, just as it’s hard to engage an opponent inside a castle in hand-to-hand combat.
11%
Flag icon
It would be pretty easy to write a better word processor than Microsoft Word, for example, but Microsoft, within the castle of their operating system monopoly, probably wouldn’t even notice if you did.
11%
Flag icon
The place to fight design wars is in new markets, where no one has yet managed to establish any fortifications. That’s where you can win big by taking the bold approach to design, and having the same people both design and implement the product. Microsoft themselves did this at the start. So d...
This highlight has been truncated due to consecutive passage length restrictions.
11%
Flag icon
It seems surprising to me that any employer would be reluctant to let hackers work on open source projects. At Viaweb, we would have been reluctant to hire anyone who didn’t. When we interviewed programmers, the main thing we cared about was what kind of software they wrote in their spare time. You can’t do anything really well unless you love it, and if you love to hack you’ll inevitably be working on projects of your own.
11%
Flag icon
Because hackers are makers rather than scientists, the right place to look for metaphors is not in the sciences, but among other kinds of makers. What else can painting teach us about hacking?
12%
Flag icon
Here’s a case where we can learn from painting. I think hacking should work this way too. It’s unrealistic to expect that the specifications for a program will be perfect. You’re better off if you admit this up front, and write programs in a way that allows specifications to change on the fly.
12%
Flag icon
Everyone by now presumably knows about the danger of premature optimization. I think we should be just as worried about premature design — deciding too early what a program should do.
12%
Flag icon
Great software, likewise, requires a fanatical devotion to beauty. If you look inside good software, you find that parts no one is ever supposed to see are beautiful too. When it comes to code I behave in a way that would make me eligible for prescription drugs if I approached everyday life the same way. It drives me crazy to see code that’s badly indented, or that uses ugly variable names.
13%
Flag icon
Source code, too, should explain itself. If I could get people to remember just one quote about programming, it would be the one at the beginning of Structure and Interpretation of Computer Programs.8 Programs should be written for people to read, and only incidentally for machines to execute.
15%
Flag icon
I suspect the statements that make people maddest are those they worry might be true.
15%
Flag icon
To find them, keep track of opinions that get people in trouble, and start asking, could this be true?
15%
Flag icon
We have such labels today, of course, quite a lot of them, from the all-purpose “inappropriate” to the dreaded “divisive.” In any period, it should be easy to figure out what such labels are, simply by looking at what people call ideas they disagree with besides untrue. When a politician says his opponent is mistaken, that’s a straightforward criticism, but when he attacks a statement as “divisive” or “racially insensitive” instead of arguing that it’s false, we should start paying attention.
16%
Flag icon
We may imagine that we are a great deal smarter and more virtuous than past generations, but the more history you read, the less likely this seems. People in past times were much like us. Not heroes, not barbarians. Whatever their ideas were, they were ideas reasonable people could believe.
16%
Flag icon
I suspect the only taboos that are more than taboos are the ones that are universal, or nearly so. Murder for example. But any idea that’s considered harmless in a significant percentage of times and places, and yet is taboo in ours, is a good candidate for something we’re mistaken about.
17%
Flag icon
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.
17%
Flag icon
I suspect the biggest source of moral taboos will turn out to be power struggles in which one side barely has the upper hand. That’s where you’ll find a group powerful enough to enforce taboos, but weak enough to need them.
18%
Flag icon
To do good work you need a brain that can go anywhere. And you especially need a brain that’s in the habit of going where it’s not supposed to.
18%
Flag icon
Great work tends to grow out of ideas that others have overlooked, and no idea is so overlooked as one that’s unthinkable.
18%
Flag icon
Natural selection, for example. It’s so simple. Why didn’t anyone think of it before? Well, that is all too obvious. Darwin himself was careful to tiptoe around the implications of his theory. He wanted to spend his time thinking about biolo...
This highlight has been truncated due to consecutive passage length restrictions.
18%
Flag icon
Training yourself to think unthinkable thoughts has advantages beyond the thoughts themselves. It’s like stretching. When you stretch before running, you put your body into positions much more extreme than any it will assume during the run. If you can think things so outside the box that they’d make people’s hair stand on end, you’ll have no trouble with the small trips outside the box that people call innovative.
18%
Flag icon
Argue with idiots, and you become an idiot.
18%
Flag icon
The most important thing is to be able to think what you want, not to say what you want. And if you feel you have to say everything you think, it may inhibit you from thinking improper thoughts. I think it’s better to follow the opposite policy. Draw a sharp line between your thoughts and your speech. Inside your head, anything is allowed.
19%
Flag icon
When Milton was going to visit Italy in the 1630s, Sir Henry Wootton, who had been ambassador to Venice, told him that his motto should be “i pensieri stretti & il viso sciolto.” Closed thoughts and an open face. Smile at everyone, and don’t tell them what you’re thinking. This was wise advice.
19%
Flag icon
I admit it seems cowardly to keep quiet. When I read about the harassment to which the Scientologists subject their critics,12 or people branded as anti-Semitic for speaking out against Israeli human-rights abuses,13 or researchers threatened with lawsuits under the DMCA,14 part of me wants to say, “All right, you bastards, bring it on.” The problem is, there are so many things you can’t say. If you said them all you’d have no time left for your real work. You’d have to turn into Noam Chomsky.
19%
Flag icon
Perhaps the best policy is to make it plain that you don’t agree with whatever zealotry is current in your time, but not to be too specific about what you disagree with. Zealots will try to draw you out, but you don’t have to answer them. If they try to force you to treat a question on their terms by asking “are you with us or against us?” you can always just answer “neither.” Better still, answer “I haven’t decided.”
20%
Flag icon
Certainly the fact that they value open-mindedness is no guarantee. Who thinks they’re not open-minded? Our hypothetical prim miss from the suburbs thinks she’s open-minded. Hasn’t she been taught to be? Ask anyone, and they’ll say the same thing: they’re pretty open-minded, though they draw the line at things that are really wrong.18 In other words, everything is ok except things that aren’t.
20%
Flag icon
When people are bad at math, they know it, because they get the wrong answers on tests. But when people are bad at open mindedness, they don’t know it. In fact they tend to think the opposite.
20%
Flag icon
Labels like that are probably the biggest external clue. If a statement is false, that’s the worst thing you can say about it. You don’t need to say that it’s heretical. And if it isn’t false, it shouldn’t be suppressed. So when you see statements being attacked as x-ist or y-ic (substitute your current values of x and y), whether in 1630 or 2030, that’s a sure sign that something is wrong. When you hear such labels being used, ask why.
22%
Flag icon
Civil liberties are not just an ornament, or a quaint American tradition. Civil liberties make countries rich. If you made a graph of GNP per capita vs. civil liberties, you’d notice a definite trend. Could civil liberties really be a cause, rather than just an effect? I think so. I think a society in which people can do and say what they want will also tend to be one in which the most efficient solutions win, rather than those sponsored by the most influential people. Authoritarian countries become corrupt; corrupt countries become poor; and poor countries are weak.
23%
Flag icon
Clients shouldn’t store data; they should be like telephones. In fact they may become telephones, or vice versa.
28%
Flag icon
When you can write software with fewer programmers, it saves you more than money. As Fred Brooks pointed out in The Mythical Man-Month, adding people to a project tends to slow it down. The number of possible connections between developers grows exponentially with the size of the group.
29%
Flag icon
Sometimes web-based software is offered through ISPs acting as resellers. This is a bad idea. You have to be administering the servers, because you need to be constantly improving both hardware and software. If you give up direct control of the servers, you give up most of the advantages of developing web-based applications.
29%
Flag icon
Several of our competitors shot themselves in the foot this way — usually, I think, because they were overrun by suits who were excited about this huge potential channel, and didn’t realize that it would ruin the product they hoped to sell through it. Selling web based software through ISPs is like selling sushi through vending machines.
32%
Flag icon
The same single-mindedness that has brought them this far will now be working against them. IBM was in exactly the same situation, and they couldn’t master it. IBM made a late and half-hearted entry into the microcomputer business because they were ambivalent about threatening their cash cow, mainframe computing. Microsoft will likewise be hampered by wanting to save the desktop. A cash cow can be a heavy monkey on your back.
33%
Flag icon
If you’re a hacker who has thought of one day starting a startup, there are probably two things keeping you from doing it. One is that you don’t know anything about business. The other is that you’re afraid of competition. Neither of these fences have any current in them. There are only two things you have to know about business: build something users love, and make more than you spend. If you get these two right, you’ll be ahead of most startups. You can figure out the rest as you go.
33%
Flag icon
The customer is always right, but different customers are right about different things; the least sophisticated users show you what you need to simplify and clarify, and the most sophisticated tell you what features you need to add.
34%
Flag icon
software has to be designed by hackers who understand design, not designers who know a little about software. If you can’t design software as well as implement it, don’t start a startup.
34%
Flag icon
I don’t mean to disparage Yahoo. They had some good hackers, and the top management were real butt-kickers. For a big company, they were exceptional. But they were still only about a tenth as productive as a small startup. No big company can do much better than that. What’s scary about Microsoft is that a company so big can develop software at all. They’re like a mountain that can walk.
34%
Flag icon
You may not believe it, but I promise you, Microsoft is scared of you. The complacent middle managers may not be, but Bill is, because he was you once, back in 1975, the last time a new way of delivering software appeared.
34%
Flag icon
If you wanted to get rich, how would you do it? I think your best bet would be to start or join a startup.
35%
Flag icon
There are a lot of ways to get rich, and this essay is about only one of them. This essay is about how to make money by creating wealth and getting paid for it. There are plenty of other ways to get money, including chance, speculation, marriage, inheritance, theft, extortion, fraud, monopoly, graft, lobbying, counterfeiting, and prospecting. Most of the greatest fortunes have probably involved several of these.
« Prev 1 3