Wednesday, May 12, 2010

Solipsism Syndrome


[from Joel] I have three data points. Can someone add more data?

I did my first sabbatical at the Imperial College of London in the chemistry and chemical engineering department. The people I interacted with were all involved in optics as a tool for combustion research. They spent a lot of time sitting around talking to one another or waiting for the "tea lady" to arrive with goodies.

My second sabbatical was at a research institute of chemistry and physics in France. There was a lot of interaction between the researchers as we walked into each other's labs and asked questions or socialized. (A perhaps interesting aside here. The head of the laboratory was English so we observed the afternoon tea break. When he retired the "habitual" tea break of many years immediately died.)

By the time of my third sabbatical, I had switched from combustion to robotics. I spent my sabbatical at a French research institute where the team of about fifteen people experimented on a robot called Hilaire. They were mostly concerned with finding algorithms which would permit Hilaire to navigate in an unstructured environment. There seemed to be absolutely no interaction between members of the staff except for a formal once-a-week meeting. Each person would sit at their computer and type lines of code. I never witnessed any social or scientific interaction at the office.

One of my theories is that a sort of solipsism develops when working as a computer programmer or program designer. Physics or chemistry experiments require interaction with other people. Also, anyone can pop in and see what you're up to. In fact, one is seeking stimulation from others. In software experimentation people would have to be pretty nervy to look over your shoulder at the screen and start asking for explanations of code. I wonder what experiences you may have had in this vein either pro or con. Do you think programming breeds solipsism?

[added by Ira for people (like me) who need the definition. sol·ip·sism   /ˈsɒlɪpˌsɪzəm/ –noun 1. Philosophy . the theory that only the self exists, or can be proved to exist. 2. extreme preoccupation with and indulgence of one's feelings, desires, etc.; egoistic self-absorption. Origin: 1880–85; sol(i)-1 + L ips ( e ) self + -ism. http://dictionary.reference.com/browse/solipsism]

5 comments:

Ira Glickstein said...

Thanks for the new Topic that proves you are not guilty of solipsism.

I've never done chemistry or physics research so I can only speculate on your first two data points. Perhaps the difference you noted was simply due to the replacement of the "tea lady", who arrived at a given time at your first two locations, with vending machines available all the time at your last.

My first jobs in engineering had a guy or gal who would come around on schedule to sell donuts and coffee. That promoted socialization because we all had to have refreshments at the same time. Later, we generally went to the vending machines alone on our own schedules.

Also, over my four-decade career, the there was a shift from "desk farms" to four-person cubicles to private cubicles, which also cut down on socialization.

On your last data point, I've done "Independent Research and Development" projects in the area of advanced automation and artificial intelligence. I was generally the Principal Investigator and checked in on the three to six team members daily. We had meetings of the whole team or subsets every couple days, plus group demos for management and customers of the stuff we were working on.

There was one project where we had a very intense and quite competent programmer. She would sit in her office with the door closed nearly all the time. She made it clear she did not want visitors because any interruption would require a half hour or more for her to get back into what she was doing. So, perhaps, pure software work promotes solipsism as you discovered in your third data point.

Joel writes: "In software experimentation people would have to be pretty nervy to look over your shoulder at the screen and start asking for explanations of code."

True in much of my experience when the code was written by professional software engineers (I don't call them "programmers" anymore because my wife will punch me :^). On the other hand, when I and fellow system engineers wrote the code, we interacted quite collegially. Indeed on one project, we were going to use a "linked list" in a particular module, but neither of us knew how to code it. Fortunately, there were no professional software engineers around at the time to tell us how, so I came up with a totally different technique that turned out to revolutionize our algorithm and not only run fast on serial computers but also perfectly for massively parallel ones!

On large software projects, such as the ones on which my wife was the Lead Software Engineer, they overcame the software solipsism tendency by having formal design and code reviews where each software engineer had to provide documentation to all other team members and reviewers ahead of time. Then, each would present in detail the architecture of their program design, interfaces to other modules, and, as appropriate, actual code. My wife would not allow managers to attend these reviews - only "worker bees".

When she retired, after leading teams of up to 20 people, the dog and I were her only people, and we (particularly me) got the full benefit of her leadership skills. Oy!

Ira Glickstein

Stu Denenberg said...

The behaviors that Joel and Ira describe strike me as more antisocial than solipsistic. As a teenager and into early adulthood, I remember struggling with the awful solipsism that I might be the creator of reality and that everyone and everything outside of me was therefore not really real but merely a play I was "writing". At some point however, I realized that there was no way for me to prove this theory either true or false and so I chose not to believe in solipsism because it just made me unhappy (given two equally likely opposing theories, why not pick the one that makes you feel happiest?). More recently, I conceived the following rebuttal of solipsism: How could I have created a world where Evil exists? And if it was me doing it unconsciously, then it might as well have been someone else...

In the 70s there was a book, "The Psychology of Computer Programming" which contained an anecdote about a programming supervisor that was worried about all of the time his wards were spending gabbing at the canteen (soda, candy machines, etc ) so he got rid of the machines only to find that efficiency (as measured in number of lines of code produced per day) had dropped instead of increasing as he had hoped! Turns out the canteen was a place where a very good form of social interaction was taking place amongst the worker bees. In addition to the ball scores and the TV shows, they were discussing and helping each other other solve problems directly related to their work; e.g. " Do any of youse guys know how to implement a linked list?" or "have you ever seen a bug like this before?" Long story short, the machines were replaced and productivity rose back to previous levels.

Finally, let me recount another episode that involved yours truly.
After a talk I attended by the (programming) world famous Edsger Djikstra I asked him his opinion on a question I had been pursuing; i.e, "does programming promote problem-solving skills or is it just that good problem solvers tend to be attracted to programming?" I had hoped he would choose the former as I was offering a programming course and had listed just that as an educational outcome but, alas, he opted for the latter. Today I think both can be true --- they do not have to mutually exclude one another. And so, getting back to the original question Joel posed, I think that while it may be true that many programmers have anti-social tendencies --- especially when they are on a creative roll, it is probably equally true that Nerds are drawn to programming precisely because it allows them to be weird and antisocial in a socially acceptable (they get recompensed handsomely) way.

joel said...

Stu said: Turns out the canteen was a place where a very good form of social interaction was taking place amongst the worker bees. In addition to the ball scores and the TV shows, they were discussing and helping each other other solve problems directly related to their work.

Joel responds: Unfortunately, the French robotics lab where I worked didn't have a snack area or snack machine. The French don't snack as far as I can tell. (I suppose it might interfere with their very serious consumption at main meals. Wait, I take that back. There is the "heure de goutté at 4PM, but they didn't observe that at the robotics lab where I worked.)

Another thing that might put a crimp in French socializing is the fact that they don't generally use the rest room. Using the rest room frequently is so much an American thing that I heard a tour guide remark to a international group of scientists that "we are stopping for a bathroom break for our American colleagues." Sure enough, only the two Americans used the facilities and everyone laughed. I wish an anatomist would do an study to determine if there's a national difference in bladder size. I've seen children in France refused permission to use the rest room in order to increase their ability to "hold it." Striking up a conversation with people from another department is common while washing up in America. If the flapping of butterfly wings in China can cause a thunderstorm in the U.S., surely a conversation in at a restroom sink can have major implications in solving engineering problems. P.S. I hate that butterfly nonsense that has entered the common man's mythology of science. :^)

Stu Denenberg said...

Joel's comment, ""we are stopping for a bathroom break for our American colleagues." "made me laugh --- it reminded me of an old SNL skit where the premise was a club of guys who were following a sort of 12-step regime to conquer the habit of peeing. As you might expect the size of the group kept dwindling as "holding it" using sheer will power lost out to biology.

I would like to amend my comments that programmers embody both social and antisocial behaviors and that would be that since programmers are human (at last count) they can and will exhibit paradoxical behavior that unconscious objects like rocks cannot. Thus it may also be true that while both are true, at the same time, neither may be true. As Pascal maintained, while reason can be used effectively to explain the behaviors of the purely physical universe, it has severe limitations when applied to people and, unfortunately, we tend to forget that.

Ira Glickstein said...

Joel and Stu: I don't know how we got from solipsism to bodily functions, but I guess that is where everything comes out in the end.

Nine years ago Vi and I went on an 8-day whitewater raft trip down the Grand Canyon. Prior to boarding our 15-passenger plus three crew raft the leader told us to use the bathroom and "TRAIN YOUR COLON!".

All solid waste had to be carried out of the Canyon. We could urinate in the water ("women upstream and men downstream"), but defication had to be done in a special bucket device, one of which would be set up in a tent for people who needed privacy and the other in a clearing for those who were less particular.

He made it clear that our only chance to deficate would be in the morning before we boarded the raft, and in the late afternoon and evening, when we landed the raft on a beach for overnight camping. We would, he said, make a lunch stop and a couple of sightseeing stops each day, where urination would be allowed but the defication facilities would not be deployed unless someone really, really needed it.

Surprisingly, his "TRAIN YOUR COLON!" worked - and nearly all of us were Americans.

Ira Glickstein