Hacker News new | past | comments | ask | show | jobs | submit login
Richard Feynman and The Connection Machine (longnow.org)
161 points by fogus on Jan 7, 2011 | hide | past | favorite | 46 comments



I'm always amazed at the breadth and depth of Feynman's genius. My favorite story of Feynman is his calculation of the size of the first nuclear explosion and then driving to just a few miles outside the blast radius (much closer than his colleagues were willing to watch from). That's a level of mental confidence that I can't even begin to imagine possessing.

Surely You're Joking is a great read - one of those "drop what you're doing and read it now" kinds of books.


Not only did he drive there, but he watched with no more protection than the glass of the car windshield.


...and ended up with about 18 ultra rare forms of cancer


Just two, according to 'kipedia.


My favorite story about estimating yields of nuclear weapons is the confetti method. I recollect it being attributed both to von Neumann and Fermi. I am not sure who the actual person was.

The way it worked was at the sign of the flash he released torn shreds of paper and noted how far they were dispersed by the shock wave that followed. This mental calculation turned up to be quite accurate.


I had read this before but went ahead and read it again anyway and was again struck by the practicality of Feynman's genius.

However, as always, every genius has their undesirable part:

"The charming side of Richard helped people forgive him for his uncharming characteristics. For example, in many ways Richard was a sexist. Whenever it came time for his daily bowl of soup he would look around for the nearest "girl" and ask if she would fetch it to him. It did not matter if she was the cook, an engineer, or the president of the company. I once asked a female engineer who had just been a victim of this if it bothered her. "Yes, it really annoys me," she said. "On the other hand, he is the only one who ever explained quantum mechanics to me as if I could understand it." That was the essence of Richard's charm."

When I was reading Feynman's biography (Surely You're Joking, Mr. Feynman!) one thing that really bothered me was the big difference in his approach to his son and daughter. He seemed to relish how, when his young boy got his interesting games, but sounded quite impatient with his daughter, saying she only wanted the same story repeated to her.


I had a different reaction when I'd read Surely You're Joking. I thought Feynman had simply observed the de facto difference between his two children; that one happened to be a boy and the other a girl was incidental to the story. (As a mother, I can attest to the fact that it's quite impossible to get a kid interested in something they are not into to start with).

In general, I am a little apprehensive of Feynman's "sexist pig" rep. His younger sister became a physicist largely through his encouragement which tells me that his views on women in science were rather progressive, even by today's standards. He is also known for having sided with a female professor in a sex discrimination suit at Caltech - again, very ahead of his time.

I also recall that at least some of that rep came from his use of stories that were presumably sexist, such as stupid driver (woman), smart cop (man). But according to Feynman, it was his critics, not him, who assumed that the smart cop was male, so the egg was on them.

Finally, a lot of people conflate Feynman's womanizing with sexism, and I think the guy should get a break for trying to find solace in as many women's arms as possible after watching his wife slowly die from cancer.


You're right, his children had de facto differences, and that's OK. What annoyed me was his exasperated tone when he mentioned that his daughter liked having the same story read.

As for womanizing, again it shocked that after so little time passed after her wife's death, he jumps into the scene (and with a vengeance).

But maybe, I'm reading too much into this. Here's what Michelle Feynman (daughter) has to say about what kinf of father Feynman was (http://www.basicfeynman.com/qa.html):

"Fantastic. Fun, supportive, sweet, silly. He went to great lengths to entertain us. When I was young, the nightly ritual included him scouring the house for the correct stuffed animal, with me rejecting each and every offering until I had the desired one, or until he had made me laugh with his efforts. I'm not sure which was more important. He also made for an excellent radio. I would sit on his lap and turn his nose, and he would make up songs from different radio stations."


As for womanizing, again it shocked that after so little time passed after her wife's death, he jumps into the scene (and with a vengeance).

It's not like she died suddenly. They had ample time to prepare for her death, and by the time she was gone he was already prepared to move on. He likely went months with the sadness of watching his love leave him slowly, and at the same time he was not satisfying his sexual desires. I can certainly forgive the man for "jumping into the scene" when he no longer had an obligation to his late wife.


"However, as always, every genius has their undesirable part"

This is the same reason that people are obsessed with celebrities' private lives - you're not famous/genius but you can at least tell yourself it's ok because Charlie Sheen does whores/Tiger Woods has two dozen mistresses/Feynman is a misogynist and women just happen to like him anyway, a lot and while naked (note the trend here).

Why does it matter and why do you care?


It's almost like Feynman didn't care what other people thought of him.

I'm a lot like him in that respect: I, too, don't care what other people think of Feynman.


> As for womanizing, again it shocked that after so little time passed after her wife's death, he jumps into the scene (and with a vengeance).

It shocked WHO? Who are you (or I) to judge another persons personal life in matters such as that?

Actually, that one could judge someone in such a way, shocks ME.


She actually died of tuberculosis, not cancer.


Every human being has character flaws. Whenever we lionize anyone for their accomplishments, we do so by forgiving (or being ignorant of) the unsavory parts of their character.

Abraham Lincoln, for instance, was pretty racist. He liked minstrel shows and found deeply racist jokes hilarious. Judged in the context of his time, of course, he was very progressive, and despite those personal characteristics he remains one of the most important proponents of civil rights in history. We can recognize that without having to parenthesize (but he told racist jokes).


Perhaps, but it couldn't have been too bad - she's the one who became a physicist.


No, you're thinking of Richard's sister Joan, not his daughter Michelle. Here's Michelle's blurb from http://tedxcaltech.com/speakers/michelle-feynman:

  Michelle Feynman is the daughter of Richard Feynman. A 
  graduate of Art Center College of Design, Michelle is a 
  freelance photographer and spends most of her days taking 
  pictures. She is perhaps best known as the editor of 
  Perfectly Reasonable Deviations from the Beaten Track: The 
  Letters of Richard P. Feynman, a collection of letters 
  to and from her father.The book includes an introduction by 
  Michelle in which she describes what it was like to grow 
  up as the daughter of one of the world's best-known 
  physicists. Michelle has also gathered a compilation of her 
  father's artwork in a book entitled The Art of Richard P. 
  Feynman: Images by a Curious Character.


Whups, my mistake. Although your entry seems to still confirm the notion that Feynman may not have been such a horrible father to his daughter.


Which chapter was that? I finished reading it about a week ago and don't remember that being in there.


Em, though about the possibility that he was not sexist as "condescending" (women are inferior, and they should fetch my soup), but sexist => interested in the ladies. I, mean, this is a man that was doing some of his work in a strip joint! Maybe this was one of his ways of approaching them.

(Now, some people consider the two types of "sexist" as the same. Those people are disturbed).


"By the end of that summer of 1983, Richard had completed his analysis of the behavior of the router, and much to our surprise and amusement, he presented his answer in the form of a set of partial differential equations. To a physicist this may seem natural, but to a computer designer, treating a set of boolean circuits as a continuous, differentiable system is a bit strange. Feynman's router equations were in terms of variables representing continuous quantities such as "the average number of 1 bits in a message address." I was much more accustomed to seeing analysis in terms of inductive proof and case analysis than taking the derivative of "the number of 1's" with respect to time."

Whoa.


I would love to see his analysis of the system. I doubt it's been preserved though.


If anyone has this, please contact me.


A good read every time. This part stood out:

"In retrospect I realize that in almost everything that we worked on together, we were both amateurs. In digital physics, neural networks, even parallel computing, we never really knew what we were doing. But the things that we studied were so new that no one else knew exactly what they were doing either. It was amateurs who made the progress."


Interdisciplinary work is always that: you're contributing to another discipline - being an amateur - because you can bring the perspective of another discipline to it. You're bringing along new questions, and your answers don't need to be better than 30+ years of people trying desperately to find better and better answers to the same questions.


If everyone is an amateur, isn't the last sentence a tautology?


I don't think 'not knowing exactly what you're doing' implies 'being an amateur'.


This is my favorite line:

"That sounds like a bunch of baloney," he said. "Give me something real to do."

...advice for the ages!


Here's another favorite story from thinking machines: The Rise and Fall of Thinking Machines

http://www.inc.com/magazine/19950915/2622.html

For what it's worth, last I heard Sheryl Handler was running Ab Initio. I wonder if she's really the nutcase the article makes her out to be.


I thought this was an especially interesting point:

"Every great man that I have known has had a certain time and place in their life that they use as a reference point; a time when things worked as they were supposed to and great things were accomplished."


Me too. I instantly knew what that time period was for me.

This concept immediately reminded me of an excerpt from the outstanding book "Rules for Aging" which talks about this and its potential dark side:

"A long happy life last five minutes. One would think that this rule would go without stating, but many people actually believe that a long life of uninterrupted happiness is a real possibility. And they act on this belief! They change families, careers, the structure of their faces, countries, everything, for no more substantial reason than they recall five minutes of uninterrupted happiness in the past, and now they wish to re-create the moment in perpetuity. They even convince themselves that the five-minute period they recall was really five years and giddily substitute the exception (bliss) for the rule (confusion, doubt, misery, fear, confusion, and confusion). Happiness is wonderful, but if you have had more than five consecutive minutes of it, it means you weren't thinking."

That book isn't really about aging, it's more about practical down-to-earth wisdom. I read it for the first time when I was in my early 20's, and it's very amusing and pure gold.


"Richard made people feel like a child does, when a grown-up first treats him as an adult. He was never afraid of telling the truth, and however foolish your question was, he never made you feel like a fool."

I don't know much about Feynman but the combination of his brilliance and his popularity has always intrigued me. Surely we can assimilate some of Feynman's charm.


I've spent a little bit of time with Danny. He's astonishingly smart. So to hear him talk about someone else like that makes me jealous I couldn't have been around.


I cant seem to get to the article but I think I know which article this is. I'm a huge fan.

I especially like how the machine was initially designed so that it required 4 chips per board. But when they were about to start manufacturing the boards, they realized that present technology couldnt fit 4 chips per board.

Feynman it seems modeled the system via set of partial differential equations and then said that he had proved that 3 chips per board were enough and modeled how the system would work even in this configuration.

No one really understood what he had done but they trusted him, created the boards and it turned out he was right.

This story I believe was in an Scientific American a long time ago.


Pretty good memory. The article says the numbers are 7 and 5, not 4 and 3, but the idea is the same. I wonder how the conversations went when the others initially overruled Feynman's recommendation and then, months later, were forced to use it and admit he was correct all along.


This story never gets too old to re-read.


I do wonder if any of the parallel features of their Lisp will ever migrate into newer Lisp / Scheme implementations.


StarLisp is basically Common Lisp with parallel-map and parallel-reduce and a special vector data type for them. You can do data-parallel operations over arrays trivially, but it's not clear what array chunk size tradeoff you need for a given problem on today's small core count machines. It might make sense to bring the approach back when there's 100-core machines around; that would basically be a CM-5 on a chip.

In the meantime there's a StarLisp simulator you can play around with: http://sourceforge.net/projects/starsim/

When it comes to data parallelism, StarLisp's successor Paralations (http://www.mactech.com/articles/mactech/Vol.08/08.07/Paralat...) is much more interesting because it deals explicitly with locality. Paralations' successor, NESL (http://www.cs.cmu.edu/~scandal/nesl.html) is implemented on top of Common Lisp, but it's a functional language with ugly syntax.

It would make a lot of sense to have something like StarLisp or APL for CUDA right now. Trying to do data parallelism in C is about the most brain-damaged idea ever. I don't know if anyone is working or interested in that, though.

Overall, I think the MultiLisp (futures) approach is a bigger win for general-purpose parallel programming than StarLisp data parallelism. Doing everything with data-parallel algorithms is hard - you're doing everything with array programming like in APL, but now you need to come up with clever ways to parallelize everything too. But the algorithms themselves are beautiful (read Hillis and Steele's Data Parallel Algorithms, my favorite algorithms paper: http://docs.google.com/viewer?a=v&q=cache:efZTS1nDfBsJ:c...)


> It would make a lot of sense to have something like StarLisp or APL for CUDA right now. Trying to do data parallelism in C is about the most brain-damaged idea ever. I don't know if anyone is working or interested in that, though.

You may well be right, but I challenge you to prove it. I myself am very interested in whether this would work. I have spent many sleepless nights programming GPU algorithms, and wondered if ideas from other programming languages and paradigms (especially functional programming) could be applied to make it easier and more elegant.

The nested data-parallelism approach does look promising on paper, and many people are well aware of the theoretical possibility of this working on GPUs (including people at Nvidia itself), but so far nobody succeeded to make it practical.

So, doing data parallelism in CUDA may be brain-damaged, but the flexibility and performance it delivers is mind-blowing. If you can achieve something comparable using a higher-level functional approach, I will be among your first users, and I'll tell everyone I know.

MultiLisp (AFAIK) is traditional task-parallelism rather than data-parallelism, and would not work well on a GPU.


I'm not talking about data parallelism being bad, but C being a bad data parallel language.


Of course... read my reply again please.

I am not disagreeing with you, I am saying that I would love to see a better data-parallel language than C (or CUDA to be precise), but it does not exist right now (at least not a practical one that would run on a real GPU with reasonable performance and allow non-trivial nested and hierarchical algorithms).


If I remember correctly NESL programs are compiled into vcode a special bytecode that handled vector instructions particularly well. If vcode is ported/specialized to the commodity multicore machines and SSE instruction set, one could profitably run NESL program on contemporary machines. I do not know if there is any such ongoing initiative.

It might be the case that C source for vcode is still available so with a good optimizing compiler one could do the same. It wont quite be the same as a hand optimized assembly implementation of vcode. But perhaps still a satisfactory implementation.


Are any of you aware of more information on the "parallel version of Basic" mentioned?


My comment should really be an Ask HN. But is it conceivable to build a CM-5 class computer on FPGA boards ? Any idea how much that would cost if it was possible ?


Late CM-5 was 64-node MIPS connected through hypercube or fat tree. I think you can fit several MIPSes into one high-class FPGA - it looks like 4 would fit nicely into Virtex 5 TXT series, not so sure about more.

I think that you will need custom boards for interconnection.

So it will be some costly project.

Plasma, a simple MIPS-I variant: http://opencores.org/project,plasma


Thanks and upvoted for the reply and the link. Did not expect my comment to picked up, given I joined so late in the thread. In terms of raw FLOPS I think one can comfortably top the CM-5 machines with current commodity hardware. But it would have been pretty cool to have a personal CM-5 to play with.


yes you all are right and even i would like to revisit this




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: