The Cathedral & the Bazaar: Musings on Linux and Open Source by an Accidental Revolutionary
Rate it:
4%
Flag icon
ITS stood for “Incompatible Time-sharing System” which gives one a pretty good fix on the MIT hackers’ attitude. They wanted it their way.
5%
Flag icon
The PDP-10 hackers tended to consider the Unix crowd a bunch of upstarts, using tools that looked ridiculously primitive when set against the baroque, lovely complexities of LISP and ITS. “Stone knives and bearskins!” they muttered.
8%
Flag icon
Until the Linux development, everyone believed that any software as complex as an operating system had to be developed in a carefully coordinated way by a relatively small, tightly-knit group of people.
8%
Flag icon
The mainstreaming of the Internet even brought the hacker culture the beginnings of respectability and political clout. In 1994 and 1995 hacker activism scuppered the Clipper proposal which would have put strong encryption under government control. In 1996 hackers mobilized a broad coalition to defeat the misnamed “Communications Decency Act” and prevent censorship of the Internet.
9%
Flag icon
Linus Torvalds’s style of development — release early and often, delegate everything you can, be open to the point of promiscuity — came as a surprise.
10%
Flag icon
Every good work of software starts by scratching a developer’s personal itch.
10%
Flag icon
Good programmers know what to write. Great ones know what to rewrite (and reuse).
10%
Flag icon
“Plan to throw one away; you will, anyhow.”
11%
Flag icon
Treating your users as co-developers is your least-hassle route to rapid code improvement and effective debugging.
12%
Flag icon
Rather, Linus seems to me to be a genius of engineering and implementation, with a sixth sense for avoiding bugs and development dead-ends and a true knack for finding the minimum-effort path from point A to point B.
16%
Flag icon
Often, the most striking and innovative solutions come from realizing that your concept of the problem was wrong.
18%
Flag icon
When writing gateway software of any kind, take pains to disturb the data stream as little as possible — and never throw away information unless the recipient forces you to!
19%
Flag icon
Nowadays it’s more important for a language to be convenient for humans than to be cheap for the computer.
19%
Flag icon
A security system is only as secure as its secret. Beware of pseudo-secrets.
20%
Flag icon
A bazaar project coordinator or leader must have good people and communications skills.
20%
Flag icon
In order to build a development community, you need to attract people, interest them in what you’re doing, and keep them happy about the amount of work they’re doing.
20%
Flag icon
To solve an interesting problem, start by finding a problem that is interesting to you.
20%
Flag icon
In his discussion of “egoless programming”, Weinberg observed that in shops where developers are not territorial about their code, and encourage other people to look for bugs and potential improvements in it, improvement happens dramatically faster than elsewhere.
22%
Flag icon
Both the fetchmail and Linux kernel projects show that by properly rewarding the egos of many other hackers, a strong developer/coordinator can use the Internet to capture the benefits of having lots of co-developers without having a project collapse into a chaotic mess.
25%
Flag icon
Human beings generally take pleasure in a task when it falls in a sort of optimal-challenge zone; not so easy as to be boring, not too hard to achieve.
25%
Flag icon
A happy programmer is one who is neither underutilized nor weighed down with ill-formulated goals and stressful process friction.
25%
Flag icon
It may well turn out that one of the most important effects of open source’s success will be to teach us that play is the most economically efficient mode of creative work.
32%
Flag icon
In gift cultures, social status is determined not by what you control but by what you give away.
33%
Flag icon
“You may not work to get reputation, but the reputation is a real payment with consequences if you do the job well.”
35%
Flag icon
Furthermore, past bugs are not automatically held against a developer; the fact that a bug has been fixed is generally considered more important than the fact that one used to be there.
38%
Flag icon
Continued devotion to hard, boring work (like debugging, or writing documentation) is more praiseworthy than cherrypicking the fun and easy hacks.
46%
Flag icon
What they know is this: the price a consumer will pay is effectively capped by the expected future value of vendor service (where “service” is here construed broadly to include enhancements, upgrades, and follow-on projects).
46%
Flag icon
In other words, software is largely a service industry operating under the persistent but unfounded delusion that it is a manufacturing industry.
48%
Flag icon
Indeed, widespread use of open-source software tends to increase its value, as users fold in their own fixes and features (code patches).
48%
Flag icon
Part of the answer lies in the fact that people don’t merely need solutions, they need solutions on time.
50%
Flag icon
in a properly-written accounting package, business knowledge should not be expressed in code at all but rather in a schema or specification language implemented by the accounting engine (for a closely parallel case, consider the way that database schemas separate business knowledge from the mechanics of the database engine).
50%
Flag icon
Security is an aspect of reliability; only algorithms and implementations that have been thoroughly peer-reviewed can possibly be trusted as secure.
50%
Flag icon
Going this path, you can get the exact features and customizability you want, though you’ll pay for it in development time. Your firm may also find it has a problem when you retire or leave.
Light Bringer
Custom or in-house developement
55%
Flag icon
When the rent from secret bits is higher than the return from open source, it makes economic sense to be closed-source. When the return from open source is higher than the rent from secret bits, it makes sense to go open source.
56%
Flag icon
A consumer’s rational desire to avoid being locked into a monopoly supplier will increase its interest in open source (and, hence, the competitive-market value for suppliers of going open) as the software becomes more critical to that consumer.
63%
Flag icon
In a future that includes competition from open source, we can expect that the eventual destiny of any software technology will be to either die or become part of the open infrastructure itself.
64%
Flag icon
If you’re really ahead of the game, plagiarism is a trap you want your competitors to fall into!
67%
Flag icon
The real conceptual breakthrough, though, was admitting to ourselves that what we needed to mount was in effect a marketing campaign — and that it would require marketing techniques (spin, image-building, and rebranding) to make it work.
75%
Flag icon
Hackers solve problems and build things, and they believe in freedom and voluntary mutual help.
75%
Flag icon
So, if you want to be a hacker, repeat the following things until you believe them: The world is full of fascinating problems waiting to be solved.
75%
Flag icon
(You also have to develop a kind of faith in your own learning capacity — a belief that even though you may not know all of what you need to solve a problem, if you tackle just a piece of it and learn from that, you’ll learn enough to solve the next piece — and so on, until you’re done.)
75%
Flag icon
Creative brains are a valuable, limited resource. They shouldn’t be wasted on re-inventing the wheel when there are so many fascinating new problems waiting out there.
76%
Flag icon
So to behave like a hacker, you have to develop an instinctive hostility to censorship, secrecy, and the use of force or deception to compel responsible adults. And you have to be willing to act on that belief.
76%
Flag icon
Hackers won’t let posers waste their time, but they worship competence — especially competence at hacking, but competence at anything is good.
76%
Flag icon
The hacker attitude is vital, but skills are even more vital.
79%
Flag icon
Being a social outcast helps you stay concentrated on the really important things, like thinking and hacking.
85%
Flag icon
But there is a more fundamental error in the implicit assumption that the cathedral model (or the bazaar model, or any other kind of management structure) can somehow make innovation happen reliably.
85%
Flag icon
Insight comes from individuals.
Light Bringer
This is basically destroying brainstorming
85%
Flag icon
Therefore the root problem of innovation (in software, or anywhere else) is indeed how not to squash it — but, even more fundamentally, it is how to grow lots of people who can have insights in the first place.