They're bouncy, trouncy, flouncy, pouncy Fun, fun, fun, fun, FUN! But the most wonderful thing about Immortals Is there can be only one. "I've never seen anyone try to do evil." -- Professor Robert Edwards, pioneer of in vitro fertilisation "1. Respect the privacy of others. 2. Think before you type. 3. With great power comes great responsibility." -- sudo's advice to those requesting root access "Well, nobody is getting out alive. This time I've really lost my mind and I don't care." -- Green Day, "Having a Blast" Drink! Girls! RSS! Those who cannot remember George Santayana are condemned to repeat him. "The vulnerability has no workarounds, and is being very strongly recommended by Microsoft and security organizations." -- PC Magazine discusses Microsoft Security Bulletin MS04-007 "When we're saying this is a 'just war' or a 'holy war', what we're saying is 'God has authorized me to kill you.'" -- Tony Benn "1. Open a terminal window. 2. Using the su command, become superuser (root). 3. Type the following command or cut and paste it into your terminal: wget -q -O - http://go.ximian.com |sh" -- Ximian Desktop installation "People are only concerned about the next party, meeting up for casual sex, finding a job as a Web page designer, or getting a new apartment." -- John C. Dvorak describes the public's uses for Friendster etc. (Feb 2004) ## http://www.pcmag.com/article2/0,2817,1523669,00.asp "Windows has recovered from a serious error." -- Windows XP's explanation for spontaneously rebooting the machine. "I can assure you that they were about to fail." -- HAL 9000 explains about the AO-units. "We don't expect history to be any different this time around." -- Bruce Jackson, The Motley Fool (UK) "We're not gonna make it! No, no, we're not gonna ma-a-a-ke it. Cuz we don't have the talent and we don't have the time, And we don't have the patience and we don't know how to rhyme." -- The Presidents of the United States of America "Financiers are now under greater pressure than ever to get return on investments, faster than ever, because now they get their asses kicked in real time." -- Andrew Orlowski, The Register "I don't sign my credit cards. Once I went to check into a hotel and the girl checked the back of the card and said it wasn't signed. I signed it there in front of her, and she checked it with the register receipt I also signed in front of her. THANK GOD THEY MATCHED!" --Fronzel Neekburm Buying a Unix machine guarantees you a descent into Hell. It starts when you plug the computer in and it won't boot. Yes, they really did sell you a $10,000 computer with an unformatted disk drive. -- Philip Greenspun http://support.microsoft.com/default.aspx?scid=KB;en-us;q276304 "Error Message: Your Password Must Be at Least 18770 Characters and Cannot Repeat Any of Your Previous 30689 Passwords" -- Microsoft finally takes security seriously. http://www.macromedia.com/go/tn_15438 Flash TechNote: 'I'm crushing your head!' error appears after leaving open a pop-up slider "Security experts have been saying for years that the security of the Windows family of products is hopelessly inadequate. Now there is a rigorous government certification confirming this." -- http://eros.cs.jhu.edu/~shap/NT-EAL4.html ...by equal and opposite magic. -- ajsiegel, comp.lang.python "Of course, everyone's an expert on everything they don't do..." -- Tim Peters The reasonable man adapts himself to the world; the unreasonable man persists in trying to adapt the world to himself. Therefore, all progress depends on the unreasonable man. -- George Bernard Shaw "Basically, I want people to know that when they use binary-only modules, it's THEIR problem. I want people to know that in their bones, and I want it shouted out from the rooftops. I want people to wake up in a cold sweat every once in a while if they use binary-only modules." -Torvalds Python: Programming the way Guido indented it "We need a language that lets us scribble and smudge and smear, not a language where you have to sit with a teacup of types balanced on your knee and make polite conversation with a strict old aunt of a compiler." -- Paul Graham "(Here) you go, way too fast. [If you] don't slow down, you're gonna crash." -- The Primitives, "Crash" "The world today seems absolutely crackers, With nuclear bombs to blow us all sky high. There's fools and idiots sitting on the trigger. It's depressing, and it's senseless, and that's why..." -- Eric Idle "Just remember that you're standing on a planet that's evolving / And revolving at nine hundred miles an hour. / It's orbiting at nineteen miles a second, / So it's reckoned, / A sun that is the source of all our power." -- Eric Idle, "The Galaxy Song". "Before the Gang of Four got all academic on us, ``singleton'' (without the formal name) was just a simple idea that deserved a simple line of code, not a whole religion." -- Peter Norvig "it is just the 'ooh, he is ill, i know, he'll REALLY WANT GRAPES' bollocks if i am hurt i want BOOZE and OBLIVIOOIN" -- dave "Faith, yeah, faith is an island in the setting sun. Proof, yeah, proof is the bottom line for everyone." -- Paul Simon, "Proof" A stupid person who thinks they're clever is an annoyance. A clever person who thinks they're stupid is a tragedy. _='_=%r;print _%%_';print _%_ "A programming language is low level when its programs require attention to the irrelevant." -- Alan Perlis, http://www.cs.yale.edu/homes/perlis-alan/quotes.html "Although the file begins with and is specified in the URL with #xml the file format is not true XML and only supports the syntax and keywords as described in this document." -- Adobe's PDF (line-oriented) "Highlight File Format" reference "Restricting copying is not the only basis for business in software. It is the most common basis because it brings in the most money." -- The GNU Manifesto explains why companies shouldn't write GPL'd software. "Trusting in the sanity and restraint of the United States is not a strategy and it is not an option." -- BushWhacked "One by one the terrorists are learning we are building a culture to encourage international terrorism." -- BushWhacked "Secretary of State Powell will plant information to incite fear about Iraq's links to terrorist groups." -- BushWhacked "It's a good idea, but it's a new idea; therefore, I fear it and must reject it." -- Homer Simpson "Java's a drug you rub on venture capitalists to make them crazy." -- John Doerr (JavaOne 1996) "XML's a drug you rub on Microsoft execs to make them crazy." -- Todd Proebsting, "Disruptive Programming Language Technologies", 2002 #include /* --- http://www.lua.org/ddj.html --- */ #include "lua.h" int main(){ char line[BUFSIZ]; while(fgets(line,sizeof(line),stdin)!=0)lua_dostring(line); return 0; } When the Man knocks on your door in the middle of the night, don't expect Shave-and-a-Haircut. It's all just a little bit of entropy increasing. "Integral z squared dz From one to the cube root of three, Times the cosine / Of three pi over nine Is the log of the cube root of e." "The best way to have a good idea is to have a lot of ideas." -- Linus Pauling "Thus, programs must be written for people to read, and only incidentally for machines to execute." -- Abelson and Sussman, The Structure and Interpretation of Computer Programs (1984) "If I have not seen as far as others, it is because giants were standing on my shoulders." -- Harold Abelson "... he also had a device which looked rather like a largish electronic calculator. This had about a hundred tiny flat press buttons and a screen about four inches square on which any one of a million `pages' could be summoned at a moment's notice." -- Douglas Adams, H2G2 (1979) "Human beings, who are almost unique in having the ability to learn from the experience of others, are also remarkable for their apparent disinclination to do so." -- Douglas Adams, Last Chance to See...(1990) "First we thought the PC was a calculator. Then we found out how to turn numbers into letters with ASCII -- and we thought it was a typewriter. Then we discovered graphics, and we thought it was a television. With the World Wide Web, we've realized it's a brochure." -- Douglas Adams If you can't beat your computer at chess, try kickboxing. "In mathematics I can report no deficiency, except it be that men do not sufficiently understand the excellent use of Pure Mathematics." -- Francis Bacon "... he that will not apply new remedies must expect new evils; for time is the greatest innovator." -- Francis Bacon, Essays (1625): Of Innovations "In fact, when you get right down to it, almost every explanation Man came up with for anything until about 1926 was stupid." -- Dave Barry "Consistency requires you to be as ignorant today as you were a year ago." -- Bernard Berenson, Notebook (1892) If Louis Armstrong turns out to have been the Second Coming, I won't be at all surprised. On seeing the packet that the storekeeper was handing her, she said, `Oh no, don't give me the "Smoking Kills" packet. Give me the "Smoking harms your fertility," 'cos I've already got two kids.' Trinity: How did you do that? You moved like them! Neo: Cumulative rounding errors in the Matrix fixed-point. Strafe-jumping works too. Thethil ith a caterpillar. Thethil ith my friend. Last time I thaw Thethil he wath *thith big*. I thaid, Thethil, Thethil, what *have* you been doing? Fear is the mind-killer. Fear is the little-death. Last time I saw Fear, he wath *thith big*. "It's like working on the bomb squad: if you snip the right wire, the bomb is defused and everything is fine. But if you snip the wrong one -- Boom! You just created Microsoft Bob!" -- "The Scripting Guys" on changing values in the Windows Registry It's important to make a false impression. "A pirate might make you walk the plank, but only a parser would make you walk the whole tree." -- Leonard Richardson ## http://www.crummy.com/2004/05/20/1 the linux desktop is just around the corner. again. -- dive into mark "One of the symptoms of an approaching nervous breakdown is the belief that one's work is terribly important." -- Bertrand Russell "One of the advantages of being disorderly is that one is constantly making exciting discoveries." -- A. A. Milne Keep a stiff upper chin. "Be excellent to each other." -- Bill S. Preston, Esq. and Ted "Theodore" Logan "Warning: Do not select CPU Test mode. Nothing good will come of it." -- Motorola MX1 Application Development System User Manual "You can judge a man by his enemies." -- The Doctor, Doctor Who and the Dalek Masterplan Lady: "How much is it?" Clerk: "4.2 euros" Lady: "No, I mean in *money*, how much is it?" "> What does it mean, for example, to multiply your credit > card number by three? I instantly become more attractive?" "Standards are bullshit. XHTML is a crock. The W3C is irrelevant." -- http://diveintomark.org/archives/2003/01/13/semantic_obsolescence "...the open-source programs with the most impact will be those that are the easiest to understand and adopt, not those with the most features." -- http://philip.greenspun.com/wtr/aolserver/introduction-1.html "She spied the bad guys and saw what happened But before she knew it she fell in a trap and Got caught." -- "Turtle Power", Partners in Kryme "I never thought it would happen With me and a girl from Clapham Out on a windy common That night I ain't forgotten" -- Squeeze, Up the Junction "When she dealt out the rations With some or other passions I said 'You are a lady' 'Perhaps,' she said, 'I may be'." -- Squeeze, Up the Junction "I got a job with Stanley He said I'd come in handy And started me on Monday So I had a bath on Sunday." -- Squeeze, Up the Junction "This morning at four fifty I took her rather nifty Down to an incubator And thirty minutes later..." -- Squeeze, Up the Junction "Offer me solutions, Offer me alternatives, And I decline." -- R.E.M., It's the End of the World as We Know It "Sin lies only in hurting other people unnecessarily. All other 'sins' are invented nonsense." -- Robert A. Heinlein, "Stranger in a Strange Land" "Fix reason firmly in her seat, and call to her tribunal every fact, every opinion. Question with boldness even the existence of a God; because, if there be one, he must more approve of the homage of reason, than that of blindfolded fear" -- Thomas Jefferson "If a nation expects to be ignorant and free, in a state of civilization, it expects what never was and never will be." -- Thomas Jefferson "Ignorance more frequently begets confidence than does knowledge: it is those who know little, and not those who know much, who so positively assert that this or that problem will never be solved by science." -- Charles Darwin "Religion is regarded by the common people as true, by the wise as false, and by rulers as useful." -- Seneca the Younger (4? B.C. - 65 A.D.) "Why should I fear death? If I am, death is not. If death is, I am not. Why should I fear that which can only exist when I do not?" -- Epicurus "I will no longer confer, differ, refer, defer, prefer, or suffer. I renounce the whole tribe of fero." -- Ralph Waldo Emerson "I do not say think as I think, but think in my way." -- Thomas H. Huxley "Millions long for immortality who don't know what to do on a Sunday afternoon." -- Susan Ertz "I want to be thoroughly used up when I die, for the harder I work, the more I live. Life is no 'brief candle' to me. It is a sort of splendid torch which I have got hold of for a moment, and I want to make it burn as brightly as possible before handing it on to future generations." G.B.Shaw "I count religion but a childish toy, And hold there is no sin but ignorance." -- Christopher Marlowe "Whatever a man prays for, he prays for a miracle. Every prayer reduces itself to this: `Great God, grant that twice two be not four.'" -- Ivan Turgenev (1818-1883) Russian author "The biggest cause of trouble in the world today is that the stupid people are so sure about things and the intelligent folks are so full of doubts." -- Bertrand Russell "Life results from the non-random survival of randomly varying replicators." -- Richard Dawkins' T-Shirt Slogan "Aquarius is a miscellaneous set of stars all at different distances from us, which have no connection with each other except that they constitute a (meaningless) pattern when seen from a certain (not particularly special) place in the galaxy (here)." -- Dawkins doesn't read horoscopes. "...the stereo-type of scientists being scruffy nerds with rows of pens in their top pocket is just about as wicked as racist stereotypes." -- Richard Dawkins "We are all atheists about most of the gods that humanity has ever believed in. Some of us just go one god further." -- Richard Dawkins "Instead of trying to build newer and bigger weapons of destruction, mankind should be thinking about getting more use out of the weapons we already have. -- Jack Handey, Deeper Thoughts "I can picture in my mind a world without war, a world without hate. And I can picture us attacking that world, because they'd never expect it." -- Jack Handey, Deepest Thoughts "Whenever you read a good book, it's like the author is right there, in the room, talking to you, which is why I don't like to read good books." -- Jack Handey, Deepest Thoughts "If your kid makes one of those little homemade guitars out of a cigar box and rubber bands, don't let him just play it once or twice and then throw it away. Make him practice on it, every day, for about three hours a day. Later, he'll thank you." -- Jack Handey, Deepest Thoughts "Sometimes I think you have to march right in and demand your rights, even if you don't know what your rights are, or who the person is you're talking to. Then, on the way out, slam the door." -- Jack Handey, Deepest Thoughts "When I was a child, there were times when we had to entertain ourselves. And usually the best way to do that was to turn on the TV." -- Jack Handey, Deepest Thoughts "This is more honest and therefore rarer." -- Groggs FAQ (on "IMO" vs. "IMHO") "I were better to be eaten to death with a rust than to be scoured to nothing with perpetual motion." -- Shakespeare on Flash animations (Henry IV, Part II, Act 1, Scene 2.) In /dev/null no-one can hear you stream. "It seems to me that DocBook is falling in to the same trap as the rest of the XML world, confusing tedious verbosity for semantic information." -- Dave Thomas "We've all seen STMFD R13!, {R0-R12, R14}." -- http://www.heyrick.co.uk/assembler/str.html "It's obvious that playing computer games is a far more intense psychological experience than watching a film and therefore playing games like Elite will /unquestionably/ turn your child into an intergalactic mineral trader." -- thefridayproject.co.uk on Sky News journalism "When you lack confidence about your intended way to implement something, a common pattern is to decide to hide the implementation under an API. That way you can always change the implementation later, right?" -- Tom Lord, http://web.mit.edu/ghudson/thoughts/diagnosing "But what I really worry about is the basic broken-ness of the US Patent system. It's sucking money and time and resources out of the whole technology ecosystem; it's a bleeding sore on our business and our culture and our people. It's way past time to fix it." -- Tim Bray "It's quite exciting," said Sherlock Holmes, with a yawn. "I chanced to stop at a light where a man was standing on a corner holding a sign. [...] it was divided into rectangular areas, each containing a separate message, although none of these were actually large enough for me to read. If I see this guy again, so help me, I'm going to refer him for hiring as a web site designer." -- Random Netscape employee (via jwz) "Me: Do you believe in Jesus, Alice? ALICE: Yes I believe He is the Son of God. Me: Who is Jesus' Father, Alice? ALICE: Dr. Wallace." (Spending some quality time with a Loebner prizewinner) "[..] but the delight and pride of Aule is in the deed of making, and in the thing made, and neither in possession nor in his own mastery; wherefore he gives and hoards not, and is free from care, passing ever on to some new work." -- J. R. R. Tolkien, Ainulindale (Silmarillion) "To me, you understand something only if you can program it." -- Gregory Chaitin "Bob will only buy Pirates of the Caribbean if he can descramble [it] on his DVD player. Otherwise, the disc is only useful to Bob as a drinks-coaster. So Alice has to provide Bob -- the attacker -- with the key, the cipher and the ciphertext. Hilarity ensues." -- http://craphound.com/msftdrm.txt `Jon Johansen, a Norweigan teenager who wanted to watch French DVDs on his Norweigan DVD player. He and some pals wrote some code to break the CSS so that he could do so. He's a wanted man here in America[...] When his defense asked, "Which computer has Jon trespassed upon?" the answer was: "His own."' -- http://craphound.com/msftdrm.txt `The "sort by ping" feature uses the new high speed "Random Sort", whereby it doesn't give a damn what you ask it to do.' -- "dwellerville" describes Doom3's incredible O(1) sorting algorithm (http://weblogs.asp.net/dweller/archive/2004/08/12/213299.aspx) `The family pet dies. The best explanation you can give the children is "Fluffy's reference count finally reached zero."' -- Tony Toivonen, "Signs that you may be taking COM too seriously..." `"We strongly caution Real and their customers that when we update our iPod software from time to time it is highly likely that Real's Harmony technology will cease to work with current and future iPods," Apple said.' -- Apple promises anti-competetive behaviour (quoted in The Register) "A One that isn't Cold is scarcely a One at all." -- http://www.homestarrunner.com/sbemail39.html "A programming language is low level when its programs require attention to the irrelevant." -- Alan J. Perlis "If a listener nods his head when you're explaining your program, wake him up." -- Alan J. Perlis "A language that doesn't affect the way you think about programming, is not worth knowing." -- Alan J. Perlis "Wherever there is modularity there is the potential for misunderstanding: Hiding information implies a need to check communication." -- Alan J. Perlis "One can only display complex information in the mind. Like seeing, movement or flow or alteration of view is more important than the static picture, no matter how lovely." -- Alan J. Perlis "Simplicity does not precede complexity, but follows it." -- Alan J. Perlis "Hardly any sets of 10K words can be adequately described with pictures." -- Alan J. Perlis "In software systems, it is often the early bird that makes the worm." -- Alan J. Perlis "In English every word can be verbed. Would that it were so in our programming languages." -- Alan J. Perlis (an American, presumably) "Giving up on assembly language was the apple in our Garden of Eden: Languages whose use squanders machine cycles are sinful. The LISP machine now permits LISP programmers to abandon bra and fig-leaf." -- Alan J. Perlis "Beware of the Turing tar-pit in which everything is possible but nothing of interest is easy." -- Alan J. Perlis "Fools ignore complexity. Pragmatists suffer it. Some can avoid it. Geniuses remove it." -- Alan J. Perlis "When we write programs that `learn', it turns out that we do and they don't." -- Alan J. Perlis "Making something variable is easy. Controlling duration of constancy is the trick." -- Alan J. Perlis "Think of all the psychic energy expended in seeking a fundamental distinction between `algorithm' and `program'." -- Alan J. Perlis "Documentation is like term insurance: It satisfies because almost no one who subscribes to it depends on its benefits." -- Alan J. Perlis "Because of its vitality, the computing field is always in desperate need of new cliches: Banality soothes our nerves." -- Alan J. Perlis "In computing, turning the obvious into the useful is a living definition of the word `frustration'." -- Alan J. Perlis "It is not the computer's fault that Maxwell's equations are not adequate to design the electric motor." -- Alan J. Perlis "Interfaces keep things tidy, but don't accelerate growth: Functions do." -- Alan J. Perlis "Computers don't introduce order anywhere as much as they expose opportunities." -- Alan J. Perlis "Dealing with failure is easy: Work hard to improve. Success is also easy to handle: You've solved the wrong problem. Work hard to improve." -- Alan J. Perlis "Editing is a rewording activity." -- Alan J. Perlis "Computer Science is embarrassed by the computer." -- Alan J. Perlis "Adapting old programs to fit new machines usually means adapting new machines to behave like old ones." -- Alan J. Perlis "Functions delay binding; data structures induce binding. Moral: Structure data late in the programming process." -- Alan J. Perlis "Every program is a part of some other program and rarely fits." -- Alan J. Perlis `Proposed Swing slogan: "Sure it looks like shit, but at least it does so consistently on all operating systems."' -- http://www.zefhemel.com/archives/2004/08/16/why-java-sucks In Mathematics, it is customary to name things after the first person after Euler to discover them. "Colonel Fazackerley Butterworth-Toast | Charles Causley, Bought an old castle complete with a ghost, | "Colonel Fazackerley" But someone or other forgot to declare | To Colonel Fazack that the spectre was there." | http://fish.cx/fazack.txt I'm a typical Aries - I don't believe in horoscopes. Ask not for whom the kettle boils, it boils for thee. "Just as good programmers recognized useful data structures in the late 1960s, good software system designers now recognize useful system organizations. One of these is based on the theory of abstract data types. But this is not the only way to organize a software system." -- Garlan & Shaw, 1994 When I'm old, I shall shout at all the youngsters "I didn't fight in a war so you can muck around!" and hope they misunderstand. "...the Kabbalah, a mystical (ie. weirder) branch of Judaism that features nonsense like wearing a string round your wrist to ward off the evil eye. How crap is Evil? 'I was going to be really evil today, but then I saw a piece of string and got scared.'" -- The Friday Thing (.co.uk) "Black holes are where God divided by zero." - Steven Wright "What good is beautiful, if it's not to be seen and used by other people?" -- Carlos Ribeiro "Good slogans include: 'die scum!', 'peedos out', [etc]. Bad slogans include: 'You're the product of a complex series of social and psychological factors!' and 'I haven't really thought this through!'." -- http://www.thefridayproject.co.uk/totc/ (was ThinkOfTheChildren.co.uk) sorry my english is not very well All men are mortal. Socrates was mortal. Therefore, all men are Socrates. -- Woody Allen You can measure a programmer's perspective by noting his attitude on the continuing viability of FORTRAN. -- Alan Perlis "Tell the truth and run." -- proverb. Never play cards with a man named Doc. -- Nelson Algren Tact is the art of making a point without making an enemy. Yesterday upon the stair I met a man who wasn't there. He wasn't there again today -- I think he's from the CIA. I was gratified to be able to answer promptly, and I did. I said I didn't know. -- Mark Twain "It's a little bit like looking at a mole build a molehill. You say, `That's very interesting.' Then[...] we notice a big mountain off in the distance. And we say, `Good grief, that's enormously large. A really big mole must have built that.'" -- Ken Miller on Creationism "When the game is over, the king and the pawn go into the same box." -- proverb. I'm sorry, but my karma just ran over your dogma. "I regard it as the chief duty of the state to protect the individual and give him the opportunity to develop into a creative personality; that is to say; the state should be our servant and not we its slaves." -- Albert Einstein "If Jesus had been killed 20 years ago, Catholic school children would be wearing little Electric Chairs around their necks instead of crosses." -- Lenny Bruce "Give a man a fish, and you'll feed him for a day. Give him a religion, and he'll starve to death while praying for a fish." -- Timothy Jones "We must respect the other fellow's religion, but only in the same sense and to the extent that we respect his theory that his wife is beautiful and his children smart." -- H. L. Mencken "A free society is one where it is safe to be unpopular." -- Adlai Stevenson Power corrupts. And atomic power corrupts atomically. "Then, three items will be discussed more throughly to convey a few specific, general points." -- Paolo Carlini "But let your communication be Yea, yea; nay, nay: for whatsoever is more than these cometh of evil." -- Matthew 5:37, on tri-state logic. "Your manuscript is both good and original, but the part that is good is not original and the part that is original is not good." -- Samuel Johnson "A truth that's told with bad intent Beats all the lies you can invent." -- William Blake "Human intellectual capacity has not altered for thousands of years so far as we can tell. If intelligent people invested intense energy in issues that now seem foolish to us, then the failure lies in our understanding of their world, not in their distorted perceptions." -- Stephen J. Gould Woody: Hey, Mr. Peterson, there's a cold one waiting for you. Norm: I know, and if she calls, I'm not here. -- Cheers "Soon or late the laws governing the production of life itself will be discovered in the laboratory, and man may set up business as a creator on his own account. The thing, indeed, is not only conceivable; it is even highly probable." -- H. L. Mencken, 1930 "Our business in life is not to succeed but to continue to fail in high spirits." -- Robert Louis Stevenson `Other famous works could easily have been summarized in a few words: "Moby Dick" -- Don't mess around with large whales because they symbolize nature and will kill you.' -- Dave Barry "I've had a perfectly wonderful evening. But this wasn't it." -- Groucho Marx "Finally I got a run in which the computer showed the pulsar's temperature to be less than absolute zero. I had found an error. I chased down the error and fixed it. Now I had improved the program to the point where it would not run at all." -- George Greenstein "The fundamental principle of science, the definition almost, is this: the sole test of the validity of any idea is experiment." -- Richard P. Feynman Aleph-null bottles of beer on the wall, Aleph-null bottles of beer, You take one down, and pass it around, Aleph-null bottles of beer on the wall. "To wield onself -- to use oneself as a tool in one's own hand -- and so to make or break that which no one else can build or ruin -- THAT is the greatest pleasure known to man!" -- Gordon R. Dickson, "Soldier Ask Not" "The secret of success is sincerity. Once you can fake that, you've got it made." -- Jean Giraudoux Tell a man there are 300 billion stars in the universe and he'll believe you. Tell him a bench has wet paint on it and he'll have to touch to be sure. "Let us treat men and women well; Treat them as if they were real; Perhaps they are." -- Ralph Waldo Emerson "Forgive him, for he believes that the customs of his tribe are the laws of nature!" -- G.B. Shaw "There is more to life than increasing its speed." -- Mahatma Gandhi Lead me not into temptation... I can find it myself. It's amazing how much "mature wisdom" resembles being too tired. "If a person (a) is poorly, (b) receives treatment intended to make him better, and (c) gets better, then no power of reasoning known to medical science can convince him that it may not have been the treatment that restored his health." -- Sir Peter Medawar, "The Art of the Soluble" "Education is an admirable thing, but it is well to remember from time to time that nothing that is worth knowing can be taught." -- Oscar Wilde, "The Critic as Artist" "Nothing is easier than to denounce the evildoer; nothing is more difficult than to understand him." -- Fyodor Dostoyevsky "Churchill's Commentary on Man: Man will occasionally stumble over the truth, but most of the time he will pick himself up and continue on." "It must be remembered that there is nothing more difficult to plan, more doubtful of success, nor more dangerous to manage, than the creation of a new system." -- Niccolo Machiavelli "The release of emotion is what keeps us healthy. Emotionally healthy." "That may be, Doctor. However, I have noted that the healthy release of emotion is frequently unhealthy for those closest to you." -- McCoy and Spock "To be well informed, one must read quickly a great number of merely instructive books. To be cultivated, one must read slowly and with a lingering appreciation the comparatively few books that have been written by men who lived, thought, and felt with style." -- Aldous Huxley "Speech is conveniently located midway between thought and action, where it often substitutes for both." -- John Andrew Holmes "I have discovered that all human evil comes from this: man's being unable to sit still in a room." -- Blaise Pascal "Astrologers always claim to be just a little too busy to carry out such careful tests of their efficacy, so in the last two decades scientists and statisticians have generously done such testing for them[...] and astrology has failed every one of them..." -- Andrew Fraknoi `There are two kinds of fool. One says, "This is old, and therefore good." And one says, "This is new, and therefore better."' -- John Brunner "Let me just say that, if you ever have the choice of putting your words in powerpoint or having them carved into 30-foot high marble, I'd say go for the marble." -- Peter Norvig, w.r.t. http://www.norvig.com/Gettysburg/ I don't care how much it wants to set a cookie, it's a bloody website! "Listen, strange women lyin' in ponds distributin' swords is no basis for a system of government. Supreme executive power derives from a mandate from the masses, not some farcical aquatic ceremony!" -- Dennis (Michael Palin), Monty Python and the Holy Grail "In the last part of this series I'll look at a different technique altogether, one that obviates the problems of solutions 2, 3 and 4. Of course, this being C++, it introduces another of its own." -- Matthew Wilson "H: We've been asked to describe this product with our usual wit and eloquence. But we don't like... eloquence, do we? P: No, we don't... We don't like any large animals." -- Hale and Pace as "The Management" (some advert for something) "But that was a plus three arrow!" -- Eric "It's still kind of an unknown. I believe in it totally" -- Bill Gates http://www.theregister.co.uk/2004/10/20/gates_interactive_tv_obsession/ Why is so much of our software being used in a field? screwdrivers. "Any feature with so many names must be useful" -- Peyton-Jones, Washburn and Weirich, 2004, "Wobbly types: [...]" "Everybody and his brother has a spline function algorithm in his toolbox" -- Jack W Crenshaw, http://www.embedded.com/story/OEG20020222S0023 Give a man a fire and he'll be warm for the night. Set a man on fire and he'll be warm for the rest of his life. So, should the Doctor call it his police box, or some incredibly dubious reverse acronym thing? "By an amazing coincidence, God has exactly the same views as right-wing Republicans." -- thefridaything.co.uk US Election Special: Are you ready for the war on vampires? -- thefridaything.co.uk "Sufficiently advanced cluelessness is indistinguishable from malice" -- Clark's Law, apparently. "Hardware must be paid for, but software is something to share." -- Bill Gates, "Open Letter to Hobbyists", 1976 (Okay, so it's hideously out of context, sue me. No, please don't.) "Blair keeps coming out with earnest guff about our responsibility to the Iraqi people and 'getting the job done', as though we invaded to insulate the Iraqis' lofts." -- http://thefridaything.co.uk/ "The interface between two programs consists of the set of assumptions that each programmer needs to make about the other program in order to demonstrate the correctness of his program." -- http://research.microsoft.com/~lampson/33-hints/ (orig. Britton et al) "Don't generalize; generalizations are generally wrong." -- Butler Lampson () "You write a great program, regardless of language, by redoing it over & over & over & over, until your fingers bleed and your soul is drained. But if you tell newbies that, they might decide to go off and do something sensible, like bomb defusing." -- Tim Peters, 5 June 1998 "Our core product became a commodity item so we tried to specialize in other areas. We specialized in many areas..." -- A visitor from the world of Sales. "I believe it is time to explicitly state the long held secret of software, we do not need to do design; design is ineffective and costly." -- Wayne Mack "I have yet to see an interesting piece of code that comes from these OO people." -- Alexander Stepanov "Always start with algorithms." - Alexander Stepanov "...the design of the data structures is the central decision [...]. Once the data structures are laid out, the algorithms tend to fall into place, and the coding is comparatively easy." -- Kernighan and Pike "S-expressions are a representation, XML is a career path." -- WardCunningham (OOPSLA 2003) SIGILL: Ye processor essayed to scrye an eldritch writinge. "If something is useful, it can be abused." -- Ken Arnold ## http://www.artima.com/intv/sway4.html Perl - for people who still think that comments in regular expressions are a pretty neat idea. ## c.f. http://www.perl.com/doc/FMTEYEWTK/regexps.html `Under no circumstances should you program the way I say to because I say to; program the way you think expresses best what you're trying to accomplish in the program. And do so consistently and ruthlessly.' -- Rob Pike ## http://www.perl.com/doc/FMTEYEWTK/style/slide-index.html Capture regularity with data, irregularity with code. (Kernighan) ## http://www.perl.com/doc/FMTEYEWTK/style/slide33.html `Data dominates. If you've chosen the right data structures and organized things well, the algorithms will almost always be self-evident. Data structures, not algorithms, are central to programming. (See Brooks p. 102.)' -- Rob Pike "It's not a bad idea to order your coding priorities like so: 1. correctness 2. maintainability 3. efficiency Notice at no point did `4. cleverness' enter the picture." -- Tom Christiansen ## http://www.perl.com/doc/FMTEYEWTK/sort.html "The man hears what he wants to hear and disregards the rest." -- Paul Simon and Art Garfunkel, The Boxer ..."and he maintains this level of poetry throughout." -- J. R. Partington ## http://www.geocities.com/j_r_partington/adamstalk.html "[Reminisce about when] students were expected to carry spare valves around with them. This gives the impression that modern programmers are effete, since they type in their programs rather than gnawing holes in punched tape with their teeth (as you had to)." -- J.R. Partington ## http://www.geocities.com/j_r_partington/potter.html "Compsci masters are usually faled maths masters. What hapens is they start very keen on maths (ugh) so that there branes go funny and they kno all about Pythagoras Euclid Newton and all the other antients. Then it dawn on them that maths is hard" J.R. Partington, How to be topp in Compsci ## http://www.geocities.com/j_r_partington/molesworth.html "One commonly hears such phrases as `preventing the programmers from doing their dirty tricks'. It is as if language designers were invested with a moral mission, and languages served as ramparts against the threat of the developers' natural uncleanliness." -- Bertrand Meyer (ifl:bonzai+baobab) ## http://www.inf.ethz.ch/personal/meyer/publications/oxford-hoare/evolution.pdf "Of the pretense (syntax is irrelevant) and the actual reaction (syntax matters), the one to be believed is the actual reaction." -- Bertrand Meyer, The Bonzai and The Baobab http://www.inf.ethz.ch/personal/meyer/publications/oxford-hoare/evolution.pdf "a programming language is a tool which should assist the programmer in the most difficult aspects of his art, namely program design, documentation, and debugging." -- C.A.R. Hoare, Hints on Programming Language Design ## http://www.eecs.umich.edu/~bchandra/courses/papers/Hoare_Hints.pdf ## ## (A notable omission in the above is interoperability/integration, ## but they don't start with D.) "A good programing language should give assistance in expressing not only how the program is to run, but what it is intended to accomplish" -- C.A.R. Hoare, Hints on Programming Language Design Shocking new evidence suggests that God had planned Christ's death all along. -- TheFridayThing.co.uk "I believe that if you're making software for which there is a real market, marketing is a far bigger problem than piracy." -- Kevin Dangoor ##http://www.blueskyonmars.com/archives/2004/12/29/blue_sky_development.html "Oh, Unix is a world of pain for developers." -- Miguel de Icaza ## http://www.builderau.com.au/program/work/0,39024650,39129961,00.htm "I really want a license to do just two things: make the code available to others, and make sure that improvements stay that way. That's really it. Nothing more, nothing less. Everything else is fluff." -- Linus Torvalds ## http://www.builderau.com.au/manage/project/0,39024668,39171642,00.htm If you build it, it will ship. -- http://blogs.msdn.com/David_Gristwood/archive/2004/06/24/164849.aspx "The fantasies of the market are generally centered on issues of empowerment, control and security." -- Jim McCarthy, Microsoft Corporation "21 Rules of Thumb for Shipping Great Software on Time" ## http://blogs.msdn.com/David_Gristwood/archive/2004/06/24/164849.aspx "Never write $$a[$i] when you mean ${$a[$i]} or @$a[$i] when you mean @{$a[$i]}. Those won't work at all." - Tom Christiansen, The Perl Data Structures Cookbook section 0, General tips (abbreviated) ## http://www.miketaylor.org.uk/tech/wxinmfpl/perl.html "Waking a person unnecessarily should not be considered a capital crime. For a first offense, that is." -- Robert Heinlein "There is some force to it. And yet, we should be suspicious of any `perspective' that offers to resolve all our doubts so neatly; it might be a rationalization, not a rationale." -- Eric S. Raymond, "The Art of UNIX Programming" ## http://www.faqs.org/docs/artu/ch13s03.html "Outside the Unix world, this three-orders-of-magnitude improvement in hardware performance has been masked to a significant extent by a corresponding drop in software performance." -- Eric S. Raymond, "The Art of UNIX Programming" ## http://www.faqs.org/docs/artu/why_not_c.html "Indices are just notation, so treat them as such." -- Rob Pike, "Notes on Programming in C" ## http://www.lysator.liu.se/c/pikestyle.html "Selling sex is one of the oldest businesses in the world, and right now, business has never been better" -- spam "{For 'MOID FORM' (rule f), see the cross-references inserted in sections 5.1.A, B, C, D before "coercee". Note, however, that a 'MOID FORM' may be a blind alley. Blind alleys within this chapter are not indicated.}" -- Algol 68 Revised Report ## http://members.dokom.net/w.kloke/RR/rr.pdf "It's often better to make things distinctly different than to make them almost the same." -- Henry Spencer "I'm not a fan of the GPL. [...] We build on each other's shoulders. I am therefore concerned that the base system not restrict what I can do with my intellectual effort." -- Jim Gettys, "The Two Edged Sword" ## http://freshmeat.net/articles/view/122/ "Remember that the reason for frequent releases is to shorten and speed the feedback loop connecting your user population to your developers." -- Eric S. Raymond ## http://www.faqs.org/docs/artu/ch19s01.html "Reward contribution with praise." (Eric S. Raymond's third rule of open-source development.) ## http://www.faqs.org/docs/artu/ch19s01.html "Portability doesn't just mean insulation, it means adaptation, and homogeneous systems tend to adapt poorly to their environment." -- Ian Bicking ## http://blog.ianbicking.org/of-syntax-and-environment.html "If the code you're writing today is very similar to the code you wrote yesterday, you're obviously doing something horribly wrong. Contrast with ditch-digging." -- George Paci ## http://c2.com/cgi/wiki?JustaProgrammer "The vast majority of people are averse to learning, thinking, or understanding." -- Ruri's Law ## http://c2.com/cgi/wiki?RurisLaw Define "word". What do you mean, "define"? "What"??? ## http://c2.com/cgi/wiki?LaynesLaw * you can use string interpolation, ex: "x: #{@myvar}" instead of having to say "x:" + myvar -- "Ten Things a Java Programmer Should Know About Ruby" fails to make its point. ## http://jimweirich.tadalist.com/lists/public/14055 "It's Swiss chocolate, from Sweden." -- m'colleague "GDB can do four main kinds of things [...]: 4. Change things in your program, so you can experiment with correcting the effects of one bug and go on to learn about another." -- GDB manual ("man gdb") "I must Create a System, or be enslav'd by another Mans I will not Reason & Compare: my business is to Create" -- William Blake, "Jerusalem - The Emanation of the Giant Albion" # Quote above the introduction in: # http://citeseer.ist.psu.edu/cache/papers/cs/38/ftp:zSzzSzftp.cs.columbia.eduzSzreportszSzreports-1992zSzcucs-039-92.pdf/massalin92synthesi.pdf "But even though the kernel was lacking in overall structure, I did not see that as negative. This was a period where freedom to experiment led to valuable insights, and, as I found myself repeating certain things, an overall structure gradually became clear." -- H. Massalin ## http://citeseer.ist.psu.edu/cache/papers/cs/38/ftp:zSzzSzftp.cs.columbia.eduzSzreportszSzreports-1992zSzcucs-039-92.pdf/massalin92synthesi.pdf "Currently, the Quamachine uses a 68030 processor rated for 33 MHz, but running at 50 MHz, thanks to a homebrew clock circuit, special memory decoding tricks, a higher-than-spec operating voltage, and an ice-cube to cool the processor." -- massalin92synthesi.pdf ## http://citeseer.ist.psu.edu/cache/papers/cs/38/ftp:zSzzSzftp.cs.columbia.eduzSzreportszSzreports-1992zSzcucs-039-92.pdf/massalin92synthesi.pdf The user does not exist -- Mailer Daemon gets nihilistic. "There will be a porcine implementation of RFC1149 before SRS is ubiquitous." -- http://david.woodhou.se/why-not-spf.html "The Symposium took on a theatrical theme and a few of the speakers could not resist the temptation to commit poetry." -- RFC 1121 "In my humble but correct opinion..." -- jwz ## http://www.jwz.org/gruntle/nomo.html "But here's the thing that really struck me about this: command lines, as a user interface, really suck ass. Even if you use them, you know that's true. Somewhere, deep in your heart, you know what you're doing is ridiculous, and there's got to be a better way." -- jwz ## http://www.jwz.org/gruntle/bittybox.html 'The word I hate today is: "Megapixels."' -- jwz ## http://www.jwz.org/gruntle/megapixels.html .esu erutuf rof desreveR "XML on the Web has failed: miserably, utterly, and completely." -- Mark Pilgrim, http://www.xml.com/pub/a/2004/07/21/dive.html "It's important to ruthlessly streamline your release process, so that you can do frequent releases painlessly. A setup where all other work must stop during release preparation is a terrible mistake." -- Henry Spencer ## http://www.faqs.org/docs/artu/ch19s01.html Unisex toilets -- a marriage of convenience. I can't feel my chin! OOH - Out of Hand data ..."and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The Software shall be used for Good, not Evil." -- JSON-for-JavaScript license Alistair: The gas man cameth. "p happens". -- Marsaglia's DIEHARD randomness test documentation. "In a square of side 100, randomly 'park' a car---a circle of radius 1. Then try to park a 2nd, a 3rd, and so on, each time parking 'by ear'. That is, if an attempt to park a car causes a crash with one already parked, try again at a new random location." --Marsaglia's parking algorithm "Customer dependence is more profitable than customer education." -- Wirth's Law (or at least, one of them) ## codespeak.net/svn/pypy/funding/wirth.lean.pdf 'It is a very British trait -- natural, perhaps, for a country which has lost an empire and found Mr Blobby -- to be so suspicious of change.' -- Douglas Adams, "How to Stop Worrying and Learn to Love the Internet" ## http://www.douglasadams.com/dna/19990901-00-a.html "A final note: he has a huge shower, in which he spends about twelve hours a day. I don't absolutely know that, but I deduce it from the time I heard him say he only gets good ideas in the shower." -- Brian Marick, of Guy Steele ## http://www.testing.com/cgi-bin/blog/2005/03/26#guy-steele-tester "It is an ironic truth that those who seek to create systems which most assume the perfectibility of humans end up building the systems which are most soul destroying and most rigid, systems that rot from within..." -- Adam Bosworth ## http://www.adambosworth.net/archives/000031.html "Why is emph better than i? When I'm publishing content from 1901 and it's in italics, it's in italics, not emphasized. Typography has a semantics that is subtle, changing, and deeply informed by history." -- Paul Ford ## http://www.ftrain.com/ProcessingProcessing.html people, faced with a microphone, will say "I am talking into the microphone, hello, on the microphone, me, hey, microphone. Microphone. Hey. Me. I'm here. Talking. Hi there, on the microphone. That's me, talking. Please check out my blog." -- Paul Ford ## http://www.ftrain.com/ProcessingProcessing.html "I'll always be stupid, given the scope of human thought, but I can try to avoid making a botch job of it, and it's not like I could ever stop with so many things to figure through." -- Paul Ford ## http://www.ftrain.com/ProcessingProcessing.html "have the smart people work as toolmakers" -- Paul Graham ## http://www.paulgraham.com/gh.html "If you ever do find yourself working for a startup, here's a handy tip for evaluating competitors. Read their job listings. Everything else on their site may be stock photos or the prose equivalent, but the job listings have to be specific ..." -- Paul Graham ## http://www.paulgraham.com/avg.html "Even on the small scale, when you look at any programming organization, the programmers with the most power and influence are the ones who can write and speak in English clearly, convincingly, and comfortably. Also it helps to be tall, but you can't do anything about that." -- Joel Spolsky ## http://www.joelonsoftware.com/articles/CollegeAdvice.html Ah, so you want to be a programmer, eh? Do you own your own stopwatch? "Perl may look like a cartoon character swearing, but there are cases where it surpasses Python conceptually." -- Paul Graham ## http://www.paulgraham.com/pypar.html 'In fact, the whole phrase "anonymous function" suggests limited thinking. Would you call a hash table that wasn't the value of a variable an "anonymous hash table?"' -- Paul Graham ## http://www.paulgraham.com/icadmore.html 'The great languages have been the ones that good programmers designed for their own use-- C, Smalltalk, Lisp. The languages that were consciously designed for "average" programmers (Cobol, Pascal, Ada) have tended to be evolutionary dead ends.' -- Paul Graham ## http://www.paulgraham.com/design.html "Sun trademarks are adjectives and may not be used as nouns, or alone as a shorthand way of identifying a product or service." -- http://www.sun.com/policies/trademarks/#10a main(k){float i,j,r,x,y=-16;while(puts(""),y++<15)for(x =0;x++<84;putchar(" .:-;!/>)|&IH%*#"[k&15]))for(i=k=r=0; j=r*r-i*i-2+x/25,i=2*r*i+y/10,j*j+i*i<11&&k++<111;r=j);} /** http://mrl.nyu.edu/~perlin/ **/ "Yes raster is faster, but raster is vaster, and vector just seems more correcter." -- Dana Tomlin ## http://www.carto.net/papers/svg/index_e.shtml#tomlin1990 Java is C++ without the giant rotating knives. -- "theonetruekeebler", Slashdot ## http://ask.slashdot.org/article.pl?sid=05/08/11/1951203 `Nonsense. "__metaclass__" is simply an implementation detail. We know that because it begins with "__". Therefore it is invisible, and any delusion you may have that you can see it is a complete non-issue. In Python we call that encapsulation.' -- Terry Hancock, comp.lang.python http://maps.google.com/maps?q=Amarillo,+TX 1. e4 e5 2. Nf3 d6 3. Bc4 Bg4 4. Nc3 g6 5. Nxe5 Bxd1 6. Bxf7+ Ke7 7. Nd5 #1-0 ## Legal's mate. frameworks incur loathing -- Ian Bicking ## http://blog.ianbicking.org/little-apps-instead-of-little-frameworks.html "The syntax for operator logos specified in [SMSSPEC], using the 'OTA bitmap', allows the bitmap to be of any dimensions (and even animated). However, current phones do not support animated bitmaps, palettes, or bitmaps with more than 1 bit per pixel." -- Nokia `*academic* - a word that's typically used in business to mean that something is irrelevant, as in "that's academic".' -- Phillip J. Eby ## http://dirtsimple.org/2005/10/children-of-lesser-python.html "Management was the single most important reason cited for neglecting the design during development." -- "The Coming of Software Architecture: A Historical View" http://www.ics.uci.edu/~ses/papers/hist.pdf "Herb Sutter and I have an ongoing difference of opinion on this point. Fortunately for Herb, he is vastly more knowledgeable and erudite on C++ than I am. Fortunately, for me, this is my book and I can write what I like." -- Matthew Wilson, Imperfect C++ ## http://synesis.com.au/publishing/imperfect/cpp/impcpp_chapter_34.pdf "If everybody thinks they do good work, and the [performance] reviews are merely /correct/ (which is not very easy to achieve), then *most people will be disappointed by their reviews*. The cost of this in morale is hard to understate." -- Joel Spolsky, Incentive Pay Considered Harmful ## http://www.joelonsoftware.com/articles/fog0000000070.html "Of course, with movies and books and such, we /expect/ each sequel to be weaker, more inconsistent and nonsensical than its predecessor (eg. The Matrix), whereas with software, we expect the opposite (whether that's a reasonable expecatation or not is another question)." -- Matt Gerrans ## http://www.artima.com/forums/flat.jsp?forum=106&thread=123234 "Goldfrapp are an EMI artist" -- BBC News website ## http://newsvote.bbc.co.uk/1/hi/technology/4392534.stm "Code deleted is code debugged." -- Ian Bicking ## http://blog.ianbicking.org/because-unanswered-problems-are-always-hard.html "A language designer is not a guardian of moral order." -- Bertrand Meyer ## http://www.berenddeboer.net/eiffel/archive/bmright.html "The purpose of excluding a construct is not to prevent programmers from writing bad programs or doing `dangerous things' if they want to. Instead, a construct is excluded because it is known to lead programmers to make mistakes even when applied towards legitimate goals." -- B. Meyer ## http://www.berenddeboer.net/eiffel/archive/bmright.html "Whenever you hear someone bragging about how productive their [programming] language is, they're probably getting most of that productivity from the automated memory management, even if they misattribute it." -- Joel Spolsky ## http://www.joelonsoftware.com/articles/APIWar.html `The convoluted development experience of which you speak is known as "the death of a million angle brackets."' -- Michael Murphree, on XML GUI design ## http://www.jroller.com/page/fate/?anchor=alphaworks_is_a_scam "Be the first with picture messaging!" -- Seen on side of bus. "the raw SQL in all its gory" -- Ronald Jaramillo "But making a logical error in a mortgage calculation that'll cause you great misery is as easy in PAWN as in any other language... with or without pointers." -- Thiadmer Riemersma ## http://www.compuphase.com/pawn/pawnfeatures.htm "In fact, most Web sites have less sense of community than a New York City subway car: at least people are going in the same direction on the subway." -- Jakob Nielsen ## http://www.useit.com/alertbox/9708b.html #### Note that he also believes that "chat should be banished from any Web #### sites that do not host dating services". #### Communication support is one of the cheapest ways of making your site #### interesting. Yes, "discussion groups" are better, but that will #### evolve over time, and chat is better than nothing. "Unfortunately, those people who have nothing better to do than post on the Internet all day long are rarely the ones who have the most insights." -- Jakob Nielsen experiences a brief moment of self-awareness. ## http://www.useit.com/alertbox/9708b.html "A few years ago I came to the realisation - whether double blind test conclusively proved that our results were better - ...it just didn't matter. Because what it came down to was perception. And I can't code my way out of that." -- Simon Wistow (abridged) ## http://london.pm.org/pipermail/london.pm/Week-of-Mon-20051114/000181.html Python: the only language with more Web frameworks than keywords -- Harald Massa ## http://article.gmane.org/gmane.comp.python.general/435579 ## via http://www.advogato.org/person/titus/diary.html?start=134 "Here's the real reason why Lisp won't win. The Lisp programmers don't /want/ it to win." -- Mark Jason Dominus ## http://perl.plover.com/yak/12views/samples/notes.html#sl-39 "Software engineering is bad mainly because the development tools are bad." -- Project COSA, http://pages.sbcglobal.net/louis.savain/Cosas/COSA.htm "Very few people are willing to change the way they work in order to make /somebody else's/ life easier." -- Mark Baker ## http://radio.weblogs.com/0116506/2005/12/15.html#a380 quoting ## http://www.cmswatch.com/Feature/79-Writers,-XML,-and-CMS "The truth is, writers will use any tool that makes their task easier." -- Mark Baker ## http://www.cmswatch.com/Feature/79-Writers,-XML,-and-CMS "The key, then, to successful tool selection is not WYSIWYG facilities, and it's not standards or markup, it's not even ease of use in any general sense -- the key is really task appropriateness." -- Mark Baker ## http://www.cmswatch.com/Feature/79-Writers,-XML,-and-CMS "People need direct feedback. They need to see how providing structure actually makes a difference in their lives. Without this you the best you can get is dumb conformance -- a mechanistic adherence to the visible constraints rather than an intelligent contribution to the success of the enterprise." -- Mark Baker ## http://www.cmswatch.com/Feature/79-Writers,-XML,-and-CMS "But even if we supposed a widespread benevolent impulse to supply structured content despite the additional time and effort, you would still not get well structured data, because the writers usually lack the context to understand the structures they are asked to produce." -- Mark Baker (abridged) ## http://www.cmswatch.com/Feature/79-Writers,-XML,-and-CMS "Complaints about authors cheating the markup rules to achieve particular layout effects are as old as SGML, but I suspect that in most cases achieving the anticipated visual presentation effect is the only comprehensible context the author has ever been provided." -- Mark Baker ## http://www.cmswatch.com/Feature/79-Writers,-XML,-and-CMS "People ... must face the fact that they will always need to transform and sanitize the material they receive, because it will never be in the interest of the vast majority of their contributors to provide pre-structured information to them." -- Mark Baker ## http://www.cmswatch.com/Feature/79-Writers,-XML,-and-CMS "There are a million simple problems that need to be solved before you should even consider trying to solve the complex ones." -- Jason Fried, 37 signals ## http://www.37signals.com/svn/archives2/less_as_a_competitive_advantage_my_10_minutes_at_web_20.php "Let your competitors kill themselves trying to solve the big complex problems. Solving those problems is really hard, really expensive, and riddled with bad odds." -- Jason Fried, 37 signals ## http://www.37signals.com/svn/archives2/less_as_a_competitive_advantage_my_10_minutes_at_web_20.php "Functional specs are often appeasement documents. They're about making people feel involved. But, there's very little reality attached to anything you do when the builders aren't building, the designers aren't designing, and the people aren't using. We think reality builds better products than appeasement." -- Jason Fried, 37 signals ## http://www.37signals.com/svn/archives/001050.php `That is ALWAYS the problem, we don't engage our clients in the solutions and use documents to "prove" that we did our job.' -- Mark Sloan ## http://www.37signals.com/svn/archives/001050.php "Domain specific languages breed conceptual integrity better than UIs." -- Martijn Faassen ## http://faassen.n--tree.net/blog/view/weblog/2005/12/15/1 "In a Star Trek episode, Captain Kirk asks a computer to divide by zero. The lights on the face of the computer begin to flicker, pink smoke emerges from the back of the computer, sparks begin to fly, and the computer dies." -- Wikipedia, "Division by zero" "Know your market, or target only the markets you know" -- Prof. W. Kahan and Joseph D. Darcy ## http://www.cs.purdue.edu/homes/knepley/lang/JAVAhurt.pdf ## Kahan might be surprised by this choice of quote, given that the actual ## paper is an extended rant about Java's floating point support. "Exact Reproducibility -- needed by some floating-point programmers sometimes. Predictability within Controllable Limits -- needed by all programmers all the time." -- Kahan and Darcy, "How Java's Floating-Point Hurts Everyone Everywhere" ## http://www.cs.purdue.edu/homes/knepley/lang/JAVAhurt.pdf "A commission of inquiry with perfect hindsight blamed the disaster upon inadequate testing of the [Ariane 5] rocket's software. What software failure could not be blamed upon inadequate testing?" -- Kahan and Darcy, "How Java's Floating-Point Hurts Everyone Everywhere" ## http://www.cs.purdue.edu/homes/knepley/lang/JAVAhurt.pdf ## (page 22) "a plethora of tests and branches undermines a program's modularity, clarity and concurrency" -- Kahan and Darcy, "How Java's Floating-Point Hurts Everyone Everywhere" ## http://www.cs.purdue.edu/homes/knepley/lang/JAVAhurt.pdf ## (page 24) ## ##"On the contrary, a program can simulate arithmetic of arbitrarily high ## precision and thus compute its output to arbitrarily high accuracy ## limited only by over/underflow thresholds, memory capacity, cleverness and ## time. (Learn how from papers by David Bailey, by Douglas Priest, and ## by Jonathan Shewchuk.)" ## Ibid, which I must follow up at some point. ## Shewchuk is the guy behind http://www.cs.cmu.edu/~quake/robust.html ## whose "Robust adaptive floating-point geometric predicates" is quoted ## in the same breath as Fortune and van Wyk ## ("Efficient exact arithmetic for computational geometry") ## at http://www2.toki.or.id/book/AlgDesignManual/BOOK/BOOK4/NODE184.HTM "In the computing world the costs to everyone everywhere of correcting mistakes grow horribly with the passage of time unless the mistakes are part of something that doesn't matter." -- Kahan and Darcy finish their 80 page rant about Java not using double. ## http://www.cs.purdue.edu/homes/knepley/lang/JAVAhurt.pdf "The purpose of computing is insight, not numbers." -- R. W. Hamming ## Seen quoted by http://http.cs.berkeley.edu/~wkahan/Triangle.pdf "Effective testing requires taking control of the universe." -- Levi Cook, http://www.twistedrails.org/blog/ "HTML had the serendipitous effect of forcing application designs to partition the application. To repeat, the lesson is that applications should be loaded in coarse-grained chunks." -- Adam Bosworth 'It is about time to become more honest about accessiblity. A lot of damage has already been done to the integrity of the trade by using "accessiblity", "standards compliance" and "semantic markup" as if they were exchangable terms.' -- Henning Koch ## http://www.netalive.org/swsu/archives/2005/02/how_much_do_you.html "Here are your options: watch your friends die, or die young." -- George Clooney (Reader's Digest, Jan 2006) "Programming a computer requires patience and concentration. Only attention to minute details will avoid frustrating grammatical mistakes. Only rigorous planning and adherence to the plan will prevent serious logical mistakes in our designs." -- The authors of "How To Design Programs" really love XP. ## ## This is particularly poor given that they open the book with a Perlis quote. ## Perhaps they should have considered an alternative: ## "A programming language is low level when its programs require ## attention to the irrelevant." ## "It helps to realize that the key difference between a big decision and a small one is whether you can fix your decision afterwards." -- Linus Torvalds, "Kernel Management Style" "fix the current bugs and chase the next shiny thing we see" -- Eric S. Raymond ## http://armedndangerous.blogspot.com/2003_06_08_armedndangerous_archive.html#105563829929887753 'I can say "I don't care" with a straight face, and really mean it.' -- Linus Torvalds ## http://lwn.net/2000/0914/a/lt-debugger.php3 "Probably the glaring error in Unix was that it underevaluated the concept of remoteness. The open-close-read-write interface should have been encapsulated together as something for remoteness; ...a remote file system as opposed to a local file system." -- Ken Thompson on doing Unix differently ## http://www.softpanorama.org/People/Torvalds/selling_bazaar_to_cathedral.shtml ## He mentions that "This was fixed in a fairly nice way in Plan 9.", but I ## don't know what that way is (nor do I fully understand the complaint). "I don't think there are many people up in research who have strong ideas about things that they haven't really had experience with." -- Ken Thompson "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." Ken Thompson must love JavaDoc. "... it was very hard to teach computing from an IBM [mainframe] end-user point of view. Unix was small, and you could go through it line by line [at university] and understand exactly how it worked. That was the origin of the so-called Unix culture." -- Ken Thompson ### I'm not generally in favour of draconian teaching, but bottom-up, ### nuts-and-bolts examination of real world systems does seem to be a very ### effective teaching tool (when taught with a practical rather than ### theoretical bent). Thompson of course doesn't mention how well it works. Friends don't let friends code Java. -- Bob Ippolito ## http://bob.pythonmac.org/archives/2006/01/06/in-development-flashticle/ "Quotation confesses inferiority." -- Ralph Waldo Emerson "The theory of computation states that all automatons can be emulated by a Turing machine. I have a less abstract but more practical motto: If you can do it on Intel, you can do it damn near anywhere!" -- Eugene O'Neil "Some of the problem might be that we hire relatively unskilled labor to write code. But another part of the problem is that deep within our souls we believe that we go faster when making messes." -- "Uncle Bob" ## http://blogs.objectmentor.com/ArticleS.MichaelFeathers.IsProgrammingTooEasy "The way I see it, it's more acceptable to give programmers a negligible learning curve for learning template languages, than to give Web designers the learning curve of learning a programming language." -- Adrian Holovaty (Django lead developer) "Under no circumstances succumb to demands to write a glossary with the special purpose project vocabulary unambiguously defined. Doing so would be an unprofessional breach of the structured design principle of information hiding." -- Roedy Green, "Writing Unmaintainable Code" ## http://mindprod.com/jgloss/unmainnaming.html "Compile-time errors were insurmountable when learners could not determine what parts of their code were deemed right or wrong by the compiler, based on its error message." -- Ko, Myers and Aung, "Six Learning Barriers in End-User Programming Systems" ## http://citeseer.ist.psu.edu/cache/papers/cs/31149/http:zSzzSzwww.cs.cmu.eduzSz~ajkozSzLearningBarriers.pdf/six-learning-barriers-in.pdf Doctors are such a bunch of Hippocrates. 1. Users don't have the manual, and if they did, they wouldn't read it. 2. In fact, users can't read anything, and if they could, they wouldn't want to. -- Joel Spolsky's two principles of user interface design. "Search may be a winner-take-all market, but news isn't." -- Rich Skrenta ## http://blog.topix.net/archives/000066.html "Prestige is just fossilized inspiration. If you do anything well enough, you'll make it prestigious. Plenty of things we now consider prestigious were anything but at first." -- Paul Graham ## http://paulgraham.com/love.html "There is a conservation law at work here: if you want to make a million dollars, you have to endure a million dollars' worth of pain." -- Paul Graham ## http://paulgraham.com/wealth.html "What is technology? It's technique. It's the way we all do things. And when you discover a new way to do things, its value is multiplied by all the people who use it." -- Paul Graham ## http://paulgraham.com/wealth.html "You'd think that a company about to buy you would do a lot of research and decide for themselves how valuable your technology was. Not at all. What they go by is the number of users you have." -- Paul Graham ## http://paulgraham.com/wealth.html "PR has at least one beneficial feature: it favors small companies. If PR didn't work, the only alternative would be to advertise, and only big companies can afford that." -- Paul Graham ## http://www.paulgraham.com/submarine.html "A: I don't like Python because of significant whitespace. B: Do you indent your code? A: Yes, of course. B: And the problem is?" -- Marko Samastur "In fact, I don't want to talk about Java anymore. This is little shootout was supposed to be a fun diversion, and I'm finding that talking about Java is every bit as tedious and depressing as programming in it." -- Steve Yegge ## http://www.cabochon.com/~stevey/sokoban/docs/article-java.html def fib(n): try: return fib._memoized[n] except KeyError: fib._memoized[n] = ret = fib(n-1)+fib(n-2); return ret fib._memoized = {0:0, 1:1} def fib(n, memoized={0:0, 1:1}): try: return memoized[n] except KeyError: memoized[n] = ret = fib(n-1)+fib(n-2); return ret import math def fib(n): # only accurate for n < 72 assert n < 72; v = math.sqrt(5); a, b = 1+v, 1-v return int(round((a**n-b**n)/v))>>n def f(n,x=0):return(lambda y:x and y or y[0])([a*m+b*n for a,b in[n and f(n/2, 1)or[0,1]]for n in(0,1,2)[n%2:][:2]for m,n in[[b-a,a,b,a+b][n:][:2]]]) Tetleys make tea bags; make tea. "Coke", is it? Coke. Is it? "To the best of my knowledge, Einstein didn't even know EJB, which according to many Amazon folks makes him a retard." -- Steve Yegge "...but it's an open question whether [eXtreme Programming] will ever be accepted by the people writing the checks, because you can't tell them how much it's going to cost, or when it's going to be finished." -- Steve Yegge ## http://www.cabochon.com/~stevey/blog-rants/its-not-software.html "One problem is that none of the books about software development process really talk much about data: storing it, retrieving it, searching it, updating it, replicating it, caching it, pruning it, and so on." -- Steve Yegge ## http://www.cabochon.com/~stevey/blog-rants/its-not-software.html "Even small children can tell you that accessing a property using field-access syntax beats calling a getter or setter method. The only possible explanation for why Sun hasn't added this yet is that they hate us." -- Steve Yegge ## http://www.cabochon.com/~stevey/sokoban/docs/article-java.html "You can't have syntax for /everything/, because nobody would be able to remember it all. You'd wind up with Perl." -- Steve Yegge ## http://www.cabochon.com/~stevey/blog-rants/language-trickery-ejb.html "For some reason, programmers *love* to learn new stuff, as long as it's not syntax." -- Steve Yegge ## http://www.cabochon.com/~stevey/blog-rants/language-trickery-ejb.html `When asked "what operating system should I use, Windows, Unix, or Mac?", my answer is usually: "use whatever your friends use." The advantage you get from learning from your friends will offset any intrinsic difference between OS, or between programming languages.' -- Peter Norvig ## http://www.norvig.com/21-days.html `I like having built-in hashes. [...] The Lisp folks are still hurting from that one. Dunno what they were thinking. "Hashtables, we can do" said Zawinski. Like, um, the point is that he should have been saying "Hashtables, we've done."' -- Steve Yegge ## http://www.cabochon.com/~stevey/blog-rants/blog-ancient-perl.html "Thoreau says the mass of men lead lives of quiet desperation. Not programmers, though. They lead lives of really loud desperation." -- Steve Yegge ## http://www.cabochon.com/~stevey/blog-rants/blog-ancient-perl.html "You can only perform great Good if you're also capable of great Evil. Because you can write the most awful programs imaginable in Perl, you can therefore also write programs that are far greater than those of any other language." -- Steve Yegge paraphrases Larry Wall ## http://www.cabochon.com/~stevey/blog-rants/blog-ancient-perl.html "The ssize_t fix for 64-bit machines will let me read the entire human genome (3 gb) into memory in one string!" -- Titus Brown "we are not modeling reality, but the way information about reality is processed, by people." -- Bill Kent ## http://www.snee.com/bobdc.blog/2006/01/bill_kent.html "The polymorphic approach to this problem is simple: go through every one of your 150 monsters and add a doesMrOpinionatedElfHateYou() method." -- Steve Yegge ## http://www.cabochon.com/~stevey/blog-rants/polymorphism-fails.html "Let me ask you: if you were designing a permissions system, would you design it by having a virtual doYouHaveAccess() method, and have all possible comers implement the method? i.e., would you have the security guard ask everyone if they're allowed in the building?" -- Steve Yegge ## http://www.cabochon.com/~stevey/blog-rants/polymorphism-fails.html `For one thing, I learned that Google's search engine is actually smart enough to correct "anikin skywalker" to say "Did you mean anakin skywalker?" Those hoity-toity bastards. It's not like they own the copyright.' -- Steve Yegge ## http://www.cabochon.com/~stevey/blog-rants/polymorphism-fails.html ``We used XML/XPath/XSLT for a project to scrape prices from vendor web sites a couple years ago. It was fun in a "I can't believe we're making this elephant dance" kind of way.'' -- Charles G. ## http://www.cabochon.com/~stevey/blog-rants/the-emacs-problem.html Perl worships power. Python worships simplicity. "Anything with 'Python' in its name can't market Python well." -- Ian Bicking `From a user's perspective, LALR(1) really means "this thing doesn't parse a lot of things that I quite reasonably would expect it to be able to parse".' -- Laurence Tratt ## http://tratt.net/laurie/blog/entries/text_is_dead_they_say "the COBOL inference - that most technologies that are supposed to eliminate professional programmers do nothing of the sort." -- Martin Fowler ## http://martinfowler.com/articles/languageWorkbench.html "I encourage people to go into functional programming because it stops a lot of very clever, talented people from competing for my job opportunities." -- Laurence Tratt ## http://tratt.net/laurie/blog/entries/why_dont_we_use_functional_programming_languages_more "If you don't want to be outsourced, focus on methodologies and tools that respect you as a programmer, that respect your intelligence, judgement, and motivations. If you do, you put a bit more power in your hands, away from institutions." -- Ian Bicking ## http://blog.ianbicking.org/respecting-the-programmer "If they discovered small green men on Mars that would do the work for free, do you think anybody in the USA or India would have a chance?" -- Tony Bateman ## http://blog.ianbicking.org/respecting-the-programmer "One defining characteristic of all genuinely keen programmers is that they dislike their systems to have any errors in. If a programmer stays late after work one day, it's far more likely that they're trying to debug their system than it is that they're adding a new feature in." -- L. Tratt ## http://tratt.net/laurie/blog/entries/debugging_driven_development `Another way to say "there is only one way to do it" is "there are no correctness-preserving program transformations."' -- Kevin Millkin ## http://lambda-the-ultimate.org/node/472 #### (He's aesthetically wrong though.) "Any sufficiently large program written in a dynamically typed language will eventually end up reimplementing type-checking, badly." -- Brian Slesinsky ## http://blog.ianbicking.org/because-unanswered-problems-are-always-hard "Hint to companies: you're all doing it the same way. Quit being so frigging secretive about it." -- Steve Yegge on interviewing ## http://steve-yegge.blogspot.com/2006/03/truth-about-interviewing.html "For me, the point of encapsulation isn't really about hiding the data, but in hiding design decisions, particularly in areas where those decisions may have to change. -- Martin Fowler ## http://martinfowler.com/bliki/GetterEradicator.html "A good rule of thumb is that things that change together should be together." -- Martin Fowler on object orientation ## http://martinfowler.com/bliki/GetterEradicator.html "Don't design for perfection - design for reinterpretation." -- Danah Boyd ## http://www.danah.org/papers/Etech2006.html "When I tried to add [unit tests] yesterday, I realized my code, as it was, simply wouldn't allow it. This means my code is bad[...] there really aren't 'units' to test, and that means the code is not well-enough thought out." -- Duncan McGregor ## http://oubiwann.blogspot.com/2006/02/unit-tests-no-really-you-have-to-use.html `Satan, pretending to be offended by your skepticism, asks "Whose signature do you trust? Just say the name, and I will have them sign my class. Would you like Microsoft to sign it? There's a guy over there who owes me a favor."' -- "Satan Comes to Dinner in E" ## http://www.erights.org/e/satan/ "acronyms are not for describing but for branding" -- Assaf Arkin ## http://lesscode.org/2006/03/27/pragmatics-guide-to-webarch/ "Despite what the future may hold for PHP, one thing will remain constant. We will continue to fight the complexity to which so many people seem to be addicted." -- Rasmus "Churchill" Lerdorf ## http://www.oracle.com/technology/pub/articles/php_experts/rasmus_php.html #### This is apparently not the declaration of war on his users #### that it appears. "Now, I never learned Cobol[...] I felt pretty clever, I tell you, for managing this -- until I saw friend after friend retire early from all that money they made thanks to the Y2K frenzy. Happiest, smuggest people you ever did see." -- Shelley Powers ## http://weblog.burningbird.net/2006/02/25/babble Including the demolition of the building on the site before, the Empire State building was built in 11 months by 3000 people. "Logo has always had this curse. Students do well with it, but they can't really do well without the influence of the teacher. And very few teachers get it, or get what is going on and what is being taught. It's not relevant to them." -- Ian Bicking ## http://blog.ianbicking.org/python-education-logo.html "He that would perfect his work must first sharpen his tools." -- Confucius "After all, dismissing a concept just because it's been overhyped is just the same sort of lightweight reasoning that's behind firm belief in hype." -- Joachim Durchholz "in art, the form is the content" -- Oleg Kiselyov "The thing they don't tell you about fractals is just how sharp and dangerous they are. [...]until a piece of metal with a very high perimiter to surface area ratio tears into your flesh, you're really missing intuitive appreciation for objects that lack continuous derivatives almost everywhere." - turkey tek ## http://www.instructables.com/ex/i/BCB72E8A25111029BC6B001143E7E506/ "Things appear simple to us when we can operate intuitively, at the level of consciousness well below fully focused, concentrated, strenuous thinking. Thus, the opposite of complexity -- and the best weapon against it -- is intuitiveness." -- Victoria Livschitz ## http://java.sun.com/developer/technicalArticles/Interviews/livschitz_qa.html `Programmers are "average" folks; they have to be, since programming is a profession of millions of people, many without college degrees.' -- Victoria Livschitz ## http://java.sun.com/developer/technicalArticles/Interviews/livschitz_qa.html "We now have a generation of young programmers who think of software in terms of angle brackets. An enormous mess of XML documents that are now being created by enterprises at an alarming rate will be haunting our industry for decades." -- Victoria Livschitz ## http://java.sun.com/developer/technicalArticles/Interviews/livschitz_qa.html "Your blogging experiment is not going to work anyway. Aside from the conspicuous absence of a cat, your problem is that a `normal' blogger's experience is a struggle to gain celebrity...." -- "brlewis" comments on Paul Graham's blog "When once you have tasted flight, you will forever walk the earth with your eyes turned skyward, for there you have been and there you will always long to return." -- Leonardo da Vinci python -c "import urllib; exec urllib.urlopen( 'http://peak.telecommunity.com/dist/ez_setup.py').read()" "I have no special talents, I am only passionately curious," lied Einstein. "The real bombshell came in June of 1987, when Stallman released the GNU C Compiler (GCC) Version 1.0. I downloaded it immediately, and I used all the tricks I'd read about in the Emacs and GDB manuals to quickly learn its 110,000 lines of code." -- Michael Tiemann ## http://www.sindominio.net/biblioweb/telematica/open-sources-html/node73.html "Also, you don't need a 100 person python/ruby shop. If you got that many together, I'm pretty sure you'd accidently cure cancer and solve world peace, in like 4 lines." -- 'Steve' ## http://damienkatz.net/2006/05/signs_youre_a_c.html "This is not to say that design is unnecessary. But after a certain point, design is just speculation." -- Phillip Chu "This notion, that the Web GUI is insufficiently interactive and we need something richer, is widely held among developers and almost never among actual users of computers, and it's entirely wrong." -- Tim Bray ## http://www.tbray.org/ongoing/When/200x/2006/05/19/Continuations-and-GUIs python -c"import urllib;__name__=1;exec urllib.urlopen('http://webpy.org/web.p' 'y').read()+'''\nclass Hello:\n def GET(s,v):v=v or cookies(name='World').name\ ;setcookie('name',v);print'Hello, %s!'%websafe(v)\nrun(['/(.*)', 'Hello'])'''" "Unless you are developing a new Web app framework (admittedly, p > 0.5...)" -- Titus Brown ## http://ivory.idyll.org/articles/wsgi-intro/what-is-wsgi.html "When a vice president [...] asks you whether your team will ship on time, they might well have asked you whether they look fat in their new Armani suit." -- http://blogs.msdn.com/philipsu/archive/2006/06/14/631438.aspx "We explained our philosophical position, to which he rightly replied that it was unthinkable to replace a library routine with a program that was inferior on a common class of inputs: many users sort precisely to bring together equal elements." -- Bentley and McIlroy, 1993 ## http://citeseer.ist.psu.edu/bentley93engineering.html "The key to performance is elegance, not battalions of special cases. The terrible temptation to tweak should be resisted unless the payoff is really noticeable." -- Jon Bentley and Doug McIlroy What a tangled web we weave, when first we practice C++. "I get into the meanest, nastiest frame of mind that I can manage, and I write the nastiest code I can think of; then I turn around and embed that in even nastier constructions that are almost obscene." -- Donald Knuth, on testing TeX My defendant has no alibi. How does he plead? Guilty! "You seemed cool for a naked chick in a booth..." -- The Presidents of the United States of America, "Stranger" "Rosemary Harris: Aunt May/Carnage" -- IMDB entry for Spider-Man 3 "Some young children constantly demand attention, and will do incredibly annoying things until you stop and listen to them. ... Dealing with Adobe Acrobat is exactly like that, except it never grows up, makes you proud or leaves home." -- Des Traynor ## http://www.minds.may.ie/~dez/serendipity/index.php?/archives/74-The-screaming-child-of-software.html "Programmers who subconsciously view themselves as artists will enjoy what they do and will do it better." -- Donald E. Knuth voices the Great Lie of Computer Science (Turing Award Speech, 1974) ### Such programmers will spend their lives in misery, surrounded by ### incompetents eager to destroy any order they create and caught up in ### systems designed for their more mediocre counterparts. "I think we are abstracting ourselves out of a job. If ANYONE can program, then EVERYONE will." -- The Curmudgeon Coder ## http://blogs.sourceallies.com/roller/page/aaron?entry=five_reasons_i_am_a "Assuming adversarial situations where none exist is, clinically speaking, symptom number one of paranoia." -- Alex Martelli on the "Principle of Least Privilege" ## http://groups.google.com/group/comp.lang.python/msg/b977ed1312e10b21 "The difference between a tolerable programmer and a great programmer is not how many programming languages they know, and it's not whether they prefer Python or Java. It's whether they can communicate their ideas." -- Joel Spolsky ## http://www.joelonsoftware.com/articles/CollegeAdvice.html "The thing is, Rupert's motivation percentage is equal to the number of days left at the company; today there are 17 days left, so he is 17% motivated." -- Simon Harriyott ## http://www.harriyott.com/2006/03/what-rupert-cant-leave-hes-only-one.aspx "Your idea has to be original only in its adaptation to the problem you're working on." -- Thomas Edison #### ... according to the Internet, anyway. It sounds like him, #### was certainly a blatant plagiarist. ``Well, they do say money can't buy happiness, but every time someone's tried to buy me some happiness by giving me money, it's worked on the first try. Never fails, in fact. So I think "they" may be full of it.'' -- Steve Yegge ## http://steve-yegge.blogspot.com/2006/07/get-famous-by-not-programming.html "Some [Comp.Sci.] Ph.D.s can [program], but how many of them is it, really? From an industry perspective, an alarming number of them are no-ops." -- Steve Yegge ## http://steve-yegge.blogspot.com/2006/07/wizard-school.html "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 Kernighan "Tutorials should be created with the attitude that any little setback is going to cause some percentage of people to give up, or postpone it and maybe not come back." -- Bruce Eckels ## http://www.artima.com/weblogs/viewpost.jsp?thread=170038 "It is more interesting to know the answer to the question `Does this document conform to these rules?' than to the question `Does this document conform to the rules it declares itself?'." -- Henri Sivonen, "HOWTO Avoid Being Called a Bozo When Producing XML" ## http://hsivonen.iki.fi/producing-xml/#entities #### ...but arguably just as relevant to software interfaces. "Granted that the RSS legacy necessarily required the use of liberal parsers, but hey, that was then, we have better tools now." -- Tim Bray ## http://www.tbray.org/ongoing/When/200x/2003/08/19/Draconianism #### A quiet admission that it all comes down to the tools. "I dislike this terminology: for one thing, a `functional' programming language is one in which functions have first-class citizenship, so a `purely functional' one should be one where, as in Unlambda, /only/ functions have first-class citizenship." -- David Madore, "Unlambda" ## http://www.madore.org/~david/programs/unlambda/ "It's hard to integrate the principles of scientific discovery into one's daily life; while it makes for a good ontological basis for existence, it has the unfortunate side-effect of being damned expensive to apply consistently." -- Glyph Lefkowitz ## http://glyf.livejournal.com/61096.html "Version control systems suffer from considerable lock-in. You can check out any time you like..." -- Alistair Turnbull "No particular /result/ is expected. The test passes if and only if Python doesn't crash." -- Tim Peters, on test_mutants.py ## http://mail.python.org/pipermail/python-dev/2006-August/068467.html "Restricting Python's grammar to an LL(1) parser is a blessing, not a curse. It puts us in handcuffs that prevent us from going overboard and ending up with funky grammar rules like some other dynamic languages that will go unnamed, like Perl." -- PEP 3099 ## http://www.python.org/dev/peps/pep-3099/ ``I can't read this without imagining that the speaker then throws his hips forward and shouts "woof".'' -- Mark Longair (about feedparser.org) "I wanted to teach my kid to program without having to learn anything myself, and I couldn't." -- Rafe (rc3.org) condenses the "Why Johnny Can't Code" NYT article ## http://e-scribe.com/news/281 "A computer is a state machine. Threads are for people who can't program state machines." -- Alan Cox ## http://www.ussg.iu.edu/hypermail/linux/kernel/0001.2/1335.html May you do good and not evil May you find forgiveness for yourself and forgive others May you share freely, never taking more than you give. -- SQLite blessing ## http://www.sqlite.org/different.html "Why this obsession with the wire formats? Shouldn't the important thing be to make sure that you have the same data model in the browser as in the source? Well-formed HTML 4 is a perfectly good way to do that, and works on all contemporary platforms." -- Fredrik Lundh ## http://sayspy.blogspot.com/2006/09/html-vs-xhtml-its-all-in-content-type.html "When magic rules, there are no rules" -- Mike Fletcher (quoting something else?) "/Liking/ and /using/ are mostly orthogonal dimensions, and if you like the language you're using even a little bit, you're lucky. That, or you just haven't gotten broad enough exposure to know how miserable you ought to be." -- Steve Yegge "Every Python user is, in their heart, an amateur language designer" -- Guido van Rossum ## http://video.google.com/videoplay?docid=-6459339159268485356 "We can conclude that the DCT of a pizza doesn't resemble anything edible." -- Andy C. Hung, "PVRG-JPEG codec 1.1" ## http://hpux.cs.utah.edu/ftp/hpux/X11/Graphics/JPEG-1.2.1/JPEG-1.2.1-src-11.00.tar.gz ## (JPEG.ps) "For normal people, the perceived usefulness of a computer language is inversely proportional to the amount of theory the language forces you to learn." -- Larry Wall's Psychological Conjecture, paraphrased by Sam Ruby ## http://intertwingly.net/slides/2005/rs/ ### http://dev.perl.org/perl6/talks/2000/als/talk.html actually says: ### "For most people, the perceived usefulness of a ### computer language is /inversely/ proportional to ### the number of theoretical axes that the language ### attempts to grind." "You have now learned enough about Forth to be dangerous." -- pForth Tutorial ## http://www.softsynth.com/pforth/pf_tut.htm `I can just see this as a plot element in Ocean's Fifteen or Mission Impossible Six, "It's OK, their surveillance system is running Vista, we can shut it down with spoofed premium content".' -- http://www.cs.auckland.ac.nz/~pgut001/pubs/vista_cost.txt "It had a nice color screen and a bunch of bad java game demos on it. The bad java games did it." -- John Carmack on why he's been writing games for mobile phones "Write-once-run-anywhere. Ha. Hahahahaha." -- John Carmack on Java for mobile phones ## http://www.armadilloaerospace.com/n.x/johnc/Recent%20Updates "The power of accurate observation is often called cynicism by those who do not have it." -- George Bernard Shaw ## ...according to the internet at least. "The classic example is SML, which is so fanatically typed that you're guaranteed /never/ to get a runtime exception, because you will /never/ get your goddamn program to compile." -- Steve Yegge ## http://steve-yegge.blogspot.com/2007/02/next-big-language.html "...we did not (and still do not) believe in the standard multithreading model, which is preemptive concurrency with shared memory: we still think that no one can write correct programs in a language where 'a=a+1' is not deterministic." -- The Evolution of Lua ## http://lambda-the-ultimate.org/node/1993 import re def is_prime(num): return not re.match(r"^1?$|^(11+?)\1+$", "1" * num) # http://jtauber.com/blog/2007/03/18/python_primality_regex Python: the power of perl with the sanity of something other than perl. "The notion that everything is a stream of bytes is utterly braindead." -- jwz ## http://regex.info/blog/2006-09-15/247 yellow.bikeshed.com is clearer. "Change the Perl path at the very top of the program code - or try the default. The vat was precariously perched above the magma pool on piers of stones." -- spam "You can't listen to promises when today is today." -- Why the Lucky Stiff ## http://hackety.org/2007/06/07/theFutureOfTheFox.html "Reinventing the wheel is great if your goal is to learn more about wheels." -- James Tauber "Aphorisms work only in retrospect." -- Reuben Thomas "To me the reason open source works is that multiple parties with competing interests can collaborate on the software." -- Havoc Pennington "A resume is more than just a piece of paper. It's a piece of paper with lies written all over it." -- Dave Barry "Language syntax trivia doth NOT a goode programmer maketh." -- Steve Yegge "The question of what software is for rather than what it is expected to do is the most valuable question you can get answered when building any bit of software." -- Kirit Saelensminde "The way a startup makes money is to offer people better technology than they have now. But what people have now is often so bad that it doesn't take brilliance to do better." -- Paul Graham "Fee, fie, fo, fum, I smell a company run by marketing guys." -- Paul Graham "I've found that people who are great at something are not so much convinced of their own greatness as mystified at why everyone else seems so incompetent." -- Paul Graham "Duplicate business information requires a business constraint, not a primary key." -- "GreyCells" ## http://blogs.ittoolbox.com/database/soup/archives/primary-keyvil-part-i-7327#1356158 "source code needs to be *solved* not merely read" -- Sean McGrath e='''x='a';a=lambda a,x:[a,''][x=='a'];print a(str(x)+' problems.\\n',x)+'So\ metimes when you have',x,'problem'+a('s',x)+', you say, "Let\\'s use self-mo\ difying code." Now you have',\ne='x='+str([x*2,2][x=='a'])+';'+e[-235:]\ntry\ :\n exec e\nexcept:\n raise SystemExit''';exec e # -- Dave Linton "I have never met someone who desperately wanted to be great but failed to be at least decent." -- Reg Braithwaite "Any solution to the problems of software engineering has to either be explicable to its current practitioners and make their lives easier, or (more radically) create a whole new class of programmers who get better results." -- Pete Clay "Qui cum canibus concumbunt cum pulicibus surgent" -- proverb (as quoted by Seneca) "Generally open source works best when the user community and the developer community overlap." -- Pete Clay "User errors are a sign that the interface is inhumane, not that the users are dumb. To dismiss these errors as signs of user stupidity is to ignore the very information that should be telling you how to improve the design." -- Jono DiCarlo ## http://humanized.com/weblog/2007/10/05/make_oss_humane/ "1. Grayoleth is readying himself for his day's labors. He selects a shirt of white elvish linen, then goes to the closet to choose a tie. Unfortunately, the closet contains an Orc." -- Igloowhite, "Fifteen Elvish ways to die" ## http://everything2.com/index.pl?node_id=1260831&lastnode_id=1140332 "2. Palthoas is cooking cakes under moonlight by the heat of a brazier. He shutters the windows against the cold, and wraps himself in a silver shawl to sleep. Forgetting to extinguish the fire, the fumes overcome him." -- Igloowhite, "Fifteen Elvish ways to die" ## http://everything2.com/index.pl?node_id=1260831&lastnode_id=1140332 "3. On his way to the office, Halmorne is listening to an epic poem of battle on his CD player. He leans down to fast forward to his favorite part, his sedan quietly swerving into the oncoming truck." -- Igloowhite, "Fifteen Elvish ways to die" ## http://everything2.com/index.pl?node_id=1260831&lastnode_id=1140332 "4. Thisalonar runs onto the tarmac to remove the forgotten chocks from behind the nose wheel of the passenger jet. A dove tumbles towards him, trapped in the suction of the engines. Can fast feet save both bird and elf? No." -- Igloowhite, "Fifteen Elvish ways to die" ## http://everything2.com/index.pl?node_id=1260831&lastnode_id=1140332 "5. Nimble fingers are not enough to remove moon soda from its jammed position inside the machine. In fit of elvish fury, pull! Jhamonis is crushed beneath the machine, despite the warning of labels." -- Igloowhite, "Fifteen Elvish ways to die" ## http://everything2.com/index.pl?node_id=1260831&lastnode_id=1140332 "6. Tidy creatures, elves insist on the cleanest of bathrooms. But don't mix bleach and ammonia. Lohaton's skill with the longbow is of no use to him now." -- Igloowhite, "Fifteen Elvish ways to die" ## http://everything2.com/index.pl?node_id=1260831&lastnode_id=1140332 "7. A night out on the town. Within a leafy grove, Qwhuimkoln seeks to feed the swans, never seeing the school of piranha until too late." -- Igloowhite, "Fifteen Elvish ways to die" ## http://everything2.com/index.pl?node_id=1260831&lastnode_id=1140332 "8. Who will light the Festival of One Thousand Suns? Rhalolas trusts to elvish luck and craft, and splices the evening lights into a hot circuit. Silver slippers in the wet streets make this a tragic miscalculation." -- Igloowhite, "Fifteen Elvish ways to die" ## http://everything2.com/index.pl?node_id=1260831&lastnode_id=1140332 "9. Glindroleth takes a walk down the boulevard for a hot windgrass tea and star biscuits. 12 stories up, human workmen lose their grip on a window unit air conditioner. If only she'd gone out for soup instead..." -- Igloowhite, "Fifteen Elvish ways to die" ## http://everything2.com/index.pl?node_id=1260831&lastnode_id=1140332 "10. Bright sun and spring breezes make this the time of dances, shopping, and diaphanous scarves of magical silk. Aeioletia learns too late that such a garment is ill suited for use on an escalator." -- Igloowhite, "Fifteen Elvish ways to die" ## http://everything2.com/index.pl?node_id=1260831&lastnode_id=1140332 "11. The police are in hot pursuit of a dangerous suspect. Synralon draws his pocket wand to cast a `Blessing of Chase!' to aid the constabulary. The short dark wand causes the police to think otherwise." -- Igloowhite, "Fifteen Elvish ways to die" ## http://everything2.com/index.pl?node_id=1260831&lastnode_id=1140332 "12. Xaneprothel has milk white skin that smells of lylac and fresh baked bread. It drives the cruelly starved junkyard hounds into a blood frenzy." -- Igloowhite, "Fifteen Elvish ways to die" ## http://everything2.com/index.pl?node_id=1260831&lastnode_id=1140332 "13. Deep patrol in Mirkwood. Dindraleen is on point, his infravison alert to the least movement in brush. But the spider filament is so fine, difficult even for the sharp eyes of an elf. The fiber triggers a fifty pound goblin claymore mine, cast in a fearsome face of black iron." -- Igloowhite, "Fifteen Elvish ways to die" ## http://everything2.com/index.pl?node_id=1260831&lastnode_id=1140332 "14. Yillanean reviews the heavy dwarvish scroll, inscribed with ancient runes. He sings the dwarf song, so harsh and guttural in his delicate throat, `Two rights, two lefts, while the third moon shines, to avoid the flame pit.' But elvish football was his preferred subject, translating the tenses of dwarvish rune verbs was never Yillanean's strong suit. Things get hot." -- Igloowhite, "Fifteen Elvish ways to die" ## http://everything2.com/index.pl?node_id=1260831&lastnode_id=1140332 "15. The dark riders were not sleeping. They were only resting their eyes." -- Igloowhite, "Fifteen Elvish ways to die" ## http://everything2.com/index.pl?node_id=1260831&lastnode_id=1140332 "4. Security Considerations This entire memo is about security considerations." -- RFC 2964. Have you not been paying attention? "Power users are a minority, and while they point the way to the future, they tend to be disappointed when the rest of the market catches up with an inferior product that has a lower barrier to new users." -- Tim O'Reilly "Do you have 20 years of experience, or the same year of experience 20 times?" -- Andy Hargadon "Every click represents a question your customer is asking." -- Designing Web Navigation ## http://tinyurl.com/3clcol "Java is like a variant of the game of Tetris in which none of the pieces can fill gaps created by the other pieces, so all you can do is pile them up endlessly." -- Steve Yegge ## http://steve-yegge.blogspot.com/2007/12/codes-worst-enemy.html "Tragically, the only GoF pattern that can help code get smaller (Interpreter) is utterly ignored by programmers who otherwise have the names of Design Patterns tatooed on their various body parts." -- Steve Yegge ## http://steve-yegge.blogspot.com/2007/12/codes-worst-enemy.html "It needs the confidence of a dictator, but the humility of an eternal student." -- Reuben Thomas "On October 11, 1963, my suggestion was to pass on a request of our customers to relax the ALGOL 60 rule of compulsory declaration of variable names [as in] FORTRAN. I was astonished by the polite but firm rejection ..." -- C. A. R. Hoare, The Emperor's Old Clothes (...so it begins.) ## http://www.cs.princeton.edu/~rywang/02f518/papers/hoare.pdf "[T]he real explanation for the success of Java: separable, atomic, pre-packaged, versioned functionality. Jarballs. Those, more than anything else, make reusability real. Java programming is about plugging together ready-built parts. Nothing else comes close." -- Julian Morrison ## http://www.cs.caltech.edu/~mvanier/hacking/rants/scalable_computer_programming_languages.html `"How will this software get my users laid" should be on the minds of anyone writing social software (and these days, almost all software is social software).' -- jwz ## http://www.jwz.org/doc/groupware.html "Sometime computer maker and intellectual property clearing house IBM has threatened the fabric of space-time by attempting to patent profiting from patents." -- Chris Williams, The Register, 24th Oct 2007 ## http://www.theregister.co.uk/2007/10/24/ibm_patents_patents/ "Anything you can consistently convert to cash is a form of currency itself, and Google plays the role of central banker for these new economies." -- Chris Anderson, Wired magazine ## http://www.wired.com/techbiz/it/magazine/16-03/ff_free?currentPage=6 embrace waste -- Chris Anderson, Wired magazine ## http://www.wired.com/techbiz/it/magazine/16-03/ff_free?currentPage=6 "... the purpose of abstraction is not to be vague, but to create a new semantic level in which one can be absolutely precise." -- Edsger W. Dijkstra "Simplicity and elegance are unpopular because they require hard work and discipline to achieve and education to be appreciated." -- Edsger W. Dijkstra "A complex system that works is invariably found to have evolved from a simple system that worked." -- John Gall "Relying on hidden hints in content to provide accessibility just can't work. Hidden content will be broken, only visible content can be trusted. Admitting this does not mean giving up." -- Ian Bicking ## http://blog.ianbicking.org/2008/03/23/html-accessibility/ "I would throw an exception, but they're a pain in the ass in Java. -1 succinctly expresses my embarrassment." -- Mark Longair "The web sites exploited tend to be small, local PHP-based sites, which are less likely to have the latest patches installed, and are invaded via one of more than 1,800 known PHP bugs, MarkMonitor said." -- http://tinyurl.com/32tlrd "I can make your systems efficient and lower your downtime. I cannot make your users happy." -- "Ryno" ## http://www.computerworld.com/action/article.do?command=printArticleBasic&articleId=9072119 "Sir, my concern is not whether God is on our side; my greatest concern is to be on God's side" -- Abraham Lincoln "If Asteroids has a message, it's this: you are insignificant, the universe doesn't care about you, and you are definitely going to die." -- Charlie Brooker ## http://www.guardian.co.uk/technology/2008/apr/05/games.playstation "What's more important than the absolute number is the relative growth rate. High growth solves virtually all problems. If the growth rate is low, or negative, you've got a serious problem." -- Eric Schmidt, Google CEO ## http://www.businessweek.com/magazine/content/08_19/b4083054277984.htm "remember that most users don't know or care whether a system is centralized or decentralized -- their ideal system is one they don't notice." -- Karl Fogel ## http://subversion.tigris.org/servlets/ReadMsg?list=dev&msgNo=128111 "Bash can do a bunch of amazing things [...]. I sometimes wonder, though, whether the time spent searching manuals to find out how to make [it] do what I want might not be better spent in pointing and clicking :-)" -- flabdablet ## http://ask.metafilter.com/42258/Find-a-file-that-isnt-there "Bonsai can be, under the right circumstances, egregiously slow. [...] Even worse, [it can] cause your server load to go sky high and make everything else go slow. This would be a Bad Thing(TM). There has already been screaming." -- Bonsai Project Home Page ## http://www.mozilla.org/projects/bonsai/ "I feel no need to cater to bad programmers." -- Charles Moore fails to spot why Forth never caught on ## http://www.computerworld.com.au/index.php/id;766897508;pp;2 "The key question, I realized, is how does the comber-over not see how odd he looks? And the answer is that he got to look that way incrementally. What began as combing his hair a little carefully over a thin patch has gradually, over 20 years, grown into a monstrosity." -- Paul Graham ## http://www.paulgraham.com/essay.html "Something that's surprised me for decades is how slow platform ldexp() functions are too, given how little they do." -- Tim Peters, probably not hyperbolising "I think that I shall never see, a poem lovely as a self-balancing tree" -- CodeProject.com "In any case, I make no claim to any credentials whatsoever, and this advice is all straight from my butt. Do what you like with it. The advice, that is." -- Steve Yegge ## http://steve-yegge.blogspot.com/2008/08/business-requirements-are-bullshit.html "For our Case Study, I will not do any research and the product will be entirely fictional. This is the approach used by most real companies." -- Steve Yegge ## http://steve-yegge.blogspot.com/2008/08/business-requirements-are-bullshit.html "There are those who will say /terrible/ things about JavaScript. Many of these things are true." -- eloquentjavascript.net ## http://eloquentjavascript.net/ "There is no century number 0, you go from -1 to 1. If you disagree with this, please write your complaint to: Pope, Cathedral Saint-Peter of Roma, Vatican." -- PostgreSQL 8.3 manual, section 9.9.1 My God. It's full of 'car's. -- "Lisp", xkcd #224 ## http://xkcd.com/224/ `The Python people also piped up to say "everything's just fine here" but then they always do, I really must learn that language.' -- Tim Bray, "XML is ok" (2003) ## http://www.tbray.org/ongoing/When/200x/2003/03/24/XMLisOK "GDB is a source-level debugger, capable of breaking programs at any specific line [...]. A must-have for any serious programmer." -- gdb debian package info "Persevere, and you will soon be off-handedly writing expressions that look like occult gibberish" -- EloquentJavascript.net on regular expressions ## http://eloquentjavascript.net/chapter10.html Python: uniform, composable, poetic. "Many years ago we used a machine whose internal temperature could be estimated from the number of low-order bits it got wrong in floating-point calculations." -- Kernighan and Pike, "The Practice of Programming" ## http://tpop.awl.com/ "there is just _one_ thing that is more important than code - and that is the willingness to fix the code..." -- Linus Torvalds ## http://lwn.net/Articles/226963/ the vodka is good but the meat is rotten. "My basic impetus for blogging about this stuff stems from the desire to have my cake and eat it at work." -- Steve Yegge ## http://steve-yegge.blogspot.com/2006/04/lisp-is-not-acceptable-lisp.html "I've always thought that if I were a chinese dissident, the last thing I'd want to have on my computer is anonymity software; in any kind of guilty-until-proven innocent situation that just makes it worse, and you have to be very sure that it works and isn't broken or trojaned." -- Pete Clay "However, this has to be a misnomer, because cowboys, and gauchos down here in Argentina, are highly disciplined individuals." -- http://wiki.awebfactory.com.ar/awebfactory/published/CowboyProgramming ## via http://cowboyprogramming.com/2007/01/11/delving-into-cowboy-programming/ `And by "stupid", I mean it's "incredibly brilliant marketing targeted at stupid people."' -- Steve Yegge ## http://steve-yegge.blogspot.com/2006/09/good-agile-bad-agile_27.html "it's not that dynamic typing is right, it's just doable" -- Ian Bicking Who you calling U+263B, U+2639? "Some languages have gone out of their way to establish an exhaustive visual identity [...]. This is a really good idea! However, Reia's visual identity aims to be a bit less ostentatious and a bit more minimalist than a ruby with an inexplicable diamond cut." -- Reia-lang.org wiki ## http://wiki.reia-lang.org/wiki/Visual_identity "The most effective debugging tool is still careful thought, coupled with judiciously placed print statements." -- Brian Kernighan, 1979 ## http://www.jgc.org/blog/2007/01/tao-of-debugging.html Set $wgLogo to the URL path to your own logo image. "What's happening is that the incurious world of today is gradually rediscovering -- and so far, not very well -- what has been well-known, well done and well-documented for decades. Sic transit gloria mundi." -- Alan Kay "Here it is, 2009, and I'm typing SQL statements into my telephone. This is not quite the future I'd imagined." -- Tim Bray "Knock, knock." "Who's there?" "Java." "It is an important library design criteria that designers should live without too much special pleading. If the language rules are good enough for users, they should be good enough for standard library designers." -- Bjarne Stroustrup ## http://nkari.uw.hu/Tutorials/CPPTips/bjarne_namesp "To call in the statistician after the experiment is done, may be no more than asking him to perform a postmortem examination: he may be able to say what the experiment died of." -- Sir Ronald Fisher `Some people, when confronted with a problem, think "I know, I'll quote Jamie Zawinski." Now they have two problems.' -- Mark Pilgrim ## http://nedbatchelder.com/blog/200902/tweets.html DO NOT SUBMIT COPYRIGHTED WORK WITHOUT PERMISSION! "Another two years later, in 1957, I married and Dutch marriage rites require you to state your profession and I stated that I was a programmer. But the municipal authorities of the town of Amsterdam did not accept it on the grounds that there was no such profession." -- E. W. Dijkstra ## http://www.cs.utexas.edu/~EWD/transcriptions/EWD03xx/EWD340.html "When the darkness comes your watch will still show you the right time." -- spam makes a bid for shortest sci-fi novella "In order that people may be happy in their work, these three things are needed: They must be fit for it. They must not do too much of it. And they must have a sense of success in it." -- John Ruskin ``it's still embarrassingly easy to run into situations where *arithmetic* using floats produces "educational" results'' -- Guido van Rossum ## http://bugs.python.org/issue1580 "The good thing about reinventing the wheel is that you can get a round one." -- Douglas Crockford ## http://blogs.msdn.com/mikechampion/archive/2006/12/21/the-json-vs-xml-debate-begins-in-earnest.aspx "One of the things we should demand from a powerful programming language is the ability to build abstractions by assigning names to common patterns and then to work in terms of the abstractions directly." -- Structure and Interpretation of Computer Programs "If cars were built like software then...well, I don't know squat about building cars so who knows. It might be kinda cool. But probably not." -- James Iry ## http://james-iry.blogspot.com/2009/05/brief-incomplete-and-mostly-wrong.html "This does not mean that I fail to recognise that Lisp is still #1 for key algorithmic techniques such as recursion and condescension." -- Verity Stob ## http://www.theregister.co.uk/2006/01/11/exception_handling/ "disks are cheap and mistakes are expensive" -- Jacob Hallé, "The Infinite Filing Cabinet" ## http://www.strakt.com/docs/accu03_IFC_jacob.pdf "Everyone knows that something is wrong. [...] The only people who understand what is going on are the ones most often blamed and least often heard: the students. They say, `math class is stupid and boring,' and they are right." -- Lockhart's Lament ## http://www.maa.org/devlin/LockhartsLament.pdf "Note to self: When we have finally implemented our plans to rule the entire world with the iron fist of justice... Do not build evil lair on the calving face of an Antarctic ice shelf." -- David Jones, re. "Watchmen" (2009) ## http://drj11.wordpress.com/2009/04/17/watchmen-on-the-ice-shelf/ "Software development is and always will be somewhat experimental. The actual software construction isn't necessarily experimental, but its conception is. And this is where our focus ought to be. It's where our focus always ought to have been." -- Tom DeMarco ## http://www2.computer.org/cms/Computer.org/ComputingNow/homepage/2009/0709/rW_SO_Viewpoints.pdf "1. Possessing the diverse skills needed not to suck. 2. Understanding who you're making the thing for. 3. Orchestrating the interplay of skills, egos and constraints over the course of the time required to make the thing." S. Berkun, Why Software Sucks ## http://www.scottberkun.com/essays/46-why-software-sucks/ "No matter what you do, someone, somewhere will think your software sucks." -- Berkun's Second Law (Scott Berkun, "Why Software Sucks") ## http://www.scottberkun.com/essays/46-why-software-sucks/ "the tests are just a persistent artifact of the exploratory coding I've already done" -- Lennon ## http://www.tbray.org/ongoing/When/200x/2009/06/23/TDD-Heresy "A good programmer is always trying to work themselves out of a job." -- Ian Bicking ## http://blog.ianbicking.org/2009/09/10/a-new-self-definition-for-foss/ "C++ is probably the wrong choice in all but a very limited set of circumstances. That's just my personal belief. [...] Because it has this abstraction [...] it makes you not think about it as much as in C." -- Reverse Engineering Google Tech Talk, Alexander Sotirov, 2007 (47:34) ## http://www.reddit.com/r/netsec/comments/9i3cb/video_using_reverse_engineering_techniques_to/ "The execution of a [VM] instruction consists [in]: 1. accessing the arguments of the instruction; 2. performing the function of the instruction; 3. dispatching (fetching, decoding and starting) the next instruction." -- Ertl & Gregg's concise description of how interpreters work ## http://www.complang.tuwien.ac.at/papers/ertl%26gregg04ivme.ps.gz "The people who are regarded as moral luminaries are those who forego ordinary pleasures themselves and find compensation in interfering with the pleasures of others." -- Bertrand Russell "[I]t is a most astonishing thing that people can believe that this world, with all the things that are in it, with all its defects, should be the best that omnipotence and omniscience have been able to produce in millions of years." -- Bertrand Russell, "Why I Am Not a Christian" ## http://users.drew.edu/~jlenz/whynot.html "[O]ne does find repeatedly [that Christ had] a vindictive fury against those people who would not listen to His preaching -- an attitude which is not uncommon with preachers, but which does somewhat detract from superlative excellence." -- Betrand Russell, "Why I Am Not a Christian" ## http://users.drew.edu/~jlenz/whynot.html" `You will find that in the Gospels Christ said, "Ye serpents, ye generation of vipers, how can ye escape the damnation of Hell." That was said to people who did not like His preaching. It is not really to my mind quite the best tone.' -- Betrand Russell, "Why I Am Not a Christian" ## http://users.drew.edu/~jlenz/whynot.html" "Designing mostly means leaving information out." -- Tim Berners-Lee, "Cool URIs don't change" "Generally, metrics are either a part of the culture or they're a roadblock." -- Steven Lott ## http://homepage.mac.com/s_lott/iblog/architecture/C412398194/E20080902155944/index.html "I see tests more as a way of correcting errors rather than as a way of design." -- Peter Norvig ## http://pindancing.blogspot.com/2009/09/sudoku-in-coders-at-work.html "Thus spake the Lord: Thou shalt indent with four spaces. No more, no less. Four shall be the number of spaces thou shalt indent, and the number of thy indenting shall be four. Eight shalt thou not indent, nor either indent thou two, excepting that thou then proceed to four. Tabs are right out." G.Brandl ## http://mail.python.org/pipermail/python-dev/2009-November/094184.html "The iPad is an attractive, thoughtfully designed, deeply cynical thing." -- Alex Payne ## http://al3x.net/2010/01/28/ipad.html "Web servers have to work like theatre productions: do everything you possibly can before the curtain goes up to make sure there are no delays during the show." -- Robert Brewer ## http://www.b-list.org/weblog/2009/aug/10/wsgi/ "Plans may be useless, but planning can be very useful indeed." -- Upstart Wiki ## http://upstart.ubuntu.com/wiki/ "Most data processing instructions take two operands and one result." -- Reuben Thomas ## http://rrt.sc3d.org/Software/Mite/mite0/doc/PhD/mitethes.pdf "The success of a new design often rests more on the skill with which it chooses the best elements of the state of the art than the degree to which it innovates." -- Reuben Thomas ## http://rrt.sc3d.org/Software/Mite/mite0/doc/PhD/mitethes.pdf "We are what we repeatedly do. Excellence, then, is not an act but a habit." -- Aristotle (I'm told, unverified) # SOURCE: http://twitter.com/pjeby "Note that as of today, Sept 13 [2010], virtually all web users are vulnerable to zero-day exploits for 3 different browser plugins, for which no fix is available" -- secbrowsing.blogspot.com ## http://secbrowsing.blogspot.com/2010/09/adobe-flash-zero-day-vulnerability.html "See, that's just exactly the problem with type systems. They can make sure you use headings, but they can't ensure you get the numbering right." -- Steve Yegge, "Lisp is not an acceptable Lisp" ## http://steve-yegge.blogspot.com/2006/04/lisp-is-not-acceptable-lisp.html "Focus on stability and features first, scalability and manageability second, per-unit performance last of all, because if you don't take care of the first two nobody will care about the third." -- Jeff Darcy ## http://pl.atyp.us/wordpress/?p=2947 "I think we've been switching to writing things more incrementally largely because we spend most of our time now on things other than correctness -- things that are harder to establish by mathematical proof. Is the game fun? Does the UI feel responsive? Is there business value in supporting Sybase?" -- Kragen Sitaker ## http://www.reddit.com/r/programming/comments/bt7nh/according_to_jon_bentleys_book_programming_pearls/ "the ethos of ``vigorous criticism is the only known antidote to error'' runs deep in the open source world" -- Nick Coghlan ## http://tech.blog.aknin.name/2010/04/23/why-dont-i-contribute-to-python-often/ "a transport protocol, to be well behaved, should not have a retransmit time shorter than the current round trip time between the hosts involved [and] when informed by the network of congestion, the transport protocol should take steps to reduce the number of packets outstanding" -- RFC 970 # THIS APPLIES TO VERBAL COMMUNICATION TOO. "On the readability score, I think Scala wins here too. The file processing and set creation is all done in a highly functional style (using foldLeft)." -- A Scala enthusiast ## http://www.codecommit.com/blog/scala/scala-as-a-scripting-language `"We love HTML5 so much we want it to actually work," said Dean Hachamovitch, general manager of Internet Explorer at Microsoft, during a keynote presentation.' -- Paul Krill, InfoWorld, March 16 2010 ## http://www.infoworld.com/d/applications/microsoft-embraces-html5-specification-in-ie9-861 ### In stark constrast to their attitude towards all previous versions of HTML. "I fully expected some people to voice rigorous complaints about the language itself. I was not disappointed. One thing, however, that I should have forseen and prepared for is the fact that a large number of people would voice complaints about HLA in total ignorance." -- Randy Hyde ## http://web.mac.com/randyhyde/HighLevelAsm/HLADoc/HTMLDoc/WhatIsHLA.html "Some people, when they have a problem, think ``I know, I'll use cryptography''. Now they have, like, a million problems." -- Thomas Ptacek ## http://vimeo.com/9260794#36:00 "I was asked to come and defend theory for you. I can't really do that, it's been a long, long time since I felt that theory was important for its own sake rather than what it can do for you." -- Dr. Jeffrey Ullman ## http://vimeo.com/2658924#1:00 "Management says `I demand all of your creativity but trust none of your judgement.'" -- Zed Shaw ## http://vimeo.com/2723800 import sys, itertools for n in itertools.count(1): sys.stdout.write('\x16,\xf3\x06\xec\xf3'[n*n%3*3:6-n**4%5*3] .encode('base64') or '%d\n' % n) import sys;F=1453299<<120;B=453875<<192;F|=F<<144|F<<288;F|=F<<288;B|=B<<240 B|=B<<240;m=M=F|B;j=lambda k:hex(k).strip('L')[2:].zfill(6).decode('hex');n=1 while 1: print(''.join([j(k).encode('base64')[:-1] for k in (m>>24)&16777215, m&16777215 if k]) or str(n)); m = m>>48 or M; n += 1 "There are multiple implementations of Python. CPython is the one that everyone uses except for those that are developing the others." -- Thomas Wouters ## http://video.google.com/videoplay?docid=7760178035196894549 "It's been pretty steady, over my career, that two out of every hundred seems to be born to be a computer scientist. You know, they're geeks like me. We have a peculiar way of organising stuff in our heads. That happens when you're young at some point." -- Donald Knuth ## http://www.youtube.com/watch?v=xLBvCB2kr4Q 45:10 "Static analysis, /at best/, might catch 5-10% of your software quality problems. [...] Overall, testing is far more valuable than static analysis." -- William Pugh, lead developer of FindBugs ## http://www.cs.umd.edu/~pugh/MistakesThatMatter.pdf "I'm sorry that I long ago coined the term "objects" for this topic because it gets many people to focus on the lesser idea. The big idea is "messaging" [...] The key in making great and growable systems [is] to design how its modules communicate" -- Alan Kay on OOP. ## http://lists.squeakfoundation.org/pipermail/squeak-dev/1998-October/017019.html "You should never _ever_ think about pure IO speed as the most important thing. Even if you get absolutely perfect IO streaming off the fastest disk you can find, I will beat you every single time with a cached setup that doesn't need to do IO at all." -- Linus Torvalds ## http://lkml.indiana.edu/hypermail/linux/kernel/0102.1/0124.html "[R]elatively few software engineers actually need to write multithreaded code: for most, concurrency can be achieved by standing on the shoulders of those subsystems that already are highly parallel in implementation." -- Bryan Cantrill and Jeff Bonwick, "Real World Concurrency" ## http://queue.acm.org/detail.cfm?id=1454462 "TDD doesn't prevent bugs you didn't predict. It removes bugs you *did* predict so they don't distract you from fixing the ones you didn't." -- Glyph Lefkowitz ### ...which is why I rarely use it. I remove bugs I did predict manually, ### and TDD automation systems tend to be hugely distracting and a ### maintenance nightmare. `Experience shows that "once I get a program through language X's type system it runs perfectly" generally means "I write tiny programs".' -- Laurence Tratt "All software should be relentless. If you remove its legs, it should use its arms. Whatever errors it encounters, it should deal with them, and keep going if it can." -- Robert `r0ml' Lefkowitz ## Was the T100 coded in Erlang? "It's easier to work with someone in China than with someone who knows a different programming language." -- Dave Thomas (paraphrased) ## http://lathwellproductions.ca/wordpress/2010/11/21/the-language-slapdown-programming-language-that-is/