Hackers & Painters: Big Ideas from the Computer Age
Rate it:
Open Preview
Kindle Notes & Highlights
Read between February 28 - March 6, 2021
2%
Flag icon
Computers have had far more effect on the form of our lives than space travel or nuclear technology.
2%
Flag icon
Good hackers develop a habit of questioning everything.
5%
Flag icon
When the things you do have real effects, it’s no longer enough just to be pleasing. It starts to be important to get the right answers, and that’s where nerds show to advantage.
6%
Flag icon
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.
7%
Flag icon
We have a phrase to describe what happens when rankings have to be created without any meaningful criteria. We say that the situation degenerates into a popularity contest.
8%
Flag icon
The real problem is the emptiness of school life. We won’t see solutions till adults realize that.
9%
Flag icon
The way to create something beautiful is often to make subtle tweaks to something that already exists, or to combine existing ideas in a slightly new way. This kind of work is hard to convey in a research paper.
10%
Flag icon
Hackers need to understand the theory of computation about as much as painters need to understand paint chemistry. You need to know how to calculate time and space complexity, and perhaps also the concept of a state machine, in case you want to write a parser.
10%
Flag icon
As far as I can tell, the way they taught me to program in college was all wrong. You should figure out programs as you’re writing them, just as writers and painters and architects do.
11%
Flag icon
Big companies want to decrease the standard deviation of design outcomes because they want to avoid disasters. 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.
12%
Flag icon
Relentlessness wins because, in the aggregate, unseen details become visible.
13%
Flag icon
It’s a good idea to save some easy tasks for moments when you would otherwise stall.
13%
Flag icon
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.
13%
Flag icon
Empathy is probably the single most important difference between a good hacker and a great one.
13%
Flag icon
Programs should be written for people to read, and only incidentally for machines to execute.
15%
Flag icon
The statements that make people mad are the ones they worry might be believed. 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? Ok, it may be heretical (or whatever modern equivalent), but might it also be true?
15%
Flag icon
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.
18%
Flag icon
Whatever the reason, there seems a clear correlation between intelligence and willingness to consider shocking ideas.
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. The most important thing is to be able to think what you want, not to say what you want.
19%
Flag icon
The people you can say heretical things to without getting jumped on are also the most interesting to know.
20%
Flag icon
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.
20%
Flag icon
Always be questioning. That’s the only defence. What can’t you say? And why?
25%
Flag icon
With server-based software, most of the change is small and incremental. That in itself is less likely to introduce bugs.
26%
Flag icon
Software companies are sometimes accused of letting the users debug their software. And that is just what I’m advocating.
27%
Flag icon
Our policy of fixing bugs on the fly changed the relationship between customer support people and hackers.
27%
Flag icon
At most software companies, support people are underpaid human shields, and hackers are little copies of God the Father, creators of the world.
27%
Flag icon
Within a minute of hearing about a bug from a customer, the support people could be standing next to a programmer hearing him say “Shit, you’re right, it’s a bug.”
27%
Flag icon
Have you ever noticed that when you sit down to write something, half the ideas that end up in it are ones you thought of while writing? The same thing happens with software.
27%
Flag icon
Working to implement one idea gives you more ideas. So shelving an idea costs you not only that delay in implementing it, but also all the ideas that implementing it would have led to.
27%
Flag icon
Plans are just another word for ideas on the shelf. When we thought of good ideas, we implemented them.
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.
28%
Flag icon
Fortunately, this process also works in reverse: as groups get smaller, software development gets exponentially more efficient.
29%
Flag icon
If you give up direct control of the servers, you give up most of the advantages of developing web-based applications.
31%
Flag icon
If a company wants to make a platform that startups will build on, they have to make it something that hackers themselves will want to use.
33%
Flag icon
Web-based applications are cheap to develop, and easy for even the smallest startup to deliver. They’re a lot of work, and of a particularly stressful kind, but that only makes the odds better for startups.
33%
Flag icon
There are only two things you have to know about business: build something users love, and make more than you spend.
34%
Flag icon
software has to be designed by hackers who understand design, not designers who know a little about software.
34%
Flag icon
If you can’t design software as well as implement it, don’t start a startup.
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.
34%
Flag icon
A startup is a small company that takes on a hard technical problem.
35%
Flag icon
There is a large random factor in the success of any company.
35%
Flag icon
If you want to create wealth, it will help to understand what it is. Wealth is not the same thing as money.3 Wealth is as old as human history. Far older, in fact; ants have wealth. Money is a comparatively recent invention.
36%
Flag icon
A programmer can sit down in front of a computer and create wealth. A good piece of software is, in itself, a valuable thing. There is no manufacturing to confuse the issue. Those characters you type are a complete, finished product. If someone sat down and wrote a web browser that didn’t suck (a fine idea, by the way), the world would be that much richer.
37%
Flag icon
The top 5% of programmers probably write 99% of the good software.
37%
Flag icon
All a company is is a group of people working together to do something people want. It’s doing something people want that matters, not joining the group.
38%
Flag icon
To get rich you need to get yourself in a situation with two things, measurement and leverage. You need to be in a position where your performance can be measured, or there is no way to get paid more by doing more. And you have to have leverage, in the sense that the decisions you make have a big effect.
39%
Flag icon
A startup is not merely ten people, but ten people like you.
39%
Flag icon
Steve Jobs once said that the success or failure of a startup depends on the first ten employees. I agree. If anything, it’s more like the first five.
« Prev 1 3 4