Sign up ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free.

What is the origin (reference, time, author) of the following quote? For instance, is it from a book?

Programmers combine like resistors in parallel.

It may be by Gerry Jay Sussman, and I can not rule out the quote comes in several variations.

Optionally, secondary question: what does this quote mean?

share|improve this question

closed as off topic by Mark Trapp Dec 5 '11 at 19:16

Questions on Programmers Stack Exchange are expected to relate to software development within the scope defined by the community. Consider editing the question or leaving comments for improvement if you believe the question can be reworded to fit within the scope. Read more about reopening questions here.If this question can be reworded to fit the rules in the help center, please edit the question.

1 Answer 1

(Massive edit to indicate ChrisF's alternate reading and highlight why that sort of thing makes metaphors a bit rubbish).

No idea where it came from but in terms of what it could mean:

Resistors in series (that is one after the other) essentially combine together as the sum of their values. So one 100 ohm resistor and one 200 ohm resistor in series are the same as one 300 ohm resistor.

In parallel it's different - they share the burden and the total is actually less than any of the individual values. So if you have 100 ohm and 200 ohm resistors in parallel, their equivalent value is 66.66 ohms (1/R = 1/R1 + 1/R2).

So as to what that means in terms of programmers, there are two ways to think of it:

1) Resistance is an indicator of resistance to work getting done (that is the lower the resistance the more work gets done):

If you have one good programmer and one bad programmer, even if the bad programmer only does a tiny bit of useful work, that's a bit of work the good programmer doesn't have to do, hence overall they are more effective together than he would be on his own.

Obviously there are all sorts of issues that can be raised with this - that bad programmers can actually be negatively effective, that if you follow this through to it's (il)logical conclusion means that throwing people at projects makes them faster and so on.

2) Resistance is an metaphor for productivity (that is the higher the resistance the better):

If you read it this way then every extra developer actually reduces the total productivity below that of the level of the weakest member, essentially saying that they're all slowed down by the required co-ordination and communication.

Again, lots of issues (primarily that we've all seen teams work) but in it's own way potentially a fair point.

So the overall point would be that it's a bit of a rubbish metaphor as it isn't clear and has two possible readings, with completely opposite meanings. Welcome to why metaphors, while useful, are often evil.

(And for the record that's the first time I've used my degree - Electronic Engineering - since graduating over 16 years ago. This is year 1, term 1 stuff and I still needed Google to nudge my memory and have probably still got it wrong).

share|improve this answer
haha me too. I was googling for the ohm law ;) +1 – user2567 Nov 12 '10 at 11:07
I think the point is that combining programmers doesn't always increase their effectiveness (cf resistors in series) but can decrease their effectiveness (cf resistors in parallel). – ChrisF Nov 12 '10 at 11:15
@ChrisF - that's the problem with metaphors, they're not always clear. It depends whether you see resistance as a metaphor for, well, resistance (to getting work done) or as you seem to see it as a metaphor for productivity. Given that that actually reverses the meaning it's actually a shit metaphor. – Jon Hopkins Nov 12 '10 at 11:18
Much clearer. I was reading the quote as a metaphor for why adding more programmers to a project won't get it completed any quicker and may actually slow it down. – ChrisF Nov 12 '10 at 11:57

Not the answer you're looking for? Browse other questions tagged or ask your own question.