Wednesday, December 24, 2008

http://cat-v.org/quotes

http://cat-v.org/quotes

object-oriented design is the roman numerals of computing.

-- Rob Pike

There are two ways of constructing a software design: One way is to make it so
simple that there are obviously no deficiencies and the other way is to make it so
complicated that there are no obvious deficiencies.

-- C.A.R. Hoare, The 1980 ACM Turing Award Lecture



The cheapest, fastest, and most reliable components are those that aren't there.

-- Gordon Bell



One of my most productive days was throwing away 1000 lines of code.

-- Ken Thompson



When in doubt, use brute force

-- Ken Thompson



We have persistant objects, they're called files.

-- ken



If you want to go somewhere, goto is the best way to get there

-- ken



The X server has to be the biggest program I've ever seen that doesn't do anything
for you.

-- ken



A smart terminal is not a smartass terminal, but rather a terminal you can educate

-- Rob Pike



object-oriented design is the roman numerals of computing.

-- Rob Pike



Not only is UNIX dead, it's starting to smell really bad.

-- Rob Pike circa 1991



cat came back from Berkeley waving flags

-- Rob Pike



The most effective debugging tool is still careful thought, coupled with
judiciously placed print statements.

-- Brian W. Kernighan, in the paper Unix for Beginners (1979)



Debugging is twice as hard as writing the code in the first place. Therefore, if
you write the code as cleverly as possible, you are, by definition, not smart
enough to debug it.

-- Brian W. Kernighan



Controlling complexity is the essence of computer programming.

-- Brian Kernigan



Beauty is more important in computing than anywhere else in technology because
software is so complicated. Beauty is the ultimate defence against complexity.

-- David Gelernter



UNIX was not designed to stop its users from doing stupid things, as that would
also stop them from doing clever things.

-- Doug Gwyn



If you're willing to restrict the flexibility of your approach, you can almost
always do something better.

-- John Carmack



And folks, let's be honest. Sturgeon was an optimist. Way more than 90% of code
is crap.

-- viro [http://www.ussg.iu.edu/hypermail/linux/kernel/0310.0/0870.html]



A data structure is just a stupid programming language.

-- R. Wm. Gosper



The essence of XML is this: the problem it solves is not hard, and it does not
solve the problem well.

-- Phil Wadler, POPL 2003



A program that produces incorrect results twice as fast is infinitely slower.

-- John Osterhout



Life is too short to run proprietary software.

-- Bdale Garbee



And my orders are to weed out all non-hackers who do not pack the gear to serve in
my beloved Corps!

-- Master Gunnery Sergeant Boyd Hartman



God-awful Compiler Crap



I had a nightmare once in which I a had convinced a friend how wonderful C++ is.
A while later he came back., and he was mad.

-- Robin Rosenberg
[http://groups.google.com/groups?selm=1fYEA-pz-21%40gated-at.bofh.it]



I always viewed HURD development like the Special Olympics of free
software.



XML is like violence: if it doesn't solve your problem, you aren't using enough of
it

-- Heard from someone working at M$



threads [and] signals [are] a platform-dependant trail of misery, despair, horror
and madness

-- Anthony Baxter [http://mail.python.org/pipermail/python-dev/2005-July/]



Computers are about making life easier in much the same way that the Republican
party is about fiscal responsibility and a culture of life.

-- mister_borogove
[http://www.livejournal.com/users/jwz/536902.html?thread=9506374#t9506374]



The Internet is not for sissies.

-- Paul Vixie
[http://groups.google.com/groups?selm=VIXIE.94Sep26163002%40gw.home.vix.com]



All software sucks, be it open-source [or] proprietary. The only question is what
can be done with particular instance of suckage, and that's where having the
source matters.

-- viro [http://www.ussg.iu.edu/hypermail/linux/kernel/0404.3/1344.html]



C++ damages the brain ... -- EWD



the computing scientist's main challenge is not to get confused by the
complexities of his own making

-- E. W. Dijkstra



In computer science, we stand on each other's feet.

-- Brian Reid



it's not that perl programmers are idiots, it's that the language rewards idiotic
behavior in a way that no other language or tool has ever done

-- Erik Naggum, comp.lang.lisp



Out-of-band == should be on a separate channel...

-- Al Viro



It's a curious thing about our industry: not only do we not learn from our
mistakes, we also don't learn from our successes.

-- Keith Braithwaite



Ethernet always wins.

-- Andy Bechtolsheim



The central enemy of reliability is complexity.

-- Geer et al.



Simplicity is prerequisite for reliability.

-- Edsger W. Dijkstra



Beware of "the real world". A speaker's apeal to it is always an invitation not
to challenge his tacit assumptions.

-- Edsger W. Dijkstra



Unix is a junk OS designed by a committee of PhDs

-- Dave Cutler



i've wondered whether Linux sysfs should be called syphilis

-- forsyth



A program is portable to the extent that it can be easily moved to a new computing
environment with much less effort than would be required to write it afresh.

-- W. Stan Brown
[http://groups.google.com/group/comp.std.c/msg/083fb09444dbbc76]



- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



The Eight Fallacies of Distributed Computing



Essentially everyone, when they first build a distributed application, makes

the following eight assumptions. All prove to be false in the long run and all

cause big trouble and painful learning experiences.



1. The network is reliable

2. Latency is zero

3. Bandwidth is infinite

4. The network is secure

5. Topology doesn't change

6. There is one administrator

7. Transport cost is zero

8. The network is homogeneous



-- Peter Deutsch



- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



From: rsc@plan9.bell-labs.com (Russ Cox)

Subject: Re: [9fans] design clairvoyance & the 9 way

Date: Thu, 8 May 2003 04:05:31 GMT



> What does tomorrow's unix look like?



I'm confident that tomorrow's Unix will look like today's Unix, only cruftier.



Russ



- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



You want to make your way in the CS field? Simple. Calculate rough time of

amnesia (hell, 10 years is plenty, probably 10 months is plenty), go to the

dusty archives, dig out something fun, and go for it. It's worked for many

people, and it can work for you.



-- Ron Minnich



- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



From: Alexander Viro

Subject: Re: ANNOUNCE: Linux Kernel ORB: kORBit

Date: Sat, 9 Dec 2000 00:39:36 -0500 (EST)



[...]



Yeah... "Infinitely extendable API" and all such. Roughly translated

as "we can't live without API bloat". Frankly, judging by the GNOME

codebase people who designed the thing[GNOME] are culturally incompatible with

UNIX.



- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



> What's wrong with perl?



It combines all the worst aspects of C and Lisp: a billion different

sublanguages in one monolithic executable. It combines the power of

C with the readability of PostScript.



> To me perl is the triumph of utalitarianism.



So are cockroaches. So is `sendmail'.



-- jwz [http://groups.google.com/groups?selm=33F4D777.7BF84EA3%40netscape.com]



- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



From: ron minnich

Date: Wed, 3 Mar 2004 06:05:39 -0700 (MST)

Subject: [9fans] microkernels



are they the O-O of the OS world? Always the promises ...



ron



- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



Subject: Re: BK, deltas, snapshots and fate of -pre...

From: Alexander Viro (viro@math.psu.edu)

Date: Sun Apr 21 2002 - 01:27:56 EST

Url: http://groups.google.com/group/fa.linux.kernel/msg/caede4c7fd703c4e



[...]



Sigh... When it comes to software there are three systems of beliefs.

One of them:



* Thou shalt know by your heart that all software sucks.

* Beware of those who say that their software does not suck, for they

are either fools or liars.

* Beware of those who give you garments and do not allow to mend them,

for sooner or later thou shalt find what needs mending.

* But beware also of those who give you badly rotten garments and say

"Thou shalt prefer that above everything, for thou art allowed to

mend it".

* Thou shalt not treat software as a living being, for it is not one.

* Choose a license of thine liking for sofware thou writest and do not

blame those who choose differently for software they write.

* Know when to say "It can be mended, I shalt do that" and when to

say "It is rotten beyond repair".

* Choose free over non-free when it is better or when thou art willing

to fix what is broken.

* When shit happens, think how to fix it.



Another:



* All software wants to be free

* Thou shalt not use non-free software

* Thou shalt not mention non-free software

* Thou shalt make all thine software free

* Thou shalt choose free above working, even if free one is broken

beyond repair

* When shit happens, add new features



and the last one:



* Our 3133t! K3wl! Software! Does Not Suck!!!

* Always choose our software above everything else

* When shit happens, we add new features



If you happen to believe in second variant, you have my condolence as

long as you don't force your beliefs on everybody else. If you choose

to emulate door-to-door pests^H^H^H^Hreachers - don't expect to be

treated differently.



- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



People do have a right to put their code under whatever license they like.

Now, _I_ won't use the stuff I don't have a source for unless I have

exceptionally good reason to believe that authors of that stuff are

among the few percents of programmers who *can* find their arse without

outside help. But that has nothing to do with licensing or any moral

considerations and everything to the fact that I know what kind of crap

most of the software is.



- Al Viro on linux-kernel



- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Linus Torvalds wrote:

> Ehh.. Telling people "don't do that" simply doesn't work. Not if they can

> do it easily anyway. Things really don't get fixed unless people have a

> certain pain-level to induce it to get fixed.



Umm... How about the following: you hit delete on patches that introduce

new ioctls, I help to provide required level of pain. Deal?



- Al Viro on linux-kernel



- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



James Simmons wrote:

> Crap can work. Given enough thrust pigs will fly, but it's not necessary a

> good idea. [ Alexander Viro on linux-kernel ]



Watch the attributions.



With sufficient thrust, pigs fly just fine.

However, this is not necessarily a good idea.

It is hard to be sure where they are going to land,

and it could be dangerous sitting under them as they fly overhead.

From RFC1925, R Callon, 1996.



- Al Viro on linux-kernel



- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



In the same world where Vomit-Making System is elegant, SGI "designs" are

and NT is The Wave Of Future(tm). Pardon me, but I'll stay in our universe

and away from the drugs of such power.



- Al Viro on linux-kernel



- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



> > Or even XML. Ouch! No need to throw things at me!

>

> It seems they would be thrown! XML in kernel is too much. OpenOffice and



They won't be thrown. They will be slowly driven under the nails, so that

victim could experience the joy equal to that of dealing with XML.



- Alexander Viro on linux-kernel



- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



A Professor of Computer Science gave a paper on how he uses Linux to teach his

undergraduates about operating systems. Someone in the audience asked `why use

Linux rather than Plan 9?' and the professor's answer was approximately `Plan 9

looks like it was written by experts; Linux looks like something my students

could aspire to write'.



- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



Computer: Your nominators and endorsers for the Kanai Award consistently

characterized your work as simple yet powerful. How do you discover such

powerful abstractions?



Thompson: It is the way I think. I am a very bottom-up thinker. If you give

me the right kind of Tinker Toys, I can imagine the building. I can sit there

and see primitives and recognize their power to build structures a half mile

high, if only I had just one more to make it functionally complete. I can see

those kinds of things.



The converse is true, too, I think. I can't from the building imagine the

Tinker Toys. When I see a top-down description of a system or language that

has infinite libraries described by layers and layers, all I just see is a

morass. I can't get a feel for it. I can't understand how the pieces fit; I

can't understand something presented to me that's very complex. Maybe I do

what I do because if I built anything more complicated, I couldn't understand

it. I really must break it down into little pieces.



- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



if you're capable of understanding `finalised virtual hyperstationary factory

class', remembering the Java class hierarchy, and all the details of the Java

Media Framework, you are (a) a better man than i am (b) capable of filling your

mind with large chunks of complexity, so concurrent programming should be

simple by comparison. go for it.



ps. i made up the hyperstationary, but then again, it's probably a design

pattern.



-- forsyth



- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



..At first I hoped that such a technically unsound project would collapse but I

soon realized it was doomed to success. Almost anything in software can be

implemented, sold, and even used given enough determination. There is nothing a

mere scientist can say that will stand against the flood of a hundred million

dollars. But there is one quality that cannot be purchased in this way -and

that is reliability. The price of reliability is the pursuit of the utmost

simplicity. It is a price which the very rich find most hard to pay.



- C.A.R. Hoare



- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Deleted code is debugged code.

-- Jeff Sickel

No comments: