Feynman's inbox

Here is Richard Feynman writing on the ease of criticizing theories, and the difficulty of forming them:

The problem is not just to say something might be wrong, but to replace it by something — and that is not so easy. As soon as any really definite idea is substituted it becomes almost immediately apparent that it does not work.

The second difficulty is that there is an infinite number of possibilities of these simple types. It is something like this. You are sitting working very hard, you have worked for a long time trying to open a safe. Then some Joe comes along who knows nothing about what you are doing, except that you are trying to open the safe. He says ‘Why don’t you try the combination 10:20:30?’ Because you are busy, you have tried a lot of things, maybe you have already tried 10:20:30. Maybe you know already that the middle number is 32 not 20. Maybe you know as a matter of fact that it is a five digit combination… So please do not send me any letters trying to tell me how the thing is going to work. I read them — I always read them to make sure that I have not already thought of what is suggested — but it takes too long to answer them, because they are usually in the class ‘try 10:20:30’.

(“Seeking New Laws”, page 161 in The Character of Physical Law.)

As a sometime designer (and longtime critic) of widely used computer systems, I have seen similar difficulties appear when anyone undertakes to publicly design a piece of software that may be used by many thousands of customers. (I have been on both sides of the fence, of course.) The design possibilities are endless, but the deep design problems are usually hidden beneath a mass of superfluous detail.

The sheer numbers can be daunting. Even if only one customer out of a thousand feels a need to express a passionately held idea, it can take a long time to read all the mail. And it is a fact of life that many of those strong suggestions are only weakly supported by reason or evidence. Opinions are plentiful, but substantive research is time-consuming, and hence rare. A related phenomenon commonly seen with software is bike-shedding, where interlocutors focus on surface details like naming and syntax… or (come to think of it) like lock combinations.

On the other hand, software is easier than quantum physics, and the population of people able to make substantial suggestions about software systems is several orders of magnitude bigger than Feynman’s circle of colleagues. My own work would be poorer without contributions — sometimes unsolicited, sometimes passionately urged on me — from the open source community. If a Nobel prize winner thought it was worthwhile to read his mail on the faint chance of learning a good idea, I am certainly not going to throw mine away.

(In case anyone is still reading this, and is wondering what provoked a meditation on the quality of one’s inbox contents, I’ll simply point out that the volume has been very high, for many months, on the Lambda-Dev mailing list, where the next version of the Java language is being discussed. Bravo to those of my colleagues who are surfing that wave.)

I started this note thinking there was an odd parallel between the life of the physicist and that of a software designer. On second thought, I’ll bet that is the story for anybody who works in public on something requiring special training. (And that would be pretty much anything worth doing.) In any case, Feynman saw it clearly and said it well.


Glad to see you are at a point in 292 that you have time to think

I was thinking the same thoughts as the last minute decision to rename to java.lang.invoke

became an important issue

Posted by guest on June 25, 2011 at 02:53 PM PDT #

To maintain their sanity, architects of public works projects seem to have moved the bar a bit further out: they take designs to a reasonable level of detail, present the several alternatives, and steadfastly refuse to consider suggestions too far outside those proposals.

If software has a larger circle of bikeshedders than quantum physics, then the architects building (very large) bikesheds must face an overwhelming mob of eager suggestions.

Posted by Denton Gentry on June 26, 2011 at 11:14 PM PDT #

I´ll bite and engage into a healthy dose of "Why don´t you try 10:20:30":

You describe yourself as "Once Sun and present Oracle engineer."

Why Oracle had to discard and dump everything associated with the Sun brand?. I was once thaught that "inmaterial assets" like patents and brand names often were worth a fortune. At the time of the Sun acquisition by Oracle, it was said that Sun would become "a subsidiary of Oracle".

Yet, the first thing they did was engage into brand turf wars and proceeded to rubber-stamp Oracle over everything that reminded of the Sun brand. Why?. Wasn´t the Sun corporate identity an asset by itself?

Wouldn´t it have saved Oracle a lot of hasle to just continue with the Sun brand for Sun products?.


Posted by Fernando Cassia on June 27, 2011 at 06:27 AM PDT #

Post a Comment:
  • HTML Syntax: NOT allowed

John R. Rose

Java maven, HotSpot developer, Mac user, Scheme refugee.

Once Sun and present Oracle engineer.


« July 2016