# Paul Graham - Hackers & Painters (Highlights) ![rw-book-cover|128](https://images-na.ssl-images-amazon.com/images/I/510MQ9%2BtuRL._SL200_.jpg) ## Metadata **Review**:: [readwise.io](https://readwise.io/bookreview/19659116) **Source**:: #from/readwise **Zettel**:: #zettel/fleeting **Status**:: #x **Authors**:: [[Paul Graham]] **Full Title**:: Hackers & Painters **Category**:: #books #readwise/books **Category Icon**:: 📚 **Highlighted**:: [[2022-10-12]] **Created**:: [[2022-10-12]] ## Highlights ### Chapter 1. Why Nerds Are Unpopular - There was something else I wanted more: to be smart. ([Location 125](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=125)) ^396633011 Instead of being popular. - Much as they suffer from their unpopularity, I don’t think many nerds would. To them the thought of average intelligence is unbearable. ([Location 129](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=129)) ^396633012 - Alberti, arguably the archetype of the Renaissance Man, writes that “no art, however minor, demands less than total dedication if you want to excel in it.” ([Location 135](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=135)) ^396633013 It requires constant efforts to be popular. - Likewise, in any social hierarchy, people unsure of their own position will try to emphasize it by maltreating those they think rank below. ([Location 176](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=176)) ^396633014 - Public school teachers are in much the same position as prison wardens. Wardens’ main concern is to keep the prisoners on the premises. They also need to keep them fed, and as far as possible prevent them from killing one another. Beyond that, they want to have as little to do with the prisoners as possible, so they leave them to create whatever social organization they want. ([Location 206](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=206)) ^396633015 - I didn’t realize that the reason we nerds didn’t fit in was that in some ways we were a step ahead. We were already thinking about the kind of things that matter in the real world, instead of spending all our time playing an exacting but mostly pointless game like the others. ([Location 229](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=229)) ^396633016 - Officially the purpose of schools is to teach kids. In fact their primary purpose is to keep kids locked up in one place for a big chunk of the day so adults can get things done. ([Location 243](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=243)) ^396633017 ### Chapter 2. Hackers and Painters - What hackers and painters have in common is that they’re both makers. ([Location 356](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=356)) ^396633019 - In the best case, the papers are just a formality. Hackers write cool software, and then write a paper about it, and the paper becomes a proxy for the achievement represented by the software. But often this mismatch causes problems. It’s easy to drift away from building beautiful things toward building ugly things that make more suitable subjects for research papers. Unfortunately, beautiful things don’t always make the best subjects for papers. ([Location 379](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=379)) ^396633020 - But when you damp oscillations, you lose the high points as well as the low. This is not a problem for big companies, because they don’t win by making great products. Big companies win by sucking less than other big companies. ([Location 440](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=440)) ^396633021 - The other problem with startups is that there is not much overlap between the kind of software that makes money and the kind that’s interesting to write. ([Location 453](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=453)) ^396633022 - I think the answer to this problem, in the case of software, is a concept known to nearly all makers: the day job. This phrase began with musicians, who perform at night. More generally, it means you have one kind of work you do for money, and another for love. ([Location 460](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=460)) ^396633023 - Maybe it would be good for hackers to act more like painters, and regularly start over from scratch, instead of continuing to work for years on one project, and trying to incorporate all their later ideas as revisions. ([Location 479](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=479)) ^396633024 - The right way to collaborate, I think, is to divide projects into sharply defined modules, each with a definite owner, and with interfaces between them that are as carefully designed and, if possible, as articulated as programming languages. ([Location 535](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=535)) ^396633025 - Programs should be written for people to read, and only incidentally for machines to execute. ([Location 559](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=559)) ^396633026 ### Chapter 3. What You Can’t Say - What scares me is that there are moral fashions too. They’re just as arbitrary, and just as invisible to most people. But they’re much more dangerous. Fashion is mistaken for good design; moral fashion is mistaken for good. ([Location 586](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=586)) ^396633028 #### The Conformist Test - If everything you believe is something you’re supposed to believe, could that possibly be a coincidence? Odds are it isn’t. Odds are you just think whatever you’re told. ([Location 602](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=602)) ^396633030 - there is something wrong with you if you don’t think things you don’t dare say out loud. ([Location 613](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=613)) ^396633031 #### Trouble - What can’t we say? One way to find these ideas is simply to look at things people do say, and get in trouble for. ([Location 615](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=615)) ^396633033 - Of course, we’re not just looking for things we can’t say. We’re looking for things we can’t say that are true, or at least have enough chance of being true that the question should remain open. ([Location 617](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=617)) ^396633034 - To find them, keep track of opinions that get people in trouble, and start asking, could this be true? ... Take a label — “sexist,” for example — and try to think of some ideas that would be called that. ([Location 626](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=626)) ^396633116 #### Time and Space - Another way to figure out what we’re getting wrong is to look at what used to be acceptable and is now unthinkable. ([Location 653](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=653)) ^396633038 #### Prigs - Most adults, likewise, deliberately give kids a misleading view of the world. One of the most obvious examples is Santa Claus. ([Location 684](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=684)) ^396633040 - The important thing for our purposes is that, as a result, a well brought-up teenage kid’s brain is a more or less complete collection of all our taboos — and in mint condition, because they’re untainted by experience. Whatever we think that will later turn out to be ridiculous, it’s almost certainly inside that head. ([Location 688](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=688)) ^396633041 #### Mechanism - 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. ([Location 709](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=709)) ^396633043 - Why ([Location 729](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=729)) ^396633044 - If, like other eras, we believe things that will later seem ridiculous, I want to know what they are so that I, at least, can avoid believing them. ([Location 733](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=733)) ^396633045 - In the sciences, especially, it’s a great advantage to be able to question assumptions. ([Location 740](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=740)) ^396633046 - In any competitive field, you can win big by seeing things that others daren’t. ([Location 751](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=751)) ^396633047 - 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. ([Location 758](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=758)) ^396633048 #### Pensieri Stretti - When you find something you can’t say, what do you do with it? My advice is, don’t say it. Or at least, pick your battles. ([Location 760](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=760)) ^396633050 - Argue with idiots, and you become an idiot. ([Location 766](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=766)) ^396633051 - The most important thing is to be able to think what you want, not to say what you want. ([Location 766](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=766)) ^396633052 - Draw a sharp line between your thoughts and your speech. Inside your head, anything is allowed. ([Location 768](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=768)) ^396633053 - Closed thoughts and an open face. Smile at everyone, and don’t tell them what you’re thinking. ([Location 772](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=772)) ^396633054 - 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. ([Location 778](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=778)) ^396633055 - So the optimal plan, if you can manage it, is to have a few trusted friends you can speak openly to. This is not just a way to develop ideas; it’s also a good rule of thumb for choosing friends. The people you can say heretical things to without getting jumped on are also the most interesting to know. ([Location 781](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=781)) ^396633056 #### Viso Sciolto? - One way to do this is to ratchet the debate up one level of abstraction. If you argue against censorship in general, you can avoid being accused of whatever heresy is contained in the book or film that someone is trying to censor. ([Location 793](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=793)) ^396633058 Harass with arrows from a distance. - Another way to counterattack is with metaphor. ([Location 797](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=797)) ^396633059 Harass with arrows from a distance. - Best of all, probably, is humor. Zealots, whatever their cause, invariably lack a sense of humor. They can’t reply in kind to jokes. ([Location 800](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=800)) ^396633060 #### Always Be Questioning - 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. ([Location 815](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=815)) ^396633062 - To see fashion in your own time, though, requires a conscious effort. Without time to give you distance, you have to create distance yourself. Instead of being part of the mob, stand as far away from it as you can and watch what it’s doing. And pay especially close attention whenever an idea is being suppressed. ([Location 820](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=820)) ^396633063 ### Chapter 4. Good Bad Attitude - To programmers, “hacker” connotes mastery in the most literal sense: someone who can make a computer do what he wants — whether the computer wants to or not. ([Location 838](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=838)) ^396633065 - The next generation of computer technology has often — perhaps more often than not — been developed by outsiders. ([Location 865](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=865)) ^396633066 - The latest intellectual property laws impose unprecedented restrictions on the sort of poking around that leads to new ideas. ([Location 873](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=873)) ^396633067 - Computers are precise and methodical. Hacking is something you do with a gleeful laugh. ([Location 897](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=897)) ^396633068 - 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. ([Location 906](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=906)) ^396633069 - The government spying on people doesn’t literally make programmers write worse code. It just leads eventually to a world in which bad ideas will win. ([Location 911](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=911)) ^396633070 - When you read what the founding fathers had to say for themselves, they sound more like hackers. “The spirit of resistance to government,” Jefferson wrote, “is so valuable on certain occasions, that I wish it always to be kept alive.” ... They remind us where we come from. They remind us that it is the people who break rules that are the source of America’s wealth and power. ([Location 920](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=920)) ^396633117 ### Chapter 5. The Other Road Ahead - Near my house there is a car with a bumper sticker that reads “death before inconvenience.” Most people, most of the time, will take whatever choice requires least work. ([Location 962](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=962)) ^396633074 ### Chapter 9. Taste for Makers - Taste. You don’t hear that word much now. And yet we still need the underlying concept, whatever we call it. What my friend meant was that he wanted students who were not just good technicians, but who could use their technical knowledge to design beautiful things. ([Location 2108](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=2108)) ^396633076 - Saying that taste is just personal preference is a good way to prevent disputes. The trouble is, it’s not true. ([Location 2128](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=2128)) ^396633077 Taste is not personl preference. It is possible to learn what is beautiful. - GOOD DESIGN IS SIMPLE. ... For architects and designers, it means that beauty should depend on a few carefully chosen structural elements rather than a profusion of superficial ornament. ([Location 2140](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=2140)) ^396633118 - GOOD DESIGN IS TIMELESS. ([Location 2150](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=2150)) ^396633080 - Strangely enough, if you want to make something that will appeal to future generations, one way to do it is to try to appeal to past generations. It’s hard to guess what the future will be like, but we can be sure it will be like the past in caring nothing for present fashions. ([Location 2157](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=2157)) ^396633081 - GOOD DESIGN SOLVES THE RIGHT PROBLEM. ([Location 2161](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=2161)) ^396633082 - GOOD DESIGN IS SUGGESTIVE. ([Location 2169](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=2169)) ^396633083 - GOOD DESIGN IS OFTEN SLIGHTLY FUNNY. ([Location 2179](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=2179)) ^396633084 - GOOD DESIGN IS HARD. ([Location 2186](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=2186)) ^396633085 - GOOD DESIGN LOOKS EASY. ([Location 2200](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=2200)) ^396633086 - GOOD DESIGN USES SYMMETRY. ([Location 2214](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=2214)) ^396633087 - GOOD DESIGN RESEMBLES NATURE. ([Location 2226](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=2226)) ^396633088 - GOOD DESIGN IS REDESIGN. ([Location 2241](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=2241)) ^396633089 - GOOD DESIGN CAN COPY. ([Location 2253](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=2253)) ^396633090 - GOOD DESIGN IS OFTEN STRANGE. ([Location 2264](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=2264)) ^396633091 - GOOD DESIGN HAPPENS IN CHUNKS. ([Location 2278](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=2278)) ^396633092 - Nothing is more powerful than a community of talented people working on related problems. ([Location 2286](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=2286)) ^396633093 - GOOD DESIGN IS OFTEN DARING. ([Location 2292](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=2292)) ^396633094 - 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. ([Location 2300](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=2300)) ^396633095 - The recipe for great work is: very exacting taste, plus the ability to gratify it. ([Location 2306](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=2306)) ^396633096 ### Chapter 11. The Hundred-Year Language - The reason I want to know what languages will be like in a hundred years is so that I know which branch of the tree to bet on now. ([Location 2462](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=2462)) ^396633098 - Any programming language can be divided into two parts: some set of fundamental operators that play the role of axioms, and the rest of the language, which could in principle be written in terms of these fundamental operators. ([Location 2469](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=2469)) ^396633099 - At the very least, it has to be a useful exercise to look closely at the core of a language to see if there are any axioms that could be weeded out. ([Location 2475](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=2475)) ^396633100 - Languages evolve slowly because they’re not really technologies. Languages are notation. ([Location 2487](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=2487)) ^396633101 - 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. ([Location 2538](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=2538)) ^396633102 - But although some object-oriented software is reusable, what makes it reusable is its bottom-upness, not its object-orientedness. Consider libraries: they’re reusable because they’re language, whether they’re written in an object-oriented style or not. ([Location 2567](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=2567)) ^396633103 ### Chapter 12. Beating the Averages - A big chunk of our code was doing things that are hard to do in other languages. The resulting software did things our competitors’ software couldn’t do. ([Location 2798](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=2798)) ^396633105 ### Chapter 13. Revenge of the Nerds - When I see patterns in my programs, I consider it a sign of trouble. The shape of a program should reflect only the problem it needs to solve. Any other regularity in the code is a sign, to me at least, that I’m using abstractions that aren’t powerful enough — often that I’m generating by hand the expansions of some macro that I need to write. ([Location 3104](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=3104)) ^396633107 ### Chapter 14. The Dream Language - If you can keep hope and worry balanced, they will drive a project forward the same way your two legs drive a bicycle forward. In the first phase of the two-cycle innovation engine, you work furiously on some problem, inspired by your confidence that you’ll be able to solve it. In the second phase, you look at what you’ve done in the cold light of morning, and see all its flaws very clearly. But as long as your critical spirit doesn’t outweigh your hope, you’ll be able to look at your admittedly incomplete system and think, how hard can it be to get the rest of the way? ([Location 3319](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=3319)) ^396633109 ### Chapter 15. Design and Research - A prototype doesn’t have to be just a model; you can refine it into the finished product. ... It lets you take advantage of new insights you have along the way. But perhaps even more important, it’s good for morale. ([Location 3438](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=3438)) ^396633119 - Morale is key in design. ([Location 3440](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=3440)) ^396633113 - Building something by gradually refining a prototype is good for morale because it keeps you engaged. ([Location 3444](https://readwise.io/to_kindle?action=open&asin=B0026OR2NQ&location=3444)) ^396633114