I’m a PC (Personal Computer).
~ woman in an HP (Hewlett Packard) ad (born: 1939 age: 72)This is equivalent to saying “I have the IQ of a television”.
Let all things be done decently and in order.
~ I Corinthians 14:40Apparently Jehovah disapproves of parallel processing.
On 2038-01-19 03:14:07 UTC (Coordinated Universal Time/Temps Universel Coordonné) the world will end.
~ 32-bit UnixGiven that even artifacts in the ancient Mayan calendar attract apocalyptic cults, surely Unix will generate them too. Unix is gradually switching to 64-bit timestamps which don’t have this Y2K38 problem.
If you think it’s expensive to hire a professional to do the job, wait until you hire an amateur.
~ Red Adair (born: 1915-06-18 died: 2004-08-07 at age: 89)
First we thought the PC was a calculator. Then we found out how to turn numbers into letters with ASCII (American Standard Code for Information Interchange) — 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 (born: 1952-03-11 died: 2001-05-11 at age: 49)
I wrote an ad for Apple Computer: “Macintosh — We might not get everything right, but at least we knew the century was going to end.”
~ Douglas Adams (born: 1952-03-11 died: 2001-05-11 at age: 49)
The major difference between a thing that might go wrong and a thing that cannot possibly go wrong is that when a thing that cannot possibly go wrong goes wrong it usually turns out to be impossible to get at or repair.
~ Douglas Adams (born: 1952-03-11 died: 2001-05-11 at age: 49)
If you have any trouble sounding condescending, find a Unix user to show you how it’s done.
~ Scott Adams (born: 1957-06-08 age: 54), creator of Dilbert.
Don’t worry about people stealing an idea; if it’s original, you’ll have to shove it down their throats.
~ Howard Aiken (born: 1900-03-08 died: 1973-03-14 at age: 73)
Lasciate ogni speranza, voi ch’entrate. (All hope abandon, ye who enter here.)
~ Dante Alighieri (born: 1265 died: 1321-09-14 at age: 56)
To err is human, but to really foul things up requires a computer.
~ Farmer’s Almanac
Nothing worthwhile ever goes smoothly.
~ Mike Amling
Apple likes me, but they strongly prefer my money.
~ Tom Anderson
One of the biggest flaws in the common conception of the future is that the future is something that happens to us, not something we create.
~ Michael Anissimov (born: 1995 age: 16) 1995
A picture is worth a thousand words but it takes 3,000 times the disk space.
~ Anonymous
Any simple problem can be made worse if enough meetings are held to discuss it.
~ Anonymous
Give a person a fish and you feed them for a day; teach that person to use the Internet and they won’t bother you for weeks.
~ Anonymous
GØD is REAL unless declared INTEGER.
~ AnonymousIn FØRTRAN, variables beginning I…N are implicitly INTEGER, the rest REAL.
If you give someone a program, you will frustrate them for a day; if you teach them how to program, you will frustrate them for a lifetime.
~ Anonymous
Never let a computer know you’re in a hurry.
~ Anonymous
Sedulously eschew obfuscatory hyperverbosity and prolixity.
~ Anonymous
The Unix philosophy basically involves giving you just enough rope to hang yourself. And then a couple of feet more, just to be sure.
~ Anonymous
Because a thing seems difficult for you, do not think it impossible for anyone to accomplish.
~ Marcus Aurelius (born: 121-04-26 AD died: 180-03-17 AD at age: 58)
Errors using inadequate data are much less than those using no data at all.
~ Charles Babbage (born: 1791-12-26 died: 1871-10-18 at age: 79)
On two occasions I have been asked [by members of Parliament], “Pray, Mr. Babbage, if you put into the machine wrong figures, will the right answers come out?” I am not able rightly to apprehend the kind of confusion of ideas that could provoke such a question.
~ Charles Babbage (born: 1791-12-26 died: 1871-10-18 at age: 79)
Microsoft has a new version out, Windows XP, which according to everybody is the “most reliable Windows ever.” To me, this is like saying that asparagus is “the most articulate vegetable ever.”
~ Dave Barry (born: 1947-07-03 age: 64)
While you are destroying your mind watching the worthless, brain-rotting drivel on TV, we on the Internet are exchanging, freely and openly, the most uninhibited, intimate and, yes, shocking details about our “CONFIG.SYS” settings.
~ Dave Barry (born: 1947-07-03 age: 64)
The greatest shortcoming of the human race is our inability to understand the exponential function.
~ Dr. Albert A. Bartlett (born: 1923-03-21 age: 88)
I don’t need to test my programs. I have an error-correcting modem.
~ Om I. Baud
How good the design is doesn’t matter near as much as whether the design is getting better or worse. If it is getting better, day by day, I can live with it forever. If it is getting worse, I will die.
~ Kent Beck (born: 1961 age: 50), evangelist for extreme programming .
I mean, source code in files; how quaint, how seventies!
~ Kent Beck (born: 1961 age: 50), evangelist for extreme programming .
I tell people to start implementing when they are pretty sure there aren’t more important stories out there. An iteration’s worth of data is worth months of speculation.
~ Kent Beck (born: 1961 age: 50), evangelist for extreme programming .
Learning research tells us that the time lag from experiment to feedback is critical.
~ Kent Beck (born: 1961 age: 50), evangelist for extreme programming .
Responsible Development is the style of development I aspire to now. It can be summarized by answering the question, “How would I develop if it were my money?” I’m amazed how many theoretical arguments evaporate when faced with this question.
~ Kent Beck (born: 1961 age: 50), evangelist for extreme programming .
Responsible Development shares many practices with XP but the roots are different. Responsible Development’s values are honesty, transparency, accountability, and responsibility. These lead me to pairing, test-first, incremental design, continuous integration, and so on because they support the values.
~ Kent Beck (born: 1961 age: 50), evangelist for extreme programming .
Testing is not the point. The point is about responsibility.
~ Kent Beck (born: 1961 age: 50), evangelist for extreme programming .
A cup of coffee — real coffee — home-browned, home ground, home made, that comes to you dark as a hazel-eye, but changes to a golden bronze as you temper it with cream that never cheated, but was real cream from its birth, thick, tenderly yellow, perfectly sweet, neither lumpy nor frothing on the Java: such a cup of coffee is a match for twenty blue devils and will exorcise them all.
~ Henry Ward Beecher (born: 1813-06-24 died: 1887-03-08 at age: 73)
The human mind likes a strange idea as the body likes a strange protein, and resists it with a similar energy.
~ William Ian Beardmore Beveridge (born: 1908 died: 2006 at age: 98)
Never ascribe to malice, that which can be explained by incompetence.
~ Napoléon Bonaparte (born: 1769-08-15 died: 1821-05-05 at age: 51)
If you think something is impossible, don’t disturb the person who is doing it!
~ Amar Bose (born: 1929-11-02 age: 82)
Invention is arrived at by intelligent stumbling.
~ Amar Bose (born: 1929-11-02 age: 82)
He who mounts a wild elephant goes where the wild elephant goes.
~ Randolph Bourne (born: 1886-05-30 died: 1918-12-22 at age: 32)
Man is the best computer we can put aboard a spacecraft… and the only one that can be mass produced with unskilled labor.
~ Werner von Braun (born: 1912-03-23 died: 1977-06-16 at age: 65)
The best computer is a man, and it’s the only one that can be mass-produced by unskilled labor.
~ Werner von Braun (born: 1912-03-23 died: 1977-06-16 at age: 65)von Braun is the classic nerd who became a mass murderer by refusing to think about the V2 missiles he was developing as anything but interesting toys.
Internet is so big, so powerful and pointless that for some people it is a complete substitute for life.
~ Andrew Brown (born: 1955 age: 56)
Everyone generalises from one example. At least, I do.
~ Steven Brust (born: 1955-11-23 age: 56)
All progress is based on a universal innate desire on the part of every organism to live beyond its income.
~ Samuel Butler (born: 1835-12-04 died: 1902-06-18 at age: 66)
Any fool can tell the truth, but it requires a man of some sense to know how to lie well.
~ Samuel Butler (born: 1835-12-04 died: 1902-06-18 at age: 66)
It is tact that is golden, not silence.
~ Samuel Butler (born: 1835-12-04 died: 1902-06-18 at age: 66)
Computers are like Old Testament gods; lots of rules and no mercy.
~ Joseph Campbell (born: 1904-03-26 died: 1987-10-31 at age: 83)
The first 90% of the code accounts for the first 90% of the development time. The remaining 10% of the code accounts for the other 90% of the development time.
~ Tom Cargill
Sharing the code just seems like The Right Thing to Do, it costs us rather little, but it benefits a lot of people in sometimes very significant ways. There are many university research projects, proof of concept publisher demos, and new platform test beds that have leveraged the code. Free software that people value adds wealth to the world.
~ John D. Carmack (born: 1970-08-20 age: 41) Making the Magic Happen 2010-07-20
I’m doubtful about the temper of your flamingo. Shall I try the experiment?
~ Lewis Caroll (born: 1832-01-27 died: 1898-01-14 at age: 65) The Duchess, The Mock Turtle’s Story, Alice in WonderlandPerhaps because they have seen too many Star Trek movies where computers explode if you give them incorrect instruction, Java newbies are often loathe to perform even the simplest experiments. They insist on finding the answers in manuals or by asking other people. Granted, experiments tell you only how a system behaves now, not how it is promised to behave in future or how other platforms behave.
“When I use a word”, Humpty Dumpty said, in a rather scornful tone, “it means just what I choose it to mean — neither more nor less”.
~ Lewis Carroll (born: 1832-01-27 died: 1898-01-14 at age: 65) — Through the Looking Glass, Chapter 6
Colorless green ideas sleep furiously.
~ Noam Chomsky (born: 1928-12-07 age: 83)An example of a grammatically correct sentence that has no meaning. It is neither true nor false.
Every revolutionary idea seems to evoke three stages of reaction. They may be summed up by the phrases:~ Arthur C. Clarke (born: 1917-12-16 died: 2008-03-19 at age: 90)
- It’s completely impossible.
- It’s possible, but it’s not worth doing.
- I said it was a good idea all along.
If we have learned one thing from the history of invention and discovery, it is that, in the long run — and often in the short one — the most daring prophecies seem laughably conservative.
~ Arthur C. Clarke (born: 1917-12-16 died: 2008-03-19 at age: 90)
No communication technology has ever disappeared, but instead becomes increasingly less important as the technological horizon widens.
~ Arthur C. Clarke (born: 1917-12-16 died: 2008-03-19 at age: 90)
Three Laws Of Prediction
~ Arthur C. Clarke (born: 1917-12-16 died: 2008-03-19 at age: 90)
- When a distinguished but elderly scientist states that something is possible, he is almost certainly right.
- When he states that something is impossible, he is very probably wrong. The only way of discovering the limits of the possible is to venture a little way past them into the impossible.
- Any sufficiently advanced technology is indistinguishable from magic.
A program is only as good as its worst piece of code.
~ Joshua Cramer
The trouble with programmers is that you can never tell what a programmer is doing until it’s too late.
~ Seymour Cray (born: 1925-09-28 died: 1996-10-05 at age: 71)
I’ve noticed lately that the paranoid fear of computers becoming intelligent and taking over the world has almost entirely disappeared from the common culture. Near as I can tell, this coincides with the release of MS-DOS.
~ Larry DeLuca
Doing what the user expects with respect to navigation is absurdly important for user satisfaction.
~ anonymous Google Android developer
About the use of language: it is impossible to sharpen a pencil with a blunt ax. It is equally vain to try to do it with ten blunt axes instead.
~ Edsger Wybe Dijkstra (born: 1930-05-11 died: 2002-08-06 at age: 72)
Beauty is our business.
~ Edsger Wybe Dijkstra (born: 1930-05-11 died: 2002-08-06 at age: 72)Referring to computer science.
Besides a mathematical inclination, an exceptionally good mastery of one’s native tongue is the most vital asset of a competent programmer.
~ Edsger Wybe Dijkstra (born: 1930-05-11 died: 2002-08-06 at age: 72)
Computer science is no more about computers than astronomy is about telescopes.
~ Edsger Wybe Dijkstra (born: 1930-05-11 died: 2002-08-06 at age: 72)
Don’t blame me for the fact that competent programming, as I view it as an intellectual possibility, will be too difficult for “the average programmer”, you must not fall into the trap of rejecting a surgical technique because it is beyond the capabilities of the barber in his shop around the corner.
~ Edsger Wybe Dijkstra (born: 1930-05-11 died: 2002-08-06 at age: 72)
How do we convince people that in programming simplicity and clarity — in short: what mathematicians call elegance — are not a dispensable luxury, but a crucial matter that decides between success and failure?
~ Edsger Wybe Dijkstra (born: 1930-05-11 died: 2002-08-06 at age: 72)
I don’t need to waste my time with a computer just because I am a computer scientist.
~ Edsger Wybe Dijkstra (born: 1930-05-11 died: 2002-08-06 at age: 72)
I mean, if 10 years from now, when you are doing something quick and dirty, you suddenly visualize that I am looking over your shoulders and say to yourself “Dijkstra would not have liked this”, well, that would be enough immortality for me.
~ Edsger Wybe Dijkstra (born: 1930-05-11 died: 2002-08-06 at age: 72)
If in physics there’s something you don’t understand, you can always hide behind the uncharted depths of nature. You can always blame God. You didn’t make it so complex yourself. But if your program doesn’t work, there is no one to hide behind. You cannot hide behind an obstinate nature. If it doesn’t work, you’ve messed up.
~ Edsger Wybe Dijkstra (born: 1930-05-11 died: 2002-08-06 at age: 72)
If you want more effective programmers, you will discover that they should not waste their time debugging, they should not introduce the bugs to start with.
~ Edsger Wybe Dijkstra (born: 1930-05-11 died: 2002-08-06 at age: 72)
In the good old days physicists repeated each other’s experiments, just to be sure. Today they stick to FØRTRAN, so that they can share each other’s programs, bugs included.
~ Edsger Wybe Dijkstra (born: 1930-05-11 died: 2002-08-06 at age: 72)
It is not the task of the University to offer what society asks for, but to give what society needs.
~ Edsger Wybe Dijkstra (born: 1930-05-11 died: 2002-08-06 at age: 72)
It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration.
~ Edsger Wybe Dijkstra (born: 1930-05-11 died: 2002-08-06 at age: 72)In particular, he is talking about Bill Gates.
Programming in Basic causes brain damage.
~ Edsger Wybe Dijkstra (born: 1930-05-11 died: 2002-08-06 at age: 72)
Simplicity is a great virtue but it requires hard work to achieve it and education to appreciate it. And to make matters worse: complexity sells better.
~ Edsger Wybe Dijkstra (born: 1930-05-11 died: 2002-08-06 at age: 72)
Simplicity is prerequisite for reliability,
~ Edsger Wybe Dijkstra (born: 1930-05-11 died: 2002-08-06 at age: 72)The main way to create simplicity is to decompose complexity into a set of black boxes that have minimal possible interaction with each other. Complexity is manageable, so long as it is tightly contained. In the Java idiom, the black boxes are classes with just a few public methods and the private methods hide the complexity inside the black box.
Testing shows the presence, not the absence of bugs.
~ Edsger Wybe Dijkstra (born: 1930-05-11 died: 2002-08-06 at age: 72)
The effort of using machines to mimic the human mind has always struck me as rather silly. I would rather use them to mimic something better.
~ Edsger Wybe Dijkstra (born: 1930-05-11 died: 2002-08-06 at age: 72)
The question of whether Machines Can Think… is about as relevant as the question of whether Submarines Can Swim.
~ Edsger Wybe Dijkstra (born: 1930-05-11 died: 2002-08-06 at age: 72)
The use of COBOL cripples the mind; its teaching should, therefore, be regarded as a criminal offense.
~ Edsger Wybe Dijkstra (born: 1930-05-11 died: 2002-08-06 at age: 72)
We must be very careful when we give advice to younger people: sometimes they follow it!
~ Edsger Wybe Dijkstra (born: 1930-05-11 died: 2002-08-06 at age: 72)
Write a paper promising salvation, make it a structured something or a virtual something, or abstract, distributed or higher-order or applicative and you can almost be certain of having started a new cult.
~ Edsger Wybe Dijkstra (born: 1930-05-11 died: 2002-08-06 at age: 72)
Death, taxes, and lost data. Guess which has occurred.
~ David Dixon 1998, winning entry of the Haiku Error Messages 21st Challenge by Charlie Varon and Jim Rosenau, sponsored by Salon.com
I can predict the future by assuming that money and male hormones are the driving forces for new technology. Therefore, when virtual reality gets cheaper than dating, society is doomed.
~ Dogbert
Plants with leaves no more efficient than today’s solar cells could out-compete real plants, crowding the biosphere with an inedible foliage. Tough omnivorous bacteria could out-compete real bacteria: They could spread like blowing pollen, replicate swiftly, and reduce the biosphere to dust in a matter of days. Dangerous replicators could easily be too tough, small, and rapidly spreading to stop — at least if we make no preparation. We have trouble enough controlling viruses and fruit flies.
~ Eric Drexler (born: 1955-04-25 age: 56) Engines of Creation: The Coming Era of Nanotechnology
I have felt it myself. The glitter of nuclear weapons. It is irresistible if you come to them as a scientist. To feel it’s there in your hands, to release this energy that fuels the stars, to let it do your bidding. To perform these miracles, to lift a million tons of rock into the sky. It is something that gives people an illusion of illimitable power, and it is, in some ways, responsible for all our troubles — this, what you might call technical arrogance, that overcomes people when they see what they can do with their minds.
~ Freeman Dyson (born: 1923-12-15 age: 88) The Day After Trinity
I have not failed. I’ve just found 10,000 ways that won’t work.
~ Thomas Alva Edison (born: 1847-02-11 died: 1931-10-18 at age: 84)
If at first, the idea is not absurd, then there is no hope for it.
~ Albert Einstein (born: 1879-03-14 died: 1955-04-18 at age: 76)
Nothing is so good as it seems beforehand.
~ George Eliot (born: 1819-11-22 died: 1880-12-22 at age: 61) (Mary Ann Evans)
The Nobel is a ticket to one’s own funeral. No one has ever done anything after he got it.
~ Thomas Stearns Eliot (born: 1888-09-26 died: 1965-01-04 at age: 76)
A great part of courage is the courage of having done the thing before.
~ Ralph Waldo Emerson (born: 1803-05-25 died: 1882-04-27 at age: 78)
Always do what you are afraid to do.
~ Ralph Waldo Emerson (born: 1803-05-25 died: 1882-04-27 at age: 78)
Do not go where the path may lead, go instead where there is no path and leave a trail.
~ Ralph Waldo Emerson (born: 1803-05-25 died: 1882-04-27 at age: 78)
Don’t be too timid and squeamish about your actions. All life is an experiment. The more experiments you make the better.
~ Ralph Waldo Emerson (born: 1803-05-25 died: 1882-04-27 at age: 78)
Finish each day and be done with it. You have done what you could.
~ Ralph Waldo Emerson (born: 1803-05-25 died: 1882-04-27 at age: 78)
“Goodbye World!”: the last program you write in C.
~ Bruce Feist 1993
There is a computer disease that anybody who works with computers knows about. It’s a very serious disease and it interferes completely with the work. The trouble with computers is that you ‘play’ with them!
~ Richard P. Feynman (born: 1918-05-11 died: 1988-02-15 at age: 69) 1998
Do more with less.
~ Richard Buckminster (Bucky) Fuller (born: 1895-07-12 died: 1983-07-01 at age: 87)
Biographical history, as taught in our public schools, is still largely a history of boneheads: ridiculous kings and queens, paranoid political leaders, compulsive voyagers, ignorant generals — the flotsam and jetsam of historical currents. The men who radically altered history, the great scientists and mathematicians, are seldom mentioned, if at all.
~ Martin Gardner (born: 1914-10-21 died: 2010-05-22 at age: 95)
A great lathe operator commands several times the wage of an average lathe operator, but a great writer of software code is worth 10,000 times the price of an average software writer.
~ Bill Gates (born: 1955-08-28 age: 56)In nature, the analogous physical property that has this order of magnitude variability is electrical resistance.
Measuring programming progress by lines of code is like measuring aircraft building progress by weight.
~ Bill Gates (born: 1955-08-28 age: 56)
There is this thing called the GPL (Gnu Public Licence), which we disagree with… nobody can ever improve the software.
~ Bill Gates (born: 1955-08-28 age: 56)
While Microsoft does not share all of Sun’s ambitions for Java, we agree that it is a very valuable tool for software developers.
~ Bill Gates (born: 1955-08-28 age: 56)Spoken with British understatement.
I have had my results for a long time: but I do not yet know how I am to arrive at them.
~ Carl Friedrich Gauss (born: 1777-04-30 died: 1855-02-23 at age: 77) , the greatest mathematician of all time.
I mean the word proof not in the sense of the lawyers, who set two half proofs equal to a whole one, but in the sense of a mathematician, where half proof = 0, and it is demanded for proof that every doubt becomes impossible.
~ Carl Friedrich Gauss (born: 1777-04-30 died: 1855-02-23 at age: 77) , the greatest mathematician of all time.
Mathematical discoveries, like springtime violets in the woods, have their season which no human can hasten or retard.
~ Carl Friedrich Gauss (born: 1777-04-30 died: 1855-02-23 at age: 77) , the greatest mathematician of all time.
Mathematicians stand on each other’s shoulders.
~ Carl Friedrich Gauss (born: 1777-04-30 died: 1855-02-23 at age: 77) , the greatest mathematician of all time.
When a philosopher says something that is true then it is trivial. When he says something that is not trivial then it is false.
~ Carl Friedrich Gauss (born: 1777-04-30 died: 1855-02-23 at age: 77) , the greatest mathematician of all time.
You know that I write slowly. This is chiefly because I am never satisfied until I have said as much as possible in a few words, and writing briefly takes far more time than writing at length.
~ Carl Friedrich Gauss (born: 1777-04-30 died: 1855-02-23 at age: 77) , the greatest mathematician of all time.
One of the principal objects of theoretical research in my department of knowledge is to find the point of view from which the subject appears in its greatest simplicity.
~ Josiah Willard Gibbs (born: 1839-02-11 died: 1903-04-28 at age: 64) , pioneer in the mathematics of thermodynamics.
No matter how slick the demo is in rehearsal, when you do it in front of a live audience, the probability of a flawless presentation is inversely proportional to the number of people watching, raised to the power of the amount of money involved.
~ Mark GibbsThis is an example of Murphy’s law.
The future has already happened, it just isn’t evenly distributed.
~ William Gibson (born: 1948-03-17 age: 63)
The most common human act that writing a novel resembles is lying. The working novelist lies daily, very complexly, and at great length. If not for our excessive vanity and our over-active imaginations, novelists might be unusually difficult to deceive.
~ William Gibson (born: 1948-03-17 age: 63) 2009-06-01
Let an ultraintelligent machine be defined as a machine that can far surpass all the intellectual activities of any man however clever. Since the design of machines is one of these intellectual activities, an ultraintelligent machine could design even better machines; there would then unquestionably be an “intelligence explosion”, and the intelligence of man would be left behind. Thus the first ultraintelligent machine is the last invention that man ever need make.
~ Irving John Good (born: 1916-12-09 died: 2009-04-05 at age: 92) 1965
All of us who attended the meeting — including Microsoft — unanimously agreed that unilaterally extending the Java programming language would hurt compatibility among Java tools and programs, would injure other tools vendors, and would damage customers’ ability to run a Java-based software product on whatever platform they wished.
~ James Gosling (born: 1955-05-18 age: 56), co-inventor of Java.
People think of security as a noun, something you go buy. In reality, it’s an abstract concept like happiness. Openness is unbelievably helpful to security.
~ James Gosling (born: 1955-05-18 age: 56), co-inventor of Java.
You know, most people in the open-source world who use open-source software don’t actually do builds themselves — those people just download the binaries. And so we expect that the big enterprise people will just do that, and we will certainly be providing binaries that have been through full industrial-strength QA, that have been through all the conformance testing.
~ James Gosling (born: 1955-05-18 age: 56), co-inventor of Java.
The telephone is the greatest single enemy of scholarship; for what our intellectual forebears used to inscribe in ink now goes once over a wire into permanent oblivion.
~ Dr. Stephen Jay Gould (born: 1941-09-10 died: 2002-05-20 at age: 60) ,
Don’t worry about where you are. Watch the first derivative.
translation:
Don’t worry about how things are. Watch where they are headed.
~ Fred Green (born: 1913-07-12 died: 1992-04-10 at age: 78) (my Dad, an electrical engineer)
Any sufficiently complicated C or FØRTRAN program contains an ad hoc, informally-specified, bug-ridden, slow implementation of half of Common Lisp.
~ Philip Greenspun (born: 1963-09-28 age: 48), Greenspun’s Tenth Rule
Stupidity is the only natural capital offense.
~ Robert A. Heinlein (born: 1907-07-07 died: 1988-05-08 at age: 80)
If it ain’t broke, open it up and see what makes it so bloody special.
~ The Bastard Operator From Hell
[About Algol 60] Here is a language so far ahead of its time, that it was not only an improvement on its predecessors, but also on nearly all its successors.
~ Sir Charles Antony Richard Hoare (born: 1934-01-11 age: 78) Hints on Programming Language Design 1973-12, Turing award winner 1980.
There are two ways of constructing a software design: One way is to make it so simple that there are obviously no deficiencies, and the other way is to make it so complicated that there are no obvious deficiencies. The first method is far more difficult.
~ Sir Charles Antony Richard Hoare (born: 1934-01-11 age: 78) , Turing award winner 1980.
A large number of installed systems work by fiat. That is, they work by being declared to work.
~ Anatol Holt
Come to think of it, there are already a million monkeys on a million typewriters, and Usenet is nothing like Shakespeare.
~ Blair Houghton
An invasion of armies can be resisted, but not an idea whose time has come.
Victor Hugo (born: 1802-02-26 died: 1885-05-22 at age: 83), born 1852, Histoire d’un Crime
All parts should go together without forcing. You must remember that the parts you are reassembling were disassembled by you. Therefore, if you can’t get them together again, there must be a reason. By all means, do not use a hammer.
~ IBM (International Business Machines) maintenance manual (born: 1925 age: 86)
The devil is in the details.
~ English idiomThis idiom predates programming, but anticipates it.
Being the richest man in the cemetery doesn’t matter to me… Going to bed at night saying we’ve done something wonderful… that’s what matters to me.
~ Steve Jobs (born: 1955-02-24 died: 2011-10-05 at age: 56) 1993
Design is not just what it looks like and feels like. Design is how it works.
~ Steve Jobs (born: 1955-02-24 died: 2011-10-05 at age: 56)
It took us three years to build the NeXT computer. If we’d given customers what they said they wanted, we’d have built a computer they’d have been happy with a year after we spoke to them — not something they’d want now.
~ Steve Jobs (born: 1955-02-24 died: 2011-10-05 at age: 56)
Unfortunately, people are not rebelling against Microsoft. They don’t know any better.
~ Steve Jobs (born: 1955-02-24 died: 2011-10-05 at age: 56) 1994
A successful [software] tool is one that was used to do something undreamed of by its author.
~ Stephen Curtis Johnson , winner of the first Turing award.
Given the incredible power of these new technologies, shouldn’t we be asking how we can best coexist with them? And if our own extinction is a likely, or even possible, outcome of our technological development, shouldn’t we proceed with great caution?
~ Bill Joy (born: 1954-11-08 age: 57), co-inventor of Java in Why the future doesn’t need us
I think it is no exaggeration to say we are on the cusp of the further perfection of extreme evil, an evil whose possibility spreads well beyond that which weapons of mass destruction bequeathed to the nation-states, on to a surprising and terrible empowerment of extreme individuals.
~ Bill Joy (born: 1954-11-08 age: 57), co-inventor of Java in Why the future doesn’t need us
The best way to do research is to make a radical assumption and then assume it’s true. For me, I use the assumption that object oriented programming is the way to go.
~ Bill Joy (born: 1954-11-08 age: 57), co-inventor of Java.
The Open Source theorem says that if you give away source code, innovation will occur. Certainly, Unix was done this way… However, the corollary states that the innovation will occur elsewhere. No matter how many people you hire. So the only way to get close to the state of the art is to give the people who are going to be doing the innovative things the means to do it. That’s why we had built-in source code with Unix. Open source is tapping the energy that’s out there.
~ Bill Joy (born: 1954-11-08 age: 57), co-inventor of Java.
The standard definition of AI (Artificial Intelligence) is that which we don’t understand.
~ Bill Joy (born: 1954-11-08 age: 57), co-inventor of Java.
There are a couple of people in the world who can really program in C or FØRTRAN. They write more code in less time than it takes for other programmers. Most programmers aren’t that good. The problem is that those few programmers who crank out code aren’t interested in maintaining it.
~ Bill Joy (born: 1954-11-08 age: 57), co-inventor of Java.
You can drive a car by looking in the rear view mirror as long as nothing is ahead of you. Not enough software professionals are engaged in forward thinking.
~ Bill Joy (born: 1954-11-08 age: 57), co-inventor of Java.
You can’t prove anything about a program written in C or FØRTRAN. It’s really just Peek and Poke with some syntactic sugar.
~ Bill Joy (born: 1954-11-08 age: 57), co-inventor of Java.
Getting information off the Internet is like taking a drink from a fire hydrant.
~ Mitch Kapor (born: 1950-11-01 age: 61) CEO (Chief Executive Officer) Lotus.
Most software today is very much like an Egyptian pyramid with millions of bricks piled on top of each other, with no structural integrity, but just done by brute force and thousands of slaves.
~ Alan Kay (born: 1940-05-17 age: 71), inventor of the Logo programming language.
Technology is anything that wasn’t around when you were born.
~ Alan Kay (born: 1940-05-17 age: 71), inventor of the Logo programming language.
The best way to predict the future is to invent it.
~ Alan Kay (born: 1940-05-17 age: 71), inventor of the Logo programming language.
The real romance is out ahead and yet to come. The computer revolution hasn’t started yet.
~ Alan Kay (born: 1940-05-17 age: 71), inventor of the Logo programming language.
Don’t be discouraged by a failure. It can be a positive experience. Failure is, in a sense, the highway to success, inasmuch as every discovery of what is false leads us to seek earnestly after what is true, and every fresh experience points out some form of error which we shall afterwards carefully avoid.
~ John Keats (born: 1795-10-31 died: 1821-02-23 at age: 25)
Praise or blame has but a momentary effect on the man whose love of beauty in the abstract makes him a severe critic on his own works.
~ John Keats (born: 1795-10-31 died: 1821-02-23 at age: 25)
Creating a pseudo-C++ or alternatively easy object-oriented language would be a disaster. There is just too much support for Java for Microsoft to entice people away from it.
~ Dave Kelly
Heavier-than-air flying machines are not possible.
~ Lord Kelvin (born: 1824-06-26 died: 1907-12-17 at age: 83) 1895He apparently failed to notice that birds are heavier-than-air flying machines.
Controlling complexity is the essence of computer programming.
~ Brian W. Kernighan (born: 1942-01-01 age: 70)
There is no harm in being sometimes wrong especially if one is promptly found out.
~ John Maynard Keynes (born: 1883-06-05 died: 1946-04-21 at age: 62)
A list is only as strong as its weakest link.
~ Donald Ervin Knuth (born: 1938-01-10 age: 74)
Always remember, however, that there’s usually a simpler and better way to do something than the first way that pops into your head.
~ Donald Ervin Knuth (born: 1938-01-10 age: 74)
Any inaccuracies in this index may be explained by the fact that it has been prepared with the help of a computer.
~ Donald Ervin Knuth (born: 1938-01-10 age: 74), Back of the index, The Art Of Computer Programming, Volume 1, Edition 1, 2nd printing.
Beware of bugs in the above code; I have only proved it correct, not tried it.
~ Donald Ervin Knuth (born: 1938-01-10 age: 74)
I decry the current tendency to seek patents on algorithms. There are better ways to earn a living than to prevent other people from making use of one’s contributions to computer science.
~ Donald Ervin Knuth (born: 1938-01-10 age: 74)
Let us change our traditional attitude to the construction of programs. Instead of imagining that our main task is to instruct a computer what to do, let us concentrate rather on explaining to human beings what we want a computer to do.
~ Donald Ervin Knuth (born: 1938-01-10 age: 74)
Premature optimization is the root of all evil.
~ Donald Ervin Knuth (born: 1938-01-10 age: 74),Unfortunately, some have misread this quotation as optimisation is in itself evil, or even that is it wicked to consider speed when choosing an algorithm.
Science is what we understand well enough to explain to a computer. Art is everything else we do.
~ Donald Ervin Knuth (born: 1938-01-10 age: 74)
The process of preparing programs for a digital computer is especially attractive, not only because it can economically and scientifically rewarding, but also because it can be an aesthetic experience much like composing poetry or music.
~ Donald Ervin Knuth (born: 1938-01-10 age: 74)
We should forget about small efficiencies, say about 97% of the time; premature optimization is the root of all evil.
~ Donald Ervin Knuth (born: 1938-01-10 age: 74)
Quantum mechanics is mysterious, and consciousness is mysterious. Q.E.D. Quantum mechanics and consciousness must be related.
~ Christof Koch (born: 1956-11-13 age: 55)
Any sufficiently advanced bug is indistinguishable from a feature.
~ Rich Kulawiecparodying A. C. Clarke’s third law of prediction.
A successful person isn’t necessarily better than her less successful peers at solving problems; her pattern-recognition facilities have just learned what problems are worth solving.
~ Ray Kurzweil (born: 1948-02-12 age: 64)
By 2009, computers will disappear. Displays will be written directly onto our retinas by devices in our eyeglasses and contact lenses.
~ Ray Kurzweil (born: 1948-02-12 age: 64)
By the 2030s, the nonbiological portion of our intelligence will predominate.
~ Ray Kurzweil (born: 1948-02-12 age: 64)
There is one brain organ that is optimised for understanding and articulating logical processes, and that is the outer layer of the brain, called the cerebral cortex. Unlike the rest of the brain, this relatively recent evolutionary development is rather flat, only about 0.32 cm (0.12 in) thick, and includes a mere 6 million neurons. This elaborately folded organ provides us with what little competence we do possess for understanding what we do and who we do it.
~ Ray Kurzweil (born: 1948-02-12 age: 64)
We appear to be programmed with the idea that there are things outside of our self, and some are conscious, and some are not.
~ Ray Kurzweil (born: 1948-02-12 age: 64)
Any code of your own that you haven’t looked at for six or more months might as well have been written by someone else.
~ Eagleson’s LawHowever, it the author was me, that polite stranger left me notes on what I would need to know to quickly become familiar with the program, without overwhelming me with detail. It is an odd feeling, like meeting a twin. I don’t recall writing the words, but it sounds like something I would have said.
A complex system that works is invariably found to have evolved from a simple system that worked.
~ Gall’s Law .
If we were magically shrunk and put into someone’s brain while she was thinking, we would see all the pumps, pistons, gears and levers working away, and we would be able to describe they workings completely, in mechanical terms, thereby completely describing the thought processes of the brain. But that description would not contain any mention of thought! It would contain nothing but descriptions of pumps, pistons, levers!
~ Gottfried Wilhelm Leibniz (born: 1646-07-01 died: 1716-11-14 at age: 70)The truth of this came home to me circa 1970 when I wrote OPTOW, a program to design high voltage transmission lines. It developed what could best be called a personality, higher order behaviours that I did not intend, and did not consciously program in. The personality emerged as a side effect of the thousands of detailed equations and constraints I had programmed in. I suspect the human brain is similar, except the evolution tests the mettle of the personality and punishes the underlying mechanisms.
In the province of the mind what one believes to be true, either is true or becomes true within certain limits. These limits are to be found experimentally and experientially. When so found these limits turn out to be further beliefs to be transcended. In the province of the mind there are no limits.
~ Dr. John Cunningham Lilly (born: 1915-01-06 died: 2001-09-30 at age: 86)
New opinions are always suspected, and usually opposed, without any other reason but because they are not already common.
~ John Locke (born: 1632-08-29 died: 1704-10-28 at age: 72) 1795-04-20
To prejudge other men’s notions before we have looked into them is not to show their darkness but to put out our own eye.
~ John Locke (born: 1632-08-29 died: 1704-10-28 at age: 72) 1795-04-20
The Analytical Engine weaves algebraic patterns, just as the Jacquard loom weaves flowers and leaves.
~ Ada Lovelace (born: 1815-12-10 died: 1852-11-27 at age: 36) 1896
Almost all programming can be viewed as an exercise in caching.
~ Terje Mathisen
You can’t have great software without a great team, and most software teams behave like dysfunctional families.
~ Jim McCarthyWorking on a team, leading a team and working alone are completely different experiences. Software teams are usually composed of asocial people, and egotists attracted by the absolute control that computer programming offers. Leading a team pays the best and I find it the most fun. Other people handle all the tedious details without any effort on my part. It is like wearing a power suit.
It’s difficult to be rigorous about whether a machine really knows, thinks, etc., because we’re hard put to define these things. We understand human mental processes only slightly better than a fish understands swimming.
~ John McCarthy (born: 1927-09-04 died: 2011-10-23 at age: 84). Inventor of the term AI , the short-circuit OR operator (|| in Java), and LISP (List Processing language) that makes EMACS (Extensible Macro System) so addictive.
Culture is your operating system.
~ Terence McKenna (born: 1946-11-16 died: 2002-03-03 at age: 55)He also wanted you to erase your hard disk and install the next version.
The current operating system [culture] is flawed. It actually has bugs in it that generate contradictions. We’re cutting the earth from beneath our own feet. We’re poisoning the atmosphere that we breathe. This is not intelligent behaviour. This is a culture with a bug in its operating system that’s making it produce erratic, dysfunctional, malfunctional behaviour. Time to call a tech! And who are the techs? The shamans are the techs.
~ Terence McKenna (born: 1946-11-16 died: 2002-03-03 at age: 55)
Computers of the future may way no more than 1.36 tonnes (1½ tons).
~ Popular Mechanics (born: 1874-02-17 died: 1956-06-19 at age: 82) 1949
The Internet will catastrophically collapse in 1996.
~ Robert Metcalfe (born: 1946-04-07 age: 65), inventor of Ethernet
As Mr. Nagle so competently points out, almost no one uses Eiffel; in fact until recently there were only 9 users. But now a 10th person just started, so we are holding a conference, appropriately titled the TENTH Eiffel USER conference, to celebrate.
~ Bertrand Meyer (born: 1950 age: 61) 1992, creator of design by contract and the Eiffel language.Proving a language does not have to be popular to be influential.
Ask not first what the system does; ask what it does it to!
~ Bertrand Meyer (born: 1950 age: 61) 1991, creator of design by contract and the Eiffel language.
Careful as they may be, developers of Eiffel libraries will always run into cases in which, after releasing a library class, they suddenly experience what in French is called esprit de l’escalier or wit of the staircase: a great thought which unfortunately is an afterthought, like a clever reply that would have stunned all the other dinner guests — if only you had thought of it before walking down the stairs after the party is over.
~ Bertrand Meyer (born: 1950 age: 61) 1989, creator of design by contract and the Eiffel language.
Eiffel borrows quite openly from several earlier programming languages and I am sure that if we had found a good language construct in C we would have used it as well.
~ Bertrand Meyer (born: 1950 age: 61) 1992, creator of design by contract and the Eiffel language.Most of the things I don’t like about Java are when it apes C.
I have always felt sympathy towards the biologists who accept to debate creationists. Now I also understand them better; one can fight opinions, not articles of faith.
~ Bertrand Meyer (born: 1950 age: 61) 1991, creator of design by contract and the Eiffel language.
Incorrect documentation is often worse than no documentation.
~ Bertrand Meyer (born: 1950 age: 61), creator of design by contract and the Eiffel language.
One should not write a class without a specification — a contract. The contract lists the internal consistency conditions that the class will maintain (the invariant) and, for each operation, the correctness conditions that are the responsibility of the client (the precondition) and those which the operation promises to establish in return (the postcondition).Writing a class without its contract would be similar to producing an engineering component (electrical circuit, VLSI (Very Large Scale Integration) chip, bridge, engine…) without a spec. No professional engineer would even consider the idea.
~ Bertrand Meyer (born: 1950 age: 61), creator of design by contract and the Eiffel language. Description of Design By Contract
Perfect reusable components are not obtained at the first shot.
~ Bertrand Meyer (born: 1950 age: 61) 1989, creator of design by contract and the Eiffel language.
You can have quality software, or you can have pointer arithmetic; but you cannot have both at the same time.
~ Bertrand Meyer (born: 1950 age: 61) 1989, creator of design by contract and the Eiffel language.
The most important fundamental laws and facts of physical science have all been discovered, and these are now so firmly established that the possibility of ever being supplemented by new discoveries is exceedingly remote.
~ Albert Abraham Michelson (born: 1852-12-19 died: 1931-05-09 at age: 78) 1903
Java and PHP (Pre-Hypertext Processor) compete at some level. Get over it.
~ Mike MilinkovichIt is also true that wives and prostitutes compete on some level.
But the big feature of human-level intelligence is not what it does what it is works but what it does when it’s stuck.
~ Marvin Minsky (born: 1927-08-07 age: 84)
Common sense is not a simple thing. Instead, it is an immense society of hard-earned practical ideas — of multitudes of life-learned rules and exceptions, dispositions and tendencies, balances and checks.
~ Marvin Minsky (born: 1927-08-07 age: 84)
It’s ridiculous to live 100 years and only be able to remember 30 million bytes. You know, less than a compact disc. The human condition is really becoming more obsolete every minute.
~ Marvin Minsky (born: 1927-08-07 age: 84)
Will robots inherit the earth? Yes, but they will be our children.
~ Marvin Minsky (born: 1927-08-07 age: 84) 1995
Whenever a new discovery is reported to the world, they say first, “It is probably not true,” Then after, when the truth of the new proposition has been demonstrated beyond question, they say, “Yes, it may be true, but it is not important.” Finally, when sufficient time has elapsed to fully evidence its importance, they say, “Yes, surely it is important, but it is no longer new.”
~ Michel Eyquem de Montaigne (born: 1533 died: 1592 at age: 59)
When a pianist sits down and does a virtuoso performance he is in a technical sense transmitting more information to a machine than any other human activity involving machinery allows.
~ Robert Moog (born: 1934-05-23 died: 2005-08-21 at age: 71), inventor of the music synthesiser.
I see a strong parallel between the evolution of robot intelligence and the biological intelligence that preceded it. The largest nervous systems doubled in size about every fifteen million years since the Cambrian explosion 550 million years ago. Robot controllers double in complexity (processing power) every year or two. They are now barely at the lower range of vertebrate complexity, but should catch up with us within a half century.
~ Hans P. Moravec (born: 1948-11-30 age: 63)
Just remember: you’re not a “dummy,” no matter what those computer books claim. The real dummies are the people who — though technically expert — couldn’t design hardware and software that“s usable by normal consumers if their lives depended upon it.
~ Walter Mossberg (born: 1947-03-27 age: 64)
There is no hope for the fanciful idea of reaching the moon, because of insurmountable barriers to escaping the earth’s gravity.
~ Forest Ray Moulton (born: 1872-04-29 died: 1952-12-07 at age: 80) University of Chicago astronomer, 1932
When you encounter obstacles, you know what you are doing is important.
~ Gottfried Johannes Müller (born: 1914-04-10 died: 2009-09-26 at age: 95)
A large part of mathematics which becomes useful developed with absolutely no desire to be useful, and in a situation where nobody could possibly know in what area it would become useful; and there were no general indications that it ever would be so. By and large it is uniformly true in mathematics that there is a time lapse between a mathematical discovery and the moment when it is useful; and that this lapse of time can be anything from 30 to 100 years, in some cases even more; and that the whole system seems to function without any direction, without any reference to usefulness, and without any desire to do things which are useful.
~ John von Neumann (born: 1903-12-28 died: 1957-02-08 at age: 53)
Any one who considers arithmetical methods of producing random digits is, of course, in a state of sin. For, as has been pointed out several times, there is no such thing as a random number — there are only methods to produce random numbers, and a strict arithmetic procedure of course is not such a method.
~ John von Neumann (born: 1903-12-28 died: 1957-02-08 at age: 53)
It would appear that we have reached the limits of what it is possible to achieve with computer technology, although one should be careful with such statements, as they tend to sound pretty silly in 5 years.
~ John von Neumann (born: 1903-12-28 died: 1957-02-08 at age: 53)
Technological possibilities are irresistible to man. If man can go to the moon, he will. If he can control the climate, he will.
~ John von Neumann (born: 1903-12-28 died: 1957-02-08 at age: 53)
There’s no sense in being precise when you don’t even know what you’re talking about.
~ John von Neumann (born: 1903-12-28 died: 1957-02-08 at age: 53)
Truth is much too complicated to allow anything but approximations.
~ John von Neumann (born: 1903-12-28 died: 1957-02-08 at age: 53)Science is about finding ever better approximations rather than pretending you have already found ultimate truth.
Young man, in mathematics you don’t understand things. You just get used to them.
~ John von Neumann (born: 1903-12-28 died: 1957-02-08 at age: 53)
I do not know what I may appear to the world, but to myself I seem to have been only like a boy playing on the sea-shore, and diverting myself in now and then finding a smoother pebble or a prettier shell than ordinary, whilst the great ocean of truth lay all undiscovered before me.
~ Sir Isaac Newton (born: 1643-01-04 died: 1727-03-31 at age: 84)
I was like a boy playing on the sea-shore, and diverting myself now and then finding a smoother pebble or a prettier shell than ordinary, whilst the great ocean of truth lay all undiscovered before me.
~ Sir Isaac Newton (born: 1643-01-04 died: 1727-03-31 at age: 84)
If I have seen further than others, it is because I stand on the shoulders of giants.
~ Sir Isaac Newton (born: 1643-01-04 died: 1727-03-31 at age: 84)
Black Holes are where God is dividing by zero
~ Don Nichols
The irrationality of a thing is no argument against its existence, rather a condition of it.
~ Friedrich Nietzsche (born: 1844-10-15 died: 1900-08-25 at age: 55)
That’s the thing about people who think they hate computers. What they really hate is lousy programmers.
~ Larry Niven (born: 1938-03-30 age: 73)
A debugged program is one for which you have not yet found the conditions that make it fail.
~ Jerry Ogdin
There’s no reason for individuals to have a computer in their home.
~ Ken Olson (born: 1926-02-20 age: 85), founder of Digital Equipment Corporation 1977
Everything is more complicated than it first seems.
~ Tris Orendorff (born: 1961-02-13 age: 51)
Each generation imagines itself to be more intelligent than the one that went before it, and wiser than the one that comes after it.
~ George Orwell (born: 1903-06-25 died: 1950-01-21 at age: 46)
Sometimes the first duty of intelligent men is the restatement of the obvious.
~ George Orwell (born: 1903-06-25 died: 1950-01-21 at age: 46)
A LISP programmer knows the value of everything, but the cost of nothing.
~ Alan J. Perlis (born: 1922-04-01 died: 1990-02-07 at age: 67), winner of the first Turing award.
It goes against the grain of modern education to teach children to program. What fun is there in making plans, acquiring discipline in organizing thoughts, devoting attention to detail and learning to be self-critical?
~ Alan J. Perlis (born: 1922-04-01 died: 1990-02-07 at age: 67), winner of the first Turing award.
Hardware: The parts of a computer system that can be kicked.
~ Jeff Pesis
The most amazing achievement of the computer software industry is its continuing cancellation of the steady and staggering gains made by the computer hardware industry.
~ Henry Petroski (born: 1942-02-06 age: 70)
Computers are useless. They can only give you answers.
~ Pablo Picasso (born: 1881-10-25 died: 1973-04-08 at age: 91)
After growing wildly for years, the field of computing appears to be reaching its infancy.
~ John Pierce
My laptop has freed me to travel.
~ Steven Pinker (born: 1954-09-18 age: 57)
Never discourage anyone… who continually makes progress, no matter how slow.
~ Plato (born: 428 BC died: 348 BC at age: 80)
The coolest thing to do with your data will be thought of by someone else.
~ Rufus Pollock (born: 1978 age: 33) in xtech 2007 talk.
Besides, the determined Real Programmer can write FØRTRAN programs in any language.
~ Ed Post Real Programmers Don’t Use Pascal
Code as if whoever maintains your code is a violent psychopath who knows where you live.
~ François Poulin
Imagine now and sing.
creating myths
forming jewels from the falling snow.
~ Ray Kurzweil’s Cybermatic Poet program (born: 1948-02-12 age: 64)
Around computers it is difficult to find the correct unit of time to measure progress. Some cathedrals took a century to complete. Can you imagine the grandeur and scope of a program that would take as long?
~ Epigrams in Programming ACM SIGPLAN, 1982-09
Enter any 11-digit prime number to continue.
~ Linux prompt
A security system is only as secure as its secret. Beware of pseudo-secrets.
~ Eric S. Raymond (born: 1957-12-04 age: 54) The Cathedral and the Bazaar
Any tool should be useful in the expected way, but a truly great tool lends itself to uses you never expected.
~ Eric S. Raymond (born: 1957-12-04 age: 54) The Cathedral and the Bazaar
Every good work of software starts by scratching a developer’s personal itch.
~ Eric S. Raymond (born: 1957-12-04 age: 54) The Cathedral and the Bazaar
Given a large enough beta-tester and co-developer base, almost every problem will be characterized quickly and the fix obvious to someone.
~ Eric S. Raymond (born: 1957-12-04 age: 54) The Cathedral and the Bazaar
Given enough eyeballs, all bugs are shallow.
~ Eric S. Raymond (born: 1957-12-04 age: 54) The Cathedral and the Bazaar aka Linus’ Law.
Good programmers know what to write. Great ones know what to rewrite (and reuse).
~ Eric S. Raymond (born: 1957-12-04 age: 54) The Cathedral and the Bazaar
If you have the right attitude, interesting problems will find you.
~ Eric S. Raymond (born: 1957-12-04 age: 54) The Cathedral and the Bazaar
If you treat your beta-testers as if they’re your most valuable resource, they will respond by becoming your most valuable resource.
~ Eric S. Raymond (born: 1957-12-04 age: 54) The Cathedral and the Bazaar
Often, the most striking and innovative solutions come from realizing that your concept of the problem was wrong.
~ Eric S. Raymond (born: 1957-12-04 age: 54) The Cathedral and the Bazaar
Perfection (in design) is achieved not when there is nothing more to add, but rather when there is nothing more to take away.
~ Eric S. Raymond (born: 1957-12-04 age: 54) The Cathedral and the Bazaar
Plan to throw one away; you will, anyhow.
~ Eric S. Raymond (born: 1957-12-04 age: 54) The Cathedral and the Bazaar
Provided the development coordinator has a communications medium at least as good as the Internet, and knows how to lead without coercion, many heads are inevitably better than one.
~ Eric S. Raymond (born: 1957-12-04 age: 54) The Cathedral and the Bazaar
Release early. Release often. And listen to your customers.
~ Eric S. Raymond (born: 1957-12-04 age: 54) The Cathedral and the Bazaar
Smart data structures and dumb code works a lot better than the other way around.
~ Eric S. Raymond (born: 1957-12-04 age: 54) The Cathedral and the Bazaar
The next best thing to having good ideas is recognizing good ideas from your users. Sometimes the latter is better.
~ Eric S. Raymond (born: 1957-12-04 age: 54) The Cathedral and the Bazaar
To solve an interesting problem, start by finding a problem that is interesting to you.
~ Eric S. Raymond (born: 1957-12-04 age: 54) The Cathedral and the Bazaar
Treating your users as co-developers is your least-hassle route to rapid code improvement and effective debugging.
~ Eric S. Raymond (born: 1957-12-04 age: 54) The Cathedral and the Bazaar
When writing gateway software of any kind, take pains to disturb the data stream as little as possible — and never throw away information unless the recipient forces you to!
~ Eric S. Raymond (born: 1957-12-04 age: 54) The Cathedral and the Bazaar
When you lose interest in a program, your last duty to it is to hand it off to a competent successor.
~ Eric S. Raymond (born: 1957-12-04 age: 54) The Cathedral and the Bazaar
When your language is nowhere near Turing-complete, syntactic sugar can be your friend.
~ Eric S. Raymond (born: 1957-12-04 age: 54) The Cathedral and the Bazaar
There is no end to what can be accomplished if you don’t care who gets the credit.
~ Art Rennison
We’ll never win by being like them. Our best tactic is to be better. Better necessarily means different.
~ Jon Rentzsch (born: 1976 age: 35)
A language that doesn’t have everything is actually easier to program in than some that do.
~ Dennis M. Ritchie (born: 1941-09-09 died: 2011-10-08 at age: 70)
C is peculiar in a lot of ways, but it, like many other successful things, has a certain unity of approach that stems from development in a small group.
~ Dennis M. Ritchie (born: 1941-09-09 died: 2011-10-08 at age: 70)
UNIX is basically a simple operating system, but you have to be a genius to understand the simplicity.
~ Dennis M. Ritchie (born: 1941-09-09 died: 2011-10-08 at age: 70)
. If you come out of university without improving your ability to think, you somehow mightily ripped yourself off.
~ Roedy (born: 1948-02-04 age: 64)
20% of all divorce petitions in the USA now cite Facebook as a cause for the breakup.
~ Roedy (born: 1948-02-04 age: 64)
A few millennia ago, pretty well anything you wanted, you had to build it yourself from scratch. Today we can buy objects from many suppliers, which for all practical purposes amounts to contracting out tiny parcels of labour to those expert in that specific manufacturing process. Similarly, modern technology allows a boss to tackle a major project by continually electronically farming out yet another part of the work to a subordinate.
~ Roedy (born: 1948-02-04 age: 64)
A film conventions is that if an actor views a scene through binoculars, the audience sees the image through a mask of two overlapping circles. (In real life of course you don’t see anything special in the middle.)
~ Roedy (born: 1948-02-04 age: 64)
A genius is someone who sees what is there, not what someone else tells him is there.
~ Roedy (born: 1948-02-04 age: 64)
A normal person reacts with frustration when a computer program he is writing does not work. The true computer programmer reacts with secret joy. He has found an excuse to spend time solving a baffling problem.
~ Roedy (born: 1948-02-04 age: 64)
A short order cook is a master of multitasking. Every movement is optimised from years of practice. Yet when a computer executes a multitasking program, it approaches the task as if for the first time.
~ Roedy (born: 1948-02-04 age: 64)
A sign that email needs amajor redesign is that it is less reliable than snail mail, has more junk mail/spam and can damage your reputation if you are not careful.
~ Roedy (born: 1948-02-04 age: 64)
A towel rack should be mounted in easy reach from the bathtub. Mine isn’t. Why? The person who did the design never tested the design by using it himself. That is the same reason most computer programs are so user-hostile.
~ Roedy (born: 1948-02-04 age: 64)
Alan Turing (born: 1912-06-23 died: 1954-06-19 at age: 41) was one of the most brilliant computer scientists of all time. He was the creator of the world’s first computer. He was able compute things with that tiny computer that astound today’s programmers including cracking Nazi ciphers.
He was tried on 1952-03-31 for having consensual sex with another male in his home. He was convicted and offered the alternatives of a year’s imprisonment or chemical castration. He opted for castration. For the period of a year, he took injections of feminising estrogen intended to neutralise his libido. This is Britain’s eternal shame, not Turing’s. In 1954 he committed suicide by eating an apple laced with cyanide.
I spit on those busybody meddling prudes who thought they had the right to interfere with other people’s private sex lives that did not in the least concern them.
~ Roedy (born: 1948-02-04 age: 64)
All great programmers are paranoid.
~ Roedy (born: 1948-02-04 age: 64)
Ambiguity is the mother of confusion.
~ Roedy (born: 1948-02-04 age: 64)
An architect first creates the blueprints to document and clarify his intentions for a building. Then he supervises the construction. Most programmers, oddly, try to do this the other way around. First they compose code, then they document their intentions at the last minute, if at all, with a few comments. Usually these comments describe what the program actually does, not why, or anything about what the program is for or is intended to do.
~ Roedy (born: 1948-02-04 age: 64)
An example (complete and annotated) is worth 1000 lines of BNF (Backus-Naur Form).
~ Roedy (born: 1948-02-04 age: 64)
Apple has overdone it with iProducts that obsolete previous ones only a few months old. With software, you would get an automatic upgrade. With hardware, your status symbol is reduced to an embarrassment. People keep buying the latest, not because of any great need for the enhanced power, but to enhance their prestige, vaguely hoping it will get them laid more often. The iPhone has become the new Rolex. This is conspicuous consumption gone mad.
~ Roedy (born: 1948-02-04 age: 64)
Architects first draw up blueprints to document their intentions. Then they revise them as construction proceeds. Programmers imagine the way to construct programs is the reverse — draw the blueprints/comments after construction is finished, and only if there is spare time.
~ Roedy (born: 1948-02-04 age: 64)
At university I studied mathematics because it was my worst subject. Everything else was pretty easy to coast through using memory. There did not seem much point in just grinding more raw facts down the sausage tube. I wanted to learn to think.
~ Roedy (born: 1948-02-04 age: 64)
Back in the 1970s I discovered that a computer program a tiny bit less clever than a human appears laughably inept and one a tiny bit smarter appears astounding. This creates the illusion of no progress in the program’s evolution, followed by overnight enlightenment.
~ Roedy (born: 1948-02-04 age: 64)
Before there were computer programs, people had to be content with writing poetry or composing music.
~ Roedy (born: 1948-02-04 age: 64)
Burroughs mainframes had legendary brilliant operating system software. Their secret was to use tiny teams of the most brilliant people they could find.
~ Roedy (born: 1948-02-04 age: 64)
By analysing thin slices of a hippocampus (a part of the brain), scientists were able to create computer chip that mimics its functions. They don’t know how it works, but it does.
~ Roedy (born: 1948-02-04 age: 64)
Capitalism has spurred the competition that makes CPU (Central Processing Unit)s faster and faster each year, but the focus on money makes software manufacturers do some peculiar things like deliberately leaving bugs and deficiencies in the software so they can soak the customers for upgrades later. Whether software is easy to use, or never loses data, when the company has a near monopoly, is almost irrelevant to profits, and therefore ignored. The manufacturer focuses on cheap gimmicks like dancing paper clips to dazzle naïve first-time buyers. The needs of existing experienced users are almost irrelevant. I see software rental as the best remedy.
~ Roedy (born: 1948-02-04 age: 64)
CMP (Canadian Mind Products) used to build custom computers. One woman used to bring in her temperamental ancient EGA (Extended Graphics Adapter) computer for us to repair. It was a black hole for time, and it was hard to touch it without something else going wrong. There was no way we could bill for all the time we spent on this thing, and besides her finances were very tight. I detested that machine, but she had no budget for upgrades. I was preparing an invoice and noticed the spell checker had changed her name to Enema. It was as if my computer knew how I felt about her computer.
~ Roedy (born: 1948-02-04 age: 64)
Computer programming is like running up a down escalator or some maniacal video game. You perpetually seem to be almost finished, but the closer you get the end, the faster new obstacles appear out of nowhere. Then one day you really are complete, and you immediately start something else. There is no feeling of triumph, just exhaustion.
~ Roedy (born: 1948-02-04 age: 64)
Computer programs are getting so huge, there is no time to read them any more. You have to be able to skim them or navigate them and safely ignore almost everything. Language design needs to focus on making this easier.
~ Roedy (born: 1948-02-04 age: 64)
Computers are strange. They never complain when you ask them to do exactly the same work over again, with only a tiny change. On the other hand they never experiment with different behaviour no matter how many cues you give them that you extremely frustrated.
~ Roedy (born: 1948-02-04 age: 64)
Don’t worry about documenting what the code does. Document your intention for each method. Also document the values you intend each variable to contain. The code already perfectly describes what your code does, however, it says nothing about your intentions or the big picture.
~ Roedy (born: 1948-02-04 age: 64)
Double blind studies have a fundamental flaw. In theory neither patient nor doctor is supposed to know who got the test medication and who got the placebo, but any ninny can tell if the pill he ate had no effect whatsoever. You need cleverer placebos that more closely mimic the actual drug offering similar side effects, tastes and odours.
~ Roedy (born: 1948-02-04 age: 64)
Doubling the size of a team will probably make it produce even more slowly. The problem is the more team members, the more secrets, the less each team member understands about how it all fits together and how his changes may adversely affect others.
~ Roedy (born: 1948-02-04 age: 64)
Elderly programmers like myself did our first coding with patch cords, spools of paper tape and with 80-column punch cards. This paradigm has persisted, namely that source code for computer programs is a linear stream of ASCII text. Yet programs are really hierarchical rigidly structured data. If a customer asked us the best way to edit structured data, almost nobody would suggest a text editor, yet that is what we programmers use ourselves. We are as hide bound as Christians when it comes to our craft.
~ Roedy (born: 1948-02-04 age: 64)
Electrical resistance is a hugely variable property, varying over many orders of magnitude, much like programming skill.
~ Roedy (born: 1948-02-04 age: 64)
Email was invented overnight as a demo. Issues like spam, spying, spoofing, scams, forgery, and guaranteed delivery were irrelevant for a demo where only five people on the world had email addresses. This primitive email scheme was never intended to replace snail mail. It needs a major redesign to make it secure, reliable, efficient and easy to use for it to be suitable as a global public electronic mail system.
~ Roedy (born: 1948-02-04 age: 64)
Encapsulate! why?
- It makes code easier and safer to maintain.
- It flushes bugs to the surface.
- It makes your code smaller.
- It makes your code faster to peruse.
- Reused code tends to be higher quality.
~ Roedy (born: 1948-02-04 age: 64)
Even after 66 years, computers still don’t consistently display all dates, times, countries, phone numbers and currencies in the reader’s preferred format. We should give up on that as politically impossible, and instead move toward a more efficient uniform ISO (International Standards Organisation) representation, e.g. YYYY-MM-DD 24:59 UTC that will also work for hard copy shared over the planet.
~ Roedy (born: 1948-02-04 age: 64)
Every compilable program in a sense works. The problem is with your unrealistic expectations on what it will do.
~ Roedy (born: 1948-02-04 age: 64)
Everyone has good ideas. The skill is selling them.
~ Roedy (born: 1948-02-04 age: 64)
Evolution has left us humans with a strong drive to compete with each other and with other species. Technology has escalated the power to satisfy that desire to the point of genocide and species extinction. Advanced technology even allows us to wipe out the entire human species and the large mammals. It is only a matter of time until we do it, possibly accidentally. We are doomed unless we develop artificial intelligence, wiser than we are, lacking this drive, that could prevent us from indulging our bloodlust.
~ Roedy (born: 1948-02-04 age: 64)
Expecting those who help deliver your emails to never read them is like trusting everyone who works for the post office never to read your postcards. If you want privacy, you must at a minimum encrypt your emails. It is like putting them in a translucent envelope.
~ Roedy (born: 1948-02-04 age: 64)
For me, the appeal of computer programming is that even though I am quite a klutz, I can still produce something, in a sense perfect, because the computer gives me as many chances as I please to get it right.
~ Roedy (born: 1948-02-04 age: 64)
For nearly every programming language, there exists a task for which it is optimal.
~ Roedy (born: 1948-02-04 age: 64)
Future Desk
A desk a device to store objects, and make it easy to find them. It also holds things in position for you to read them or write on them. Imagine an intelligent desk, that holds the objects you need exactly at the right place, not necessarily on a common level surface. Imagine a small team of people who held books in the air at the correct page for you. Another would hold you monitor at the correct height and distance, perhaps moving it about a bit to exercise your eyes. You could call out like a surgeon pen, “blank DVD” dictionary and it would appear at the usual place for that object. Stuff you were not using would be automatically filed away clearing your workspace. Think how many desks there are in the world, and how much some of the people are paid each hour who use them. Surely even a small improvement in efficiency would have a very short payback time.
~ Roedy (born: 1948-02-04 age: 64)
Have you ever noticed that any computer search in the movies is always linear, with, for example, candidate fingerprints flashing up on the screen one after another? The public is still under the delusion that electronic files are microscopic filing cabinets made out of tiny wires or magnetic patches inside the computer. Most lay people are surprised that it is easy for a computer to file things simultaneously by a dozen different schemes, and that you can print any report in any number of different sorted orders. They assume, like filing cabinet files, computer files are limited to one ordering/access.
~ Roedy (born: 1948-02-04 age: 64)
Have you ever noticed that the equations to explain the universe always fit on a single page? Does this mean the universe is inherently simple or that scientists have not get been able to solve the problems where the solutions take a whole bookfull of equations?
~ Roedy (born: 1948-02-04 age: 64)
How long did it take after the car was invented before owners understood cars would not work unless you regularly changed the oil and the tires? We have gone 34 years and still it is rare to uncover a user who understands computers don’t work without regular backups.
~ Roedy (born: 1948-02-04 age: 64)
HP makes a dozens of quite different printer models all called the 1200. Mine has a GO button, which is not needed since it runs anyway if nothing is blocking it. However, it has no Stop, Flush or Off button. To stop a runaway print job, you have to pull out the plug.
~ Roedy (born: 1948-02-04 age: 64)
Humanity destroys everything it touches. Looked at from the point of view of other species, Homo sapiens make ebola look friendly. Why do humans imagine that hyper-intelligent AI will fail to notice that?
~ Roedy (born: 1948-02-04 age: 64)
Humans are not particularly good at multi-tasking. Even leaving your email on to interrupt lowers your IQ by 14 points, according to Harvard professor Tal Ben-Shahar. The key to programming is removing from your mind everything that you don’t you need for the microtask at hand. One way to remove mental clutter is to write it down in an electronic todo list, so you can temporarily stop thinking about it. Another is to play music to drown out distracting sounds. Another is writing small modules and classes so you don’t need to juggle many facts to complete the code. Less distraction lets you concentrate.
~ Roedy (born: 1948-02-04 age: 64)
Humans run this year’s cultural software on wetware that has barely changed in 50,000 years. Imagine trying to run software of 50,000 years in the future on today’s hardware designs. We have an impedance mismatch problem.
~ Roedy (born: 1948-02-04 age: 64)
I can understand the intellectual challenge of writing video games but it utterly baffles me why anyone would play one. When you are done you have nothing to show for all the effort. You have no skill to use elsewhere. You don’s even have any wages. Since the world is so full of real problems crying for solutions, why jerk around with artificial time wasters?
~ Roedy (born: 1948-02-04 age: 64)
I can’t see how anyone can estimate a computer project that is not just a theme and variations of one done before. Trivial problems unexpectedly turn into a regress of Yak Shaving.
~ Roedy (born: 1948-02-04 age: 64)
I find it easiest to write the code for the most common case, then gradually add code to handle unusual conditions. People coming later to maintain your code be able to tell which code handles the bulk of the cases.
~ Roedy (born: 1948-02-04 age: 64)
I find my most productive and error-free programming is a result of going on a burn. It requires pizza, coffee, and at least 24 hours of uninterrupted solitude. To program confidently and rapidly, I must have, in immediate mind, the consequence of any change I may make to a computer project. It usually takes at least 10 hours to come up to full speed, except for trivial projects.
~ Roedy (born: 1948-02-04 age: 64)
I have long believed that humanity will inevitably destroy itself by any of a dozen means. Our only hope is that artificial intelligence smarter than we are will prevent us from extinguishing ourselves. Creating AI is quite a gamble. There is nothing that guarantees advanced AI will attempt to protect us. How might AI look upon us?
~ Roedy (born: 1948-02-04 age: 64)
- similar to parents with Alzheimers due custodial care.
- Historical curiosities. A few samples should preserved in a living museum for future study.
- Irrelevancies who cannot even understand the new goals of AI society.
- Severely disabled sentient beings who need to be retrofitted with properly designed titanium bodies and electronic brains.
- As enemies who interfere with AI desires. AI will likely evolve from American battle robots.
- As obsolete oxygen and water creatures — poisons to electronic life.
I licence my software fornon-military use only . I know of no Christian who similarly restricts his work to peaceful purposes. I gather Christians don’t really believe in punishment after death, except for homosexuals.
~ Roedy (born: 1948-02-04 age: 64)
I saw a documentary about top-of-the line Mercedes sports cars being built. The engine struck me as a finely tuned Rube Goldberg contraption. There is something fundamentally wrong with a machine that needs so many parts to complete so simple a task. Creatures are constrained by stepwise micro evolution. Cars should not need to be.
~ Roedy (born: 1948-02-04 age: 64)
I think every elementary school should have a measurement day when children learn to estimate measurements. You would show them what a metre, mile, km, kilogram, gram, milligram, quart, litre, pint, hectare, acre, square mile, million dollars etc. looks like by finding or creating examples in the local environs. Then they would practice estimating with prizes for the most accurate estimates.
~ Roedy (born: 1948-02-04 age: 64)
I think the pundits such as professor John Plinussen of Queens University have gleefully dog-piled on the Blackberry without understanding the technology, treating RIM (Research In Motion) most unfairly. They don’t understand the difference between a business tool and a fashion accessory. A business tool must let you write custom applications for your own business. It must provide a stable plaform so those programs continue to run year after year. Compatibility, reliability and security are infinitely more important than coolness. Apple does none of those things. It provides only JavaScript, a toy programming language and iPhone OS (Operating System) yet another new incompatible operating system. It is briliantly done, high tech, flashy toy, not a business tool. Blackberry might start selling fashion accessories too, but they would foolish to ruin their business tools in the process by trying to ape Apple.
~ Roedy (born: 1948-02-04 age: 64)
I would think the key to a weight loss program would be knowing exactly how hungry you have to be before you may start eating and knowing exactly how full you can be before you must stop eating. The plan would include learning how to determine those two points, and learning how to monitor when you cross them.
~ Roedy (born: 1948-02-04 age: 64)
IBM has simulated a cat cerebral cortex at 1% speed using a supercomputer with 147,456 processors 144 terabytes (144,000 gig) of RAM (Random Access Memory). They have also simulated 1% of a human cerebral cortex. This gives scientists a tool to understand how thought works.
~ Roedy (born: 1948-02-04 age: 64)
IDE (Integrated Development Environment)s need to work more like spell checkers. At any point when you are editing code, there are only a very small number of tokens you could conceivably type. Potentially the IDE could know what’s in scope, the possible target types of the current context, whether the current context supports instance or static etc. It you gave the IDE the tiniest hint as to which possibility you wanted by typing a few letters that occur in the name, or are roughly spelled like some letters embedded in the name, it could narrow down the possibilities to one or two, where you could select between three names by typing 1, 2 or 3. It might takes some getting used to, but I suspect if the IDE were responsive enough, you might be able to crank out code five times faster, and have it compile first time, every time. The IDE could handle all the (), [] and {} itself, adjusting them as necessary. They would just appear as a side effect of typing an if or for.
~ Roedy (born: 1948-02-04 age: 64)
If a company decides to abandon a peripheral, I think they should feel morally obligated to post the code and/or the specs of the device so others can make a stab at keeping the perfectly good iron going. It is so infuriating to buy premium quality durable hardware only to have it become useless from lack of up-to-date drivers.
~ Roedy (born: 1948-02-04 age: 64)
If anything grows at 5% a year, in 70 years it grows 32-fold. So, for example, if your city council aims for 5% industrial/population growth a year, in one lifetime it would need 32 times as many sewage treatment plants as it has today.
~ Roedy (born: 1948-02-04 age: 64)see lecture by Dr. Albert A. Bartlett
If ever there was a Communist conspiracy, Facebook is it. One by one it turns highly intelligent people into infants drooling over mindless video games for hours every day that look to me there were designed for 3 year olds.
~ Roedy (born: 1948-02-04 age: 64)
If folklore claimed neutrinos existed, scientists still would not have found them.
~ Roedy (born: 1948-02-04 age: 64)
If I do a company a favour by reporting a bug in a program or non-functioning part of a website, they have a number of standard responses:
~ Roedy (born: 1948-02-04 age: 64)
- Give me some bit of canned advice chosen by a computer based on the keywords it finds in my message. No human actually reads my message.
- Give me instructions on how to use the offending program or website as if the flaw were not there.
- Demand reams of irrelevant information and mindlessly detailed instructions to repeat the bug. It is not that they have been unable to reproduce the bug; they have not even tried. They are hoping these demands will be sufficiently onerous that I will just go away. One company even did this when I told them that clicking the Options button at any time would crash their program.
If Mike Nichols were to remake The Graduate, instead of plastics, “subpenny royalties“ would be whispered into Benjamin’s ear.
~ Roedy (born: 1948-02-04 age: 64)
If protractors were labeled in degrees, radians and fractional revolutions, I think it would help develop trigonometric intuition, similarly an analog device you placed over an angle to read off the sin, cos and tan… You could simulate these tools with an Applet.
~ Roedy (born: 1948-02-04 age: 64)
If someone hacks your computer, they can turn on your web cam and microphone to spy on you or case your home or office for a burglary. Leave them disconnected when not in use.
~ Roedy (born: 1948-02-04 age: 64)
If you can’t remember the name of some method, consider changing it to something you can remember.
~ Roedy (born: 1948-02-04 age: 64)
If you don’t constantly refactor and improve your code as you maintain it, it will deteriorate.
~ Roedy (born: 1948-02-04 age: 64)
If you don’t have enough things to feel guilty about already, consider that as a lifeform, you are helping the universe run down faster by creating entropy.
~ Roedy (born: 1948-02-04 age: 64)
If you give your kitchen floor a quick steam mop every few days, you will find you never have to get out buckets and brushes for deep cleaning. Similarly, if you keep your code tidy, refactoring as you go, you probably won’t need major rewrites.
~ Roedy (born: 1948-02-04 age: 64)
If you have a cell phone, be aware of texting scams. If you use your phone to vote for some performer, they may surreptitiously sign you up for a texting service and charge you $2 to $10 per text they bombard you with. You can rack of a bill of over $1000 very quickly. Your carrier will not help you get your money back because they too make money from these scams.
~ Roedy (born: 1948-02-04 age: 64)
If you have several similar programming problems to solve, pick one and solve it, forgetting about the rest. This will be simpler and more concrete to think about. You will also have less typing whenever you have to change your mind. Don’t clone and modify. Instead generalise your initial solution bit by bit to handle each subsequent problem. It is often helpful to organise your solution around an enum, using custom methods and values on each case to customise the general engine to solve each problem.
~ Roedy (born: 1948-02-04 age: 64)
If you know about a bug, don’t waste time trying to explain all your program’s anomalous behaviour in terms of it. Just fix it and often many mysterious behaviours will disappear miraculously as a side effect.
~ Roedy (born: 1948-02-04 age: 64)
If you misplace your TV remote 10% of the time, buying a second remote will ensure you misplace them both only 1% of the time.
~ Roedy (born: 1948-02-04 age: 64)
If you mistake the purpose of a method, that means the method is not named properly or that it does not have a clear purpose.
~ Roedy (born: 1948-02-04 age: 64)
If you name your kid “John Smith” nobody will ever be able to find him with Google.
~ Roedy (born: 1948-02-04 age: 64)
If you sat at the North Pole for a year staring at the sky, you would see only 50% of the celestial sphere. If you sat at the equator you would see 100%. What is the formula for the percentage given the latitude?
~ Roedy (born: 1948-02-04 age: 64)
If you take a sufficient number of only very improbable risks, you are still guaranteed to get nailed and, in a certain mathematical sense, nailed infinitely often.
~ Roedy (born: 1948-02-04 age: 64)
If you tell a computer the same fact in more than one place, unless you have an automated mechanism to ensure they stay in sync, the versions of the fact will eventually get out of sync.
~ Roedy (born: 1948-02-04 age: 64)
If you want to serve your species, you must be willing to fail. People who want personal glory pursue safe mainstream success. But the most valuable discoveries are off the beaten track, and most of that prospecting will not pan out. Unfortunately, there is no glory for all but a handful of those who devote themselves to this most valuable exploration.
~ Roedy (born: 1948-02-04 age: 64)
Imagine an architect who would never admit to making sketches, blueprints or erecting scaffolds. In his view, the finished building speaks for itself. How could a young architect learn from such a man? Mathematicians traditionally refuse ever to disclose the intuitions that lead them to a conjecture, or the empirical tests to see if it were likely true, or the initial proofs. They are like chefs who refuse to disclose their recipes, ingredients or techniques.
~ Roedy (born: 1948-02-04 age: 64)
Imagine some drunk set up a Woodstock-sized sound system in his back yard, then one night screamed out “Kin ennybuddy hear me?” I think mankind will get a similar reaction to its babbling inane sitcoms and simulated rapes and murders on all radio frequencies to the cosmic neighbourhood.
~ Roedy (born: 1948-02-04 age: 64)
Imagine the change to politics if somebody invented a filter that would kick in during news or political broadcasts that mute out the soundtrack from your TV if the speaker were lying or simply repeating something they did not know was true. It would cause the rise of crazies who were sure false things were absolutely true. Politicians would speak less, knowing most of it would never get through anyway.
~ Roedy (born: 1948-02-04 age: 64)
In designing a computer system, you have to let the computers do what computers do best and the people do what people do best. I recall when designing a banking system explaining to the executives that computers are happy to file things in many different orders at once. They were delighted. It never occurred to them to ask for something that was clearly impossible in the world of paper files. On the other hand, they wanted us to implement intricate, constantly changing rules of thumb that people could handle in their sleep, because in their view, this would be trivially easy to do, even if only marginally useful.
~ Roedy (born: 1948-02-04 age: 64)
In his novel 1984, George Orwell depicted a dystopia where history disappeared, was censored and recensored, and rewritten. Remind you of anything?
~ Roedy (born: 1948-02-04 age: 64)
In his novel Capitol, Orson Scott Card describes a civilisation with a cult of celebrity. To prolong the lives of celebrities, they are put into suspended animation only to wake for one day in a century. During that day, every waking moment is holographically recorded. Twitter gives the illusion that you are such a celebrity and the world is desperate to know precisely what you ate for breakfast and how your bowels are functioning.
~ Roedy (born: 1948-02-04 age: 64)
In programming, and documenting programs, keep vocabulary consistent and precisely defined! Variation in vocabulary to relieve the tedium is for novels.
~ Roedy (born: 1948-02-04 age: 64)
In writing documentation, I have found people have little difficultly generalising from a concrete example, but have endless inventiveness in misinterpreting a generic description, particularly if it written in my own private variant on BNF.
~ Roedy (born: 1948-02-04 age: 64)
Is Twitter the primordial ooze from which a planetary consciousness will evolve?
~ Roedy (born: 1948-02-04 age: 64)
It is a lot easier to combine things later that have been too finely categorised than to split things later whose are categories are too coarse.
~ Roedy (born: 1948-02-04 age: 64)
It is a wonder that anyone has any skill at all for computer programming since our genetic capabilities evolved in a computer-free environment.
~ Roedy (born: 1948-02-04 age: 64)
It is amusing that the greatest discovery in cosmology is a steady hiss (the background radio radiation from the big bang).
~ Roedy (born: 1948-02-04 age: 64)
It is breathtaking how a misplaced comma in a computer program can shred gigabytes of data in seconds.
~ Roedy (born: 1948-02-04 age: 64)
It is depressing that Internet TV and Internet phones are lower quality, slower and harder to use that the old analog systems they are supposed to replace.
~ Roedy (born: 1948-02-04 age: 64)
It is ironic that our technology: the telephone, the computer, the Blackberry, the television, VR (Virtual Reality) is trying to evolve the reproduce the stone age experience of face to face communication.
~ Roedy (born: 1948-02-04 age: 64)
It is quite silly to fret over Wi-Fi (Wireless Fidelity) radiation while ignoring cell phone radiation. The cell phone has to broadcast all the way to a cell phone tower; Wi-Fi just to the nearby router hub. You hold a cell phone right next to your brain. The Wi-Fi transmitter is at arm’s length attached to the computer. Every time you double your distance from a transmitter, you reduce your exposure by a factor of four, so compared with non-BlueTooth cell phones, the effects of Wi-Fi are negligible.
~ Roedy (born: 1948-02-04 age: 64)
It is too obvious to mention, but… If there are several different ways of doing something, (especially involving computer programming) one of them is probably noticeably better. If you do something more than once a day, it is probably worth a little experiment and a few moments contemplating the advantages and disadvantages of doing it each way. Then you can put your choice on automatic.
~ Roedy (born: 1948-02-04 age: 64)
It seems to me scientists are being arrogant when they talk about what happened in the first Planck instant. What they mean is “this is what happens when you extrapolate the mathematics of particle accelerators to the extreme”.
~ Roedy (born: 1948-02-04 age: 64)
It should not be considered an error when the user starts something already started or stops something already stopped. This applies to browsers, services, editors… It is inexcusable to punish the user by requiring some elaborate sequence to atone, e.g. open the task editor, find and kill some processes.
~ Roedy (born: 1948-02-04 age: 64)
It would be quite unusual for anything we build today to be in use 100 years from now. Yet the peoples of centuries past, without computers, materials science or stress analysis were able routinely to build to last a thousand years or more. The Romans built roads to last 2000 years.
~ Roedy (born: 1948-02-04 age: 64)
It’s amazing how much structure natural languages have when you consider who speaks them and how they evolved.
~ Roedy (born: 1948-02-04 age: 64)
JSP (Java Server Pages) is like a 400 year old house where each generation that lived in it tacked on an extra room. There is no overall plan, just a hodge-podge of architectural styles kludged together. The syntax is, to be kind, appalling.
~ Roedy (born: 1948-02-04 age: 64)
Just as a boy outgrows his clothes, so an IDE outgrows its plug-ins. The plug-ins require constant maintenance just to stand still.
~ Roedy (born: 1948-02-04 age: 64)
Just as in nature, the more bugs you find the more there are yet to find.
~ Roedy (born: 1948-02-04 age: 64)Finding a bug is a sign you were asleep a the switch when coding. Stop debugging, and go back over your code line by line.
Keep it consistent.
~ Roedy (born: 1948-02-04 age: 64)
Mental paralysis from overwhelm is the #1 block to programmer productivity.
~ Roedy (born: 1948-02-04 age: 64)The main tactic to dealing with overwhelm is to carve out some easy small sub-problem that you think might be useful to the final result, and write a class to handle that. Even if it turns out you don’t need it, you have at least broken the log-jam.
Most of computer code is for telling the computer what do if some very particular thing goes wrong.
~ Roedy (born: 1948-02-04 age: 64)
My Brita Riviera water-filter pitcher is designed to spill water on the floor if I don’t firmly hold the lid on. Why? The person who designed it never actually used it in daily life. That is the same reason most computer programs are so user-hostile.
~ Roedy (born: 1948-02-04 age: 64)
My Oregon Scientific radio-synched clock turns off the atomic clock synch feature if you touch most any of its buttons. Why? The person who designed it never actually used it in daily life to realise this was an idiotic feature. That is the same reason most computer programs are so user-hostile.
~ Roedy (born: 1948-02-04 age: 64)
My Proctor Silex kettle is designed to scald me if I don’t hold it is a very particular and unnatural way. Why? The person who designed it never actually used it in daily life. That is the same reason most computer programs are so user-hostile.
~ Roedy (born: 1948-02-04 age: 64)
Not only would I refuse to buy a car featuring Microsoft software, I would refuse to even ride in one, even if all they did was manage the sound system.
~ Roedy (born: 1948-02-04 age: 64)
Once we devise robots capable of passing the Turing test, I think it safest to presume they are conscious, and at the least, that we take their requests seriously.
~ Roedy (born: 1948-02-04 age: 64)
One of the beautiful things about science is that many of today’s elementary students have a deeper understanding of atoms than Democritus, the guy who first proposed them.
~ Roedy (born: 1948-02-04 age: 64)
One of the curses of the computer age is manufacturers now design home appliances to die on the very day the warranty expires. It is deliberate waste in the service of mindless profit.
~ Roedy (born: 1948-02-04 age: 64)
One of the few nice things I can say about Twitter is that it teaches brevity.
~ Roedy (born: 1948-02-04 age: 64)
One of the great annoyances in programming derives from the irregularity of English spelling especially when you have international teams. I want to find a method or variable, but I don’t know precisely how its is spelled or worded. English is only approximately phonetic. Letters are randomly doubled. The dictionary often lists variant spellings. British, Canadian and American spellings differ. I would like to see an experiment where variable names were spelled in a simplified English, where there were no double letters. I also think you could add a number of rules about composing variable names so that a variable name for something would be highly predictable. You would also need automated enforcement of the rules as well as possible.
~ Roedy (born: 1948-02-04 age: 64)
One of the inconsistencies in Java is that delimiters come in pairs e.g. {[()]}, but same symbol " is used to both begin and end a String literal.
~ Roedy (born: 1948-02-04 age: 64)
One of the most useful comments you can put in a program is “If you change this, remember to change XXX too”.
~ Roedy (born: 1948-02-04 age: 64)
One of the odd conventions in crime dramas is that if an actor has a low-resolution photograph, if he/she crops a small window of it, and blows it up, the resolution will be vastly improved. (In real life, of course, the resolution is deteriorated.)
~ Roedy (born: 1948-02-04 age: 64)
One program to validate your work is worth 1000 hours of proofreading.
~ Roedy (born: 1948-02-04 age: 64)
One thing I love about having a website, is that when I complain about something, I only have to do it once. It saves me endless hours of grumbling.
~ Roedy (born: 1948-02-04 age: 64)
Only Apple has such marketing cachet that they can release a device who primary effect is to make the user go deaf, and have it hailed as the innovation of the century.
~ Roedy (born: 1948-02-04 age: 64)
Optimism is the last trait I would look for in a programmer to write air traffic control software.
~ Roedy (born: 1948-02-04 age: 64)
Outhouses and programs are typically constructed without plans.
~ Roedy (born: 1948-02-04 age: 64)
Parents decide if they want to condition their children to stand out or blend in. They telegraph that decision early with their choice of name for the child. If it is unique or unusual, they want the child to stand out. If it is common, they want them to blend in and not make waves. If parents want a daughter to be a sexual plaything, they name her after an alcoholic drink or a sugary confection.
~ Roedy (born: 1948-02-04 age: 64)
Particle physics research is hugely expensive. What do those that fund it hope to get in return? I somehow doubt it is satisfying curiosity about the particle bestiary.
~ Roedy (born: 1948-02-04 age: 64)
People laugh at the idea of artificial companions, bringing to mind blow up dolls. People don’t need much. People without human companions make do with cats, dogs, birds, fish, televisions… An artificial companion does not need to pass that high a bar to be useful. If the companion can do even minor caregiving that a loving partner might offer, so much the better. Artificial companions might look like grandparents, grandchildren, pets, movie stars, deceased relatives… They need not look like robots.
~ Roedy (born: 1948-02-04 age: 64)
People will do in cars and on the Internet that which they would never do face to face, only because in person can they be punched in the nose.
~ Roedy (born: 1948-02-04 age: 64)
Perhaps the most important lesson to learn in programming is the importance of unambiguous, accurate, complete and up-to-date comments at the head of each method. The comments should answer any common questions a maintenance programmer might have about the method. More errors are introduced in human-to-human communication (even when both those humans are yourself), than in human-to-computer communication.
~ Roedy (born: 1948-02-04 age: 64)
Politicians complain that Kindles and iBooks are killing jobs by destroying the paper book industry. I see it that they have create a way to produce books for less than a third the cost without destroying forests and emitting greenhouse gases in the process. They have created wealth. They are encouraging literacy and cutting the costs of education.
~ Roedy (born: 1948-02-04 age: 64)
Programmers produce things that eliminate jobs — other people’s jobs, never their own. Programming itself has changed little since the punch card other than the text editor. Computer languages still work at an incredibly picky level of detail.
~ Roedy (born: 1948-02-04 age: 64)
Programming has more tolerance for mistakes, and less tolerance for uncorrected mistakes than other profession.
~ Roedy (born: 1948-02-04 age: 64)
Programming methodologies are rules of thumb. To make them sound simultaneously simple, revolutionary and grand, the authors overstate their universal applicability.
~ Roedy (born: 1948-02-04 age: 64)
Programs are even more importantly narratives about your intentions addressed to fellow programmers (including your later self) than they are commands to a computer.
~ Roedy (born: 1948-02-04 age: 64)
Progress in computing comes most easily by inventing new ways to squander once scarce resources.
~ Roedy (born: 1948-02-04 age: 64)
Refactor early. If you procrastinate, you will have even more code to adjust based on the faulty design.
~ Roedy (born: 1948-02-04 age: 64)
Since we are running out of steam on making computers faster, all we can do is keep adding CPUs. The big problem then becomes how to take processes that humans think of in linear steps and automatically optimise them so pieces of them can be safely computed in parallel. The other thing we can do is hand-tune parallel algorithms for a vast library of canned functions and create specialised hardware for common functions that is optimised to the transistor level. Eventually, we will get to the point we will dynamically fabricate an area on a chip to solve a particular application, with the same abandon we compile code now.
~ Roedy (born: 1948-02-04 age: 64)
Syntactic sugar makes programs terser and hence easier to understand and maintain. The blanket rejection of sugar is a manifestation of “real men make their own bits”.
~ Roedy (born: 1948-02-04 age: 64)
That the week has seven days is not arbitrary. One lunar month is approximately four weeks.
~ Roedy (born: 1948-02-04 age: 64)
The Al Gore Climate Change event on 2011-09-14 was a classic example of what not to do with a public global event. The poor thing died of featuritis. It presumed the audience consisted entirely of 14 year old nerds. Most people wanted to either find where the closest live gathering was, watch a live feed, watch some videos, or play with something that would teach them about global warming. That material was probably in there somewhere, but I would guess 70% people visiting left in disgust before finding it. It felt like being a squirrel in a hamster run, going around and around in circles following links that just got you back to where you started.
~ Roedy (born: 1948-02-04 age: 64)
The amount of time you need to spend double checking your work depends both on the consequences of an error and the likelihood you will screw up.
~ Roedy (born: 1948-02-04 age: 64)
The best way to be consistent in your code is to use the same code to handle the same function. I don’t just mean an identical copy of the same code. I mean the identical method. Don’t be afraid of tiny methods to enforce consistency by specifying your policy in exactly one place.
~ Roedy (born: 1948-02-04 age: 64)
The biggest and most unpredictable delays in a project come when learning to use a new software tool.
~ Roedy (born: 1948-02-04 age: 64)
The biggest embarrassments come from making an inconsequential change at the last minute and not fully retesting.
~ Roedy (born: 1948-02-04 age: 64)
The bug you are asking help with is nearly always in the code you did not post.
~ Roedy (born: 1948-02-04 age: 64)
The cardinal rule of writing unmaintainable code is to specify each fact in as many places as possible and in as many ways as possible.
~ Roedy (born: 1948-02-04 age: 64)
The computer almost never visits that mountain of code that specifies what to do if various very particular things go wrong. It spends most of its time in a tiny pile of code that specifies what do if all goes well. Further, it spends nearly all its time in the wisp of code that handles the most common case.
~ Roedy (born: 1948-02-04 age: 64)I think most programmers think of error and anomaly detection as something you tack-on at the end. Designers of computer languages tend to push features to catch and handle errors to second tier. What would happen if we logically separated code and error detection, and treated handling errors as a first class problem? You could then read a program without the distraction of any error-detecting/recover. We would formally recognize the four types of code, error handling, error detection, all-ok-code, common-case code. This information could be used to generate various summaries, that would make it faster to browse code, deleting what is temporarily irrelevant from view. Code quality in error detection and handling is problematic since you can’t simulate every possible combination of errors to test. I think you would be surprised to discover how little of that code is ever tested.
The computer selected this quotation for you by a pseudo-random processes. Why did the universe so unfold that it send this particular message to you, right now?
~ Roedy (born: 1948-02-04 age: 64)
The days of windows are numbered. I don’t mean the ugly OS . I mean panes of glass covering holes in buildings. They leak/waste too much energy, provide too easy access for criminals, are too vulnerable to extreme weather and make it too easy to spy on the occupants. Instead, they will be covered on the outside with solar panels and on the inside with large display panels (something like TVs). They might display the view outside, or they might display the view from a house on a desert island or, Fahrenheit 451 style, soap operas.
~ Roedy (born: 1948-02-04 age: 64)
The designer of a cell phone should be shot if you have to read the manual to figure out how to turn it on.
~ Roedy (born: 1948-02-04 age: 64)
The drop weight on my Venetian blinds is perfectly symmetrical. You can’t tell by looking at it which side to pull to open the blinds. Why? The person who designed it never actually used it in daily life. That is the same reason most computer programs are so user-hostile.
~ Roedy (born: 1948-02-04 age: 64)
The Facebook Farmville game has done more to undermine the western economies than all the terrorists in history combined.
~ Roedy (born: 1948-02-04 age: 64)
The first person to do a thing (e.g. swimming the English Channel, making a colour photograph) does a great service to others simply by showing a problem is soluble. Even if he does not reveal in detail how he did it, that will encourage imitators not to give up.
~ Roedy (born: 1948-02-04 age: 64)
The four big secrets to writing easy-to-debug, easy-to-maintain code, are not secrets at all. It is just that it takes decades before programmers finally surrender to them.~ Roedy (born: 1948-02-04 age: 64)
- Tell the computer each fact in only one place. E.g. do not clone code.
- Design your code in air-tight boxes, so that nothing you change inside a box has side effects on anything else.
- Don’t try to do two things at once, e.g. dedup a list while simultaneously printing it. Keep the logic separate. It will be easier to maintain, encapsulate and understand.
- Validate the heck out of your data and store it in the most rigidly consistent form you can imagine. This tames it and makes it easy to display and reuse in myriad ways. It hard later to separate data into constituent subfields, but easy to later recombine tiny pieces.
The future belongs to those who can ask computers cogent questions. The ability to memorise large numbers of facts will join snappy arithmetic fundamentals as obsolete skills.
~ Roedy (born: 1948-02-04 age: 64)
The Hubble telescope project produced three wonderful results:
~ Roedy (born: 1948-02-04 age: 64)
- Scientific data about stars, galaxies, planets and black holes at great distances.
- Beautiful images of distant parts of our universe.
- Disabusing the arrogant religious notion that we here on earth are unique and at the centre of the universe. The universe is immense and we are an insignificant spec in it.
The human genome has about 3 billion base pairs. It takes about 750 megabytes to encode them in a computer. In contrast, a small hard disk for a desktop computer is about 120 gigabytes or 120,000 megabytes or 160 times bigger than required to contain the a human genome. In contrast, the specifications for an Airbus take about 1 terabyte or 1,000,000 megabytes or 1333 times more than the human genome. Yet humans exhibit far more complex behaviours than Airbuses. This means nature is still way ahead of us in the efficiency of its blueprints.
~ Roedy (born: 1948-02-04 age: 64)
The key to efficient program maintenance is precise naming so you can find the code you want to examine or change quickly, and to know with certainty the logic appears nowhere else.
~ Roedy (born: 1948-02-04 age: 64)
The least ethical people on the planet are the technologists who use their skills to create tools for war, torture and planetary desecration. They are not driven by violent lusts like soldiers. They have no excuse whatsoever.
~ Roedy (born: 1948-02-04 age: 64)
The longer it takes for a bug to surface, the harder it is to find in the code.
~ Roedy (born: 1948-02-04 age: 64)
The math that predicted that dim brown dwarf stars should exist was ever so much more impressive when the Hubble telescope revealed they actually did, than had they been found first, and some math cooked up to explain their existence.
~ Roedy (born: 1948-02-04 age: 64)
The most amazing thing I ever read was Bernard C. Till’s Masters thesis about nematode worms. He used a computer to simulate the interconnections of the approximately 300 neurons in the worm, including the S-shaped trigger functions in the synapses. What blew me away completely was the simulated worm exhibited all the known behaviours of real worms. He discovered that nature uses a control program for animal behaviour that is encoded incredibly compactly compared with the way computer scientists usually do it. It also means that animals are much less complicated than we suppose.
~ Roedy (born: 1948-02-04 age: 64)
The most obvious way to show consideration for our cosmic neighbours would be to stop broadcasting on frequencies that are not ours.
~ Roedy (born: 1948-02-04 age: 64)
The odd thing about CSV (Comma Separated Value) files is that they are 3 times simpler to write than to read.
~ Roedy (born: 1948-02-04 age: 64)
The population is aging, especially in Japan and there are not enough young people to take care of them. This will stimulate the evolution of caretaker robots, at first supervised and largely controlled remotely by human nurses. Over time they will work more and more independently doing tasks like bathing, feeding, cleaning up, dispensing medications and acting as companions by playing games and conversing. The technology can then be loosed on mankind’s most vexing problem — being sexually attracted to people who have no interest back.
~ Roedy (born: 1948-02-04 age: 64)
The public still have not caught on that every email has an implied BCC: to all the world’s newspapers and police forces.
~ Roedy (born: 1948-02-04 age: 64)
The universe is so huge, I suspect it almost certain that any conceivable logically consistent lifeform exists. We reject such ideas based solely on the fact we have not yet observed extra terrestrial life.
~ Roedy (born: 1948-02-04 age: 64)
There are over 72 million active websites, many with multiple servers. Imagine the aggregate bill for the electricity, cooling and hardware. If you did something to improve the efficiency of them by even 1%, you would have hugely more than justified your existence in terms of reducing your energy and green house gas emission footprint.
~ Roedy (born: 1948-02-04 age: 64)
There are two ways another country could defeat the United States. One of them is to subtly corrupt all the major computer operating systems.
~ Roedy (born: 1948-02-04 age: 64)
This “resistance is futile” joke has gone too far. Even fortune 500 companies have festooned their websites with SUBMIT icons.
~ Roedy (born: 1948-02-04 age: 64)
To Americans, the soldiers are the holiest people. They are exempt from all laws of civil society. They can rape, torture and murder and still be called heroes Even a CSI (Crime Scene Investigator) autopsy of a war criminal is accompanied with special holy music not accorded any other class of victim.
~ Roedy (born: 1948-02-04 age: 64)
To work out the doubling time of an annual percentage growth, divide it into (100 ÷ ln(2)) = 70 e.g. 7% ⇒ 70 ÷ 7 ⇒ 10 years to double. So, for example, when electric power consumption was growing at 7% a year, we had to come up with double the generating capacity every decade. Further, every decade consumed more power than in all previous history combined. These are the consequences of simple arithmetic.
~ Roedy (born: 1948-02-04 age: 64)see lecture by Dr. Albert A. Bartlett
Twitter’s limit of 140 characters permits:
- Saying something that sounds clever, but is untrue.
- Repeating slogans.
- Making a smart-ass evaluation that tells only about your attitude, nothing about the thing discussed.
It is an invitation for people to behave like adolescents. It designed for shallow people like Sarah Palin, and no surprise, she chose it as her preferred social medium.
~ Roedy (born: 1948-02-04 age: 64)
We humans have already dillydallied too long on global warming. We are already screwed. I see our only remaining hope is artificial intelligence that might concoct a solution and have the deviousness to force it down the throats of the oil companies and others with extremely selfish short-term interests.
~ Roedy (born: 1948-02-04 age: 64)
We like to think that exploration and scientific discovery are driven by curiosity, but they are funded by the desire to make a buck, or to find new ways to kill or exploit others.
~ Roedy (born: 1948-02-04 age: 64)
What is the point of a surveillance camera with insufficient resolution to identify culprits?
~ Roedy (born: 1948-02-04 age: 64)
When a newbie asks for help tracking a bug in a code snippet, the problem is usually is the code he did not post, hence the value of anSSCCE.
~ Roedy (born: 1948-02-04 age: 64)
When a rat philosopher heads down a tunnel and finds no cheese, he does not say to himself “Rats! I failed”. He says, “I have learned something. I now know one more place where the cheese isn’t.”
~ Roedy (born: 1948-02-04 age: 64)
When computers drive cars:
~ Roedy (born: 1948-02-04 age: 64)
- Traffic lights would not be needed. Cars would interleave in what would look like an RCMP (Royal Canadian Mounted Police) musical ride.
- Cars could be safely packed closer together bumper to bumper and side to side increasing the capacity of existing roads.
- Cars will get better mileage. Computers will avoid fuel-costly acceleration and braking.
- You won’t have a single bad driver or an accident tying up traffic.
- Fog will not be a hazard since cars will see with multiple sensors (e.g. radar, sonar, infrared, laser) including radio communication with other vehicles further ahead and digital broadcasts of road and weather hazards. All cars in the vicinity will know what the other vehicles are planning to do.
- You can drive drunk, while having sex, while sleeping, while watching TV… in complete safety.
- Cars will simply not enter freeways if that would cause gridlock.
- No matter how inattentive you are, you won’t miss a freeway exit.
- You tell you car your destination, and it gets you there, adjusting the route to road conditions as it proceeds.
- You will normally exit your car, and leave your vehicle to find a parking space for itself, perhaps quite far away, in a very dense parking garage that few humans could navigate. When you want to leave, you summon your car electronically to pick you up at a convenient loading zone.
- You can send your car on errands without a driver, even transporting children and pets unattended.
- You can lend or rent out your car to others when you are not using it, and have it come get you wherever you are.
- You may share a pool of vehicles of various sizes and specialities. You summon a vehicle of the desired type with a digital cell phone call.
- Your taxi won’t have a driver. The distinction between a taxi, a rental vehicle and a vehicle pool will be blurred.
When heavy drinkers demand more access to booze, they justify this by saying “its a free country’. What they mean is they believe they have a right to annoy other people by driving around drunk and shouting at the top of their lungs. These people are in denial about what misery they make for others, especially their own families.
~ Roedy (born: 1948-02-04 age: 64)
When I made a typo in the word Windows, the Forté Agent spell checker suggested that I intended to type wind owls.
~ Roedy (born: 1948-02-04 age: 64)
When man first tried to fly, he copied birds. These designs failed because they needed the instant reactions times of a bird’s brain to control them. He had success once he tried more stable, less bird-like designs. Now we have computers that can react quickly, perhaps we should revisit the problem. Perhaps more efficient aviation is possible with more bird-like, insect-like, bat-like or non-biomimetic less-stable designs. The payoff would be greater fuel efficiency and less global warming gasses.
~ Roedy (born: 1948-02-04 age: 64)
When proofreading, it helps to read aloud. You invoke additional error-detecting circuitry used in pronunciation and hearing.
~ Roedy (born: 1948-02-04 age: 64)
When tackling a difficult programming task, do the easy work first. It is not lazy, since you will do all the work eventually. Each piece you complete removes some of the complexity, leaving the remainder simpler to tackle. Each piece you complete quietens your mind from fussing over some of the details of the solution. Each component you complete gives you an improved tool to think about the big picture with. As you churn away at the easy stuff, your subconscious has time to chew on the difficult parts. The biggest block to productivity is trying to solve the whole problem all at once. You go tharn like a deer in the headlights incapable of action.
~ Roedy (born: 1948-02-04 age: 64)
When you are programming and you feel paralysis from overwhelm:
~ Roedy (born: 1948-02-04 age: 64)
- Write down your worries in an electronic todo list, so you can temporarily stop thinking about them.
- Write smaller modules and classes so you don’t need to juggle many facts to complete the code.
- Do some necessary, but simple, clerical task.
- Solve some simple problem with at least some probability of being useful in the big solution. It will break the logjam.
When you can’t find a bug, you are probably looking in the wrong place. When you can’t find your glasses, you don’t keep scanning the same spot because you are convinced that is where you left them.
~ Roedy (born: 1948-02-04 age: 64)
When you consider how much embarrassment, expense and damage our bailing-wire email system has caused politicians, you’d think they would be willing to spend $200K or so it would take to create a new secure, spam-free one.
~ Roedy (born: 1948-02-04 age: 64)
When you encounter a website without tacky ads for casinos and phony weight loss cures, you can thank the website owners who decided to forgo thousands of dollars in advertising revenue.
~ Roedy (born: 1948-02-04 age: 64)
When you were a child, if you did your own experiment to see if it was better to put to cocoa into your cup first or the hot milk first, then you likely have the programmer gene.
~ Roedy (born: 1948-02-04 age: 64)
Windows is a case-insensitive operating system, but that does not mean you can forget about case. For example, Let us assume you have a file called Abc.txt in C:\temp, and a file called aBc.txt in D:\temp and you type copy C:\temp\abC.txt D:\temp. What is the name of the file in D:\temp when you are done?Hint, the answer rhymes with the most popular word in advertising.
- Abc.txt
- aBc.txt
- abC.txt
- abc.txt
- ABC.txt
~ Roedy (born: 1948-02-04 age: 64)
Write the comments first!
~ Roedy (born: 1948-02-04 age: 64)
Written for the Apple ][, Visicalc was the first spreadsheet. The originality of the spreadsheet concept overshadows Visicalc’s other, even more important, but to us, obvious, innovation — selling the same program, unmodified to the mass market. Prior to that, programs were nearly always custom written or custom modified.
~ Roedy (born: 1948-02-04 age: 64)
You can’t very well fire your customers, no matter how incompetent they are.
~ Roedy (born: 1948-02-04 age: 64)
You encapsulate not just to save typing, but more importantly, to make it easy and safe to change the code later, since you then need change the logic in only one place. Without it, you might fail to change the logic in all the places in occurs.
~ Roedy (born: 1948-02-04 age: 64)
You know you have been at your computer too much when you catch yourself trying to move the cursor off the screen and onto your wall calendar.
~ Roedy (born: 1948-02-04 age: 64)
You picked up your mental programming about how you decide what to think and do in any given situation haphazardly and unconsciously. Consider tidying your mind. Think about how you want your biocomputer to work, and test out the new ideas, then burn the new programming into your unconscious. The Ken Keyes Living Love Methods could be thought of as a school of programming theory.
~ Roedy (born: 1948-02-04 age: 64)
Your top priority should be fixing bugs. If you carry on development, you are just creating more places you will have to search for them.
~ Roedy (born: 1948-02-04 age: 64)
Far better is it to dare mighty things, to win glorious triumphs, even though checkered by failure… than to rank with those poor spirits who neither enjoy nor suffer much, because they live in a gray twilight that knows not victory nor defeat.
~ Theodore Roosevelt (born: 1858-10-27 died: 1919-01-06 at age: 60)
The best executive is one who has sense enough to pick good people to do what he wants done, and self-restraint enough to keep from meddling with them while they do it.
~ Theodore Roosevelt (born: 1858-10-27 died: 1919-01-06 at age: 60)
Windows NT crashed.
I am the Blue Screen of Death.
No one hears your screams.
~ Peter Rothman 1998
Science is what you know, philosophy is what you don’t know.
~ Bertrand Russell (born: 1872-05-18 died: 1970-02-07 at age: 97)
But the fact that some geniuses were laughed at does not imply that all who are laughed at are geniuses. They laughed at Columbus, they laughed at Fulton, they laughed at the Wright Brothers. But they also laughed at Bozo the Clown.
~ Carl Sagan (born: 1934-11-09 died: 1996-12-20 at age: 62)
The brain is like a muscle. When it is in use we feel very good. Understanding is joyous.
~ Carl Sagan (born: 1934-11-09 died: 1996-12-20 at age: 62)
We have also arranged things so that almost no one understands science and technology. This is a prescription for disaster. We might get away with it for a while, but sooner or later this combustible mixture of ignorance and power is going to blow up in our faces.
~ Carl Sagan (born: 1934-11-09 died: 1996-12-20 at age: 62)
Hell is other people.
~ Jean-Paul Sartre (born: 1905-06-21 died: 1980-04-15 at age: 74) Huis Clos, (No Exit) 1934
The Internet is the first thing that humanity has built that humanity doesn’t understand, the largest experiment in anarchy that we have ever had.
~ Eric Schmidt (born: 1955-04-27 age: 56) CEO of Google.
All truth passes through three stages. First, it is ridiculed. Second, it is violently opposed. Third, it is accepted as being self-evident.
~ Arthur Schopenhauer (born: 1788-02-22 died: 1860-09-21 at age: 72)
Everyone takes the limits of his own vision for the limits of the world.
~ Arthur Schopenhauer (born: 1788-02-22 died: 1860-09-21 at age: 72) 1896
Because we do not understand the brain very well we are constantly tempted to use the latest technology as a model for trying to understand it. In my childhood we were always assured the brain was a telegraph switchboard. (“What else could be?”) I was amused to see that Sherrington, the great British neuroscientist, thought that the brain worked like a telegraph system. Freud often compared the brain to hydraulic and electromagnetic systems. Leibnitz compared it to a mill, and I am told that some of the ancient Greeks though the brain functions like a catapult. At present, obviously, the metaphor is the digital computer.
~ John R. Searle (born: 1932-07-31 age: 79)
A hacker on a roll may be able to produce — in a period of a few months — something that a small development group (say, 7-8 people) would have a hard time getting together over a year. IBM used to report that certain programmers might be as much as 100 times as productive as other workers, or more.
~ Peter Seebach (born: 1972 age: 39)
Imprinting on your first system makes change a very hard thing.
~ Peter Seebach (born: 1972 age: 39) The cranky user: Baby duck syndrome
Yesterday it worked
Today it is not working
Windows is like that
~ Margaret Segall 1998
There is always a temptation, when considering some weird combination of circumstances, to say “That will never happen’ and ignore it. The point of Murphy’s law is that we must either show that it really cannot happen, or plan for it happening.
~ Patricia Shanahan
All evolution in thought and conduct must at first appear as heresy and misconduct.
~ George Bernard Shaw (born: 1856-07-26 died: 1950-11-02 at age: 94)
All great truths begin as blasphemies.
~ George Bernard Shaw (born: 1856-07-26 died: 1950-11-02 at age: 94)
The reasonable man adapts himself to the world; the unreasonable one persists in trying to adapt the world to himself. Therefore, all progress depends on the unreasonable man.
~ George Bernard Shaw (born: 1856-07-26 died: 1950-11-02 at age: 94)
I personally believe open source is most important is in the operating system and in file formats. As long as those two things remain open source you can never have a monopoly. No company can dominate by any means except a superior product, and that puts the choice back into the hands of the public.
~ Michael Simms (born: 1970-08-20 age: 41) Linux Game Publishing — it’s possible 2003
It is difficult to get a man to understand something when his salary depends upon his not understanding it.
~ Upton Sinclair (born: 1878-09-20 died: 1968-11-25 at age: 90)
Every invention creates new needs, but the biggest needs are not for new and more advanced versions of the last invention but for solutions to the social problems the last invention created.
~ Philip Slater (born: 1927 age: 84)
Motors make noise, and that tells you about the feelings and attitudes that went into it. Something was more important than sensory pleasure — nobody would invent a chair or dish that smelled bad or that made horrible noises — why were motors invented noisy? How could they possibly be considered complete or successful inventions with this glaring defect? Unless, of course, the aggressive, hostile, assaultive sound actually served to express some impulse of the owner.
~ Philip Slater (born: 1927 age: 84), The Wayward Gate: Science and the Supernatural
Pigmaei gigantum humeris impositi plusquam ipsi gigantes vident. (Pygmies placed on the shoulders of giants see more than the giants themselves.)
~ Didacus Stella (born: 1524 died: 1578 at age: 54), inspiring Newton’s famous quote.
[The Internet] is a series of tubes. And if you don’t understand, those tubes can be filled and if they are filled, when you put your message in, it gets in line and it’s going to be delayed by anyone that puts into that tube enormous amounts of material, enormous amounts of material.
~ Ted Stevens (born: 1923-11-18 died: 2010-08-09 at age: 86) US Senator for Alaska, global warming fudster
Treat your password like your toothbrush. Don’t let anybody else use it, and get a new one every six months.
~ Clifford Stoll (born: 1950 age: 61) author of The Cuckoo’s Egg: Tracking a Spy Through the Maze of Computer Espionage
The best programmers are not marginally better than merely good ones. They are an order-of-magnitude better, measured by whatever standard: conceptual creativity, speed, ingenuity of design, or problem-solving ability.
~ Randall E. StrossIn nature, the analogous physical property that has this order of magnitude variability is electrical resistance.
C makes it easy to shoot yourself in the foot; C++ makes it harder, but when you do, it blows away your whole leg.
~ Bjarne Stroustrup (born: 1950-12-30 age: 61)
There are only two kinds of programming languages: those people always bitch about and those nobody uses.
~ Bjarne Stroustrup (born: 1950-12-30 age: 61)
I’ve finally learned what “upward compatible” means. It means we get to keep all our old mistakes.
~ Dennie van Tassel
End User Rights
~ Thunderbird Email Team (born: 2004-12-07 age: 7)
I do not think there is any thrill that can go through the human heart like that felt by the inventor as he sees some creation of the brain unfolding to success.
~ Nikola Tesla (born: 1856-07-10 died: 1943-01-07 at age: 86) 1896
We hope that Professor Langley will not put his substantial greatness as a scientist in further peril by continuing to waste his time, and the money involved, in further airship experiments. Life is short, and he is capable of services to humanity incomparably greater than can be expected to result from trying to fly…
~ New York Times (born: 1851 age: 160) 1903-12-10
As part of the conversion, computer specialists rewrote 1,500 programs; a process that traditionally requires some debugging.
~ USA Today referring to the Internal Revenue Service conversion to a new computer system.
Intelligence is the ability to avoid doing work, yet getting the work done.
~ Linus Benedict Torvalds (born: 1969-12-28 age: 42), creator of Linux
Software is like sex: It’s better when it’s free.
~ Linus Benedict Torvalds (born: 1969-12-28 age: 42), creator of Linux
There are only two industries that refer to their customers as users.
~ Edward Tufte (born: 1942 age: 69)
A computer would deserve to be called intelligent if it could deceive a human into believing that it was human.
~ Alan Turing (born: 1912-06-23 died: 1954-06-07 at age: 41)
In the time of Galileo it was argued that the texts,“And the sun stood still… and hasted not to go down about a whole day”Joshua 10:13 and “He laid the foundations of the earth, that it should not move at any time”Psalms 104:5 were an adequate refutation of the Copernican theory.
~ Alan Turing (born: 1912-06-23 died: 1954-06-07 at age: 41)
Machines take me by surprise with great frequency.
~ Alan Turing (born: 1912-06-23 died: 1954-06-07 at age: 41)
Programming is a skill best acquired by practice and example rather than from books.
~ Alan Turing (born: 1912-06-23 died: 1954-06-07 at age: 41)
We can only see a short distance ahead, but we can see plenty there that needs to be done.
~ Alan Turing (born: 1912-06-23 died: 1954-06-07 at age: 41)
I notice that you use plain, simple language, short words and brief sentences. That is the way to write English — it is the modern way and the best way. Stick to it; don’t let fluff and flowers and verbosity creep in. When you catch an adjective, kill it. No, I don’t mean utterly, but kill most of them — then the rest will be valuable. They weaken when they are close together. They give strength when they are wide apart. An adjective habit, or a wordy, diffuse, flowery habit, once fastened upon a person, is as hard to get rid of as any other vice.
~ Mark Twain (born: 1835-11-30 died: 1910-04-21 at age: 74)
Sometimes I wonder whether the world is being run by smart people who are putting us on or by imbeciles who really mean it.
~ Mark Twain (born: 1835-11-30 died: 1910-04-21 at age: 74) Whether Mark Twain actually said this is debatable.
I advocate that super programmers who can juggle vastly more complex balls than average guys can, should be banned, by management, from dragging the average crowd into system complexity zones where the whole team will start to drown.
~ Jan V.
More often, maintaining someone else’s code is like being thrown headlong into a big pile of slimy, smelly garbage.
~ Bill Venners
I think there is a world market for maybe five computers.
~ Thomas John Watson (born: 1874-02-17 died: 1956-06-19 at age: 82) , chairman of IBM 1943
Scientific advances are enabled by a technology advance that allows us to see what we have not been able to see before.
~ Lloyd Watts (born: 1961-10-02 age: 50)
If builders built buildings the way programmers write programs, then the first woodpecker that came along would destroy civilization.
~ Gerald Weinberg (born: 1933-10-27 age: 78) Weinberg’s Second Law
The computer programmer is a creator of universes for which he alone is the lawgiver. No playwright, no stage director, no emperor, however powerful, has ever exercised such absolute authority to arrange a stage or a field of battle and to command such unswervingly dutiful actors or troops.
~ Joseph Weizenbaum (born: 1923-01-08 died: 2008-03-05 at age: 85)
Any problem in computer science can be solved with another layer of indirection, but that usually will create another problem.
~ David John Wheeler (born: 1927-02-09 died: 2004-12-13 at age: 77)
Civilisation advances by extending the number of important operations which we can perform without thinking about them.
~ Alfred North Whitehead (born: 1861-02-15 died: 1947-12-30 at age: 86)
As soon as we started programming, we found to our surprise that it wasn’t as easy to get programs right as we had thought. Debugging had to be discovered. I can remember the exact instant when I realized that a large part of my life from then on was going to be spent in finding mistakes in my own programs.
~ Maurice Wilkes (born: 1913-06-13 age: 98) Maurice Wilkes discovers debugging 1949
But quality of work can be expected only through personal satisfaction, dedication and enjoyment. In our profession, precision and perfection are not a dispensable luxury, but a simple necessity.
~ Niklaus Wirth (born: 1934-02-15 age: 77)
Many people tend to look at programming styles and languages like religions: if you belong to one, you cannot belong to others. But this analogy is another fallacy.
~ Niklaus Wirth (born: 1934-02-15 age: 77)
Nevertheless, I consider OOP (Object Oriented Programming) as an aspect of programming in the large; that is, as an aspect that logically follows programming in the small and requires sound knowledge of procedural programming.
~ Niklaus Wirth (born: 1934-02-15 age: 77)
Usually its users discover sooner or later that their program does not deliver all the desired results, or worse, that the results requested were not the ones really needed.
~ Niklaus Wirth (born: 1934-02-15 age: 77)
Whereas Europeans generally pronounce my name the right way (“Nick-louse Veert”), Americans invariably mangle it into “Nickel’s Worth”. This is to say that Europeans call me by name, but Americans call me by value.
~ Niklaus Wirth (born: 1934-02-15 age: 77)This is play on words about the various ways languages can pass parameters, by name, by reference and by value. Java supports only pass by value.
Philosophy is a battle against the bewitchment of our intelligence by means of language.
~ Ludwig Wittgenstein (born: 1889-04-26 died: 1951-04-29 at age: 62)
Nothing has really happened until it has been recorded.
~ Virginia Woolf (born: 1882-01-25 died: 1941-03-28 at age: 59)
Never trust a computer you can’t throw out a window.
~ Steve Wozniak (born: 1950-08-11 age: 61)
No flying machine will ever fly from New York to Paris.
~ Orville Wright (born: 1871-08-19 died: 1948-10-30 at age: 77) 1908We see that same conservative pessimism in those crafting today’s computers and computer tools. They are overwhelmed by the details of producing even today’s solutions. You need young, over-confident people who don’t know too much to chart the course ahead. This is especially true of global warming where the current generation has largely given up hope of a green planet and sustainable human survival.
More computing sins are committed in the name of efficiency (without necessarily achieving it) than for any other single reason — including blind stupidity.
~ W. A. Wulf (born: 1939-12-08 age: 72)
![]()
~ xkcd
Without deviation from the norm, progress is not possible.
~ Frank Zappa (born: 1940-12-21 died: 1993-12-04 at age: 52)
|
|
You can get the freshest copy of this page from: | or possibly from your local J: drive (Java virtual drive/mindprod.com website mirror) |
| http://mindprod.com/quote/programming.html | J:\mindprod\quote\programming.html | |
![]() | ||
| Canadian Mind Products | ||
| mindprod.com IP:[65.110.21.43] | ||
| view | Your face IP:[38.107.179.214] | |
| Feedback | You are visitor number 11. | |