Malcolm Gladwell, Transactive Memory, And Pair Programming

Posted May 27, 2008 at 2:12 PM

Tags: Work

Thanks to a recommendation by Clark Valberg, I recently read The Tipping Point: How Little Things Can Make a Big Difference by Malcolm Gladwell. It was a good read and I like Gladwell's somewhat meandering story telling style. One thing that he mentioned really caught my attention - Transactive Memory. In the book he explains that when two people are in a relationship, they develop a subconscious system as to which person is better at learning and storing different types of information. It is then up to that person to remember such data and to recall it when asked. Because this system is so effective, an intimate couple has much better recall abilities than two strangers. This seems logical when it is pointed out, but I think it not something that we generally think about.

After hearing about this Transactive Memory, it got me thinking about Pair Programming. Now, two people programming together hardly represent an intimate couple, but it has been demonstrated that couples that have been together a long time do not out perform couples that have been together for only a short while; the length of the relationship does not seem to weight in heavily on the ability to utilize this "shared memory" system. As such, I wonder if this is something that would apply to pair programmers? I know that when I tried pair programming with Peter Bell, I felt that we brought slightly different and complimentary skills to the table. But, that is an initial contribution. I wonder if, over time, if you were to pair program throughout the development life cycle, would development become even more efficient as you built up the Transactive Memory system between you? I can only believe that this does, in fact, happen and that pair programming with one person over time is more effective than pair programming in general.

Anyway, just some food for though.

Post Comment  |  Ask Ben  |  Permalink  |  Print Page




Reader Comments

May 27, 2008 at 8:57 PM // reply »
2 Comments

Just stumbled upon your blog through the jquery post, of a year ago.
Looking at your latest posts, I really enjoyed this one, on transitive memory.
It would be interesting to go a few steps further, and finding out how we can find out if some matches have better transitive memory than others, or, if a certain setup would help making teams more effective, and happier...
Certainly something I will work-through my day of work today.
Thanks !


May 27, 2008 at 9:02 PM // reply »
2 Comments

Just realizing I wrote transitive instead of transactive. Although, we could also have a post on transitive memory in IT teams!
http://books.nap.edu/openbook.php?record_id=12023&page=29


May 28, 2008 at 7:30 AM // reply »
1 Comments

That's a coincidence - I just finished reading The Tipping Point last night (I also highly recommend it). When I read about "transactive memory" it also got me thinking about pair programming and (specialisation within teams).

While it makes total sense it kind of goes against my natural desire to know everything, but I guess that's just ego!


May 28, 2008 at 8:55 AM // reply »
6,516 Comments

@James,

I know what you mean about it going against your natural desire to know everything :) I suffer from a bit of that myself. But remember, this is not a conscious effort; furthermore, this ability has only been demonstrated when pairs of people are allowed to remember things in a natural way; meaning, you cannot force one person to handle some info and another person to handle different info. The memory allocation must just happen naturally.

So, as much as you want to know everything, I don't think that interferes with this process as you would not be forced to know or not know stuff.


Oct 28, 2009 at 6:38 PM // reply »
1 Comments

I really appreciate the tansactive memory article as well, as it struck a chord with me. Gladwell does a good job of interpreting research in a story for the lay person. I don't always agree with his interpretations, but he does a fairly good job with his homework. Sometimes he does well explaining things scientists would praise, and I think transactive memory is one of them.

I've been a software engineer (programmer, analysts, developer, ...) for nearly 30 years, and over half of my career was as a consultant (36 orgs). But early in my career I became interested in the human side and is why I naturally joined the Agile movement. But wanting more, I ended up in graduate school in psychology of all fields.

My point is I have applied the concept of transactive memory and understand it, and I agree it certainly applies to pair programming where a relationship between pair partners can develop (some companies rotate partners). However, and here is where it may be interesting to read my post, there are skills associated with being able to pair programming that transactive memory may hint at. The more you do it the quicker you're able to establish efficacy regarding the role in the pair. It is a quite novel social system actually.

There is indeed a meta-system "iceberg" of social perception, cognition, and memory (of which we are usually not aware) that the theory of transactive memory reveals a tip of. In reality, the field of applied psychology is in its infancy in many regards, and this meta-system is one of them. Perhaps further research will reveal more application of fundamental findings - or proffer new ones (see: http://simula.no/research/engineering)


Oct 31, 2009 at 2:04 PM // reply »
6,516 Comments

@Mark,

It's definitely a fascinating field. I have not really tried pair programming since this post; but, it is something that I would love to play around with a bit more.


Post Comment  |  Ask Ben

Recent Blog Comments
Nov 21, 2009 at 11:03 AM
Groovy Operator Overloading Does Not Work In The ColdFusion Context
Hi Ben, Thanks for this informative post. Now I am reading ur old posts too ... read »
Nov 21, 2009 at 10:56 AM
HostMySite.com Has The Best ColdFusion Hosting
@Mehul, Yes very nice people, however several downtimes per day which was not acceptable. Hence we had to move out. I am glad you are having good luck with them so far. ... read »
Nov 20, 2009 at 11:32 PM
Five Months Without Hungarian Notation And I'm Loving It
I've used headless camel case for years for not only ColdFusion variables, but also SQL tables and fields... pretty much everything involving code. I also subscribe to the "don't abbreviate and clea ... read »
Nov 20, 2009 at 11:00 PM
Five Months Without Hungarian Notation And I'm Loving It
@Marcel, Yeah, I always err on the side of longer but more readable variable names. As for the camel casing of CF methods and the headless camel casing of custom items, I get around this by always ... read »
Nov 20, 2009 at 10:56 PM
Five Months Without Hungarian Notation And I'm Loving It
I use the following and love it: my.namespace.MyComponents.functionMethodsOrUDF() CONSTANT_VALUES_OR_PROPERTIES One thing I always try is to CamelCaseBuiltInColdFusionFunctions() so others can tell ... read »
Nov 20, 2009 at 5:38 PM
Learning ColdFusion 8: CFImage Part I - Reading And Writing Images
Hi Ben, Great article. I've been looking around to see if ColdFusion image engine can programatically create the following "wrap around" effect: http://www.creativepro.com/article/photoshop-s-she ... read »
Nov 20, 2009 at 5:35 PM
Maintaining ColdFusion Sessions Across SMS Text Message Requests Without Cookies
@Dave: I talked to Gert he suggested: <cfhttp method="get" url="http://{some cf website}" result="stuff" addtoken="yes" /> Note the addition of cfhttp attribute addtoken. That should persist y ... read »