Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I'm no XP fan, but this comment is ignorant. It's entirely possible for two people to concentrate together on a hard problem, and when it works well you get a "two heads are better than one" effect. It matters a lot how big the codebase is on any software project (and XP is well aware of this). Collective code ownership is advocated for a number of good reasons, such as that it mitigates risk and increases quality (think open source). The vast majority of "large groups of average programmers" are not doing XP and would hate the idea of it just as much as you do, and for some of the same reasons. Plenty of XP projects have above-average programmers. (Edit: Oh, and by the way, when I was paying attention to this stuff the corporate types were the source of greatest resistance to XP, while most of the people advocating it were technical. So it's a little rich to hear XP described as a corporate conspiracy to impose a drone state on creative programmers. Perhaps it's changed since then.)

XP provokes a lot of one-sided emotional reactions from people, some in favor, most against. (I'd include the OP in this.) In fact, I've noticed that some of the most cultish XP people turn out to have been the ones who had knee-jerk negative reactions at first. Once they decide they don't want to sit in a room by themselves all day after all they flip one bit to the other and become evangelists of the opposite. The irony is that much of what they say both pre- and post-koolaid is actually true. But it gets spoiled by rigidity.



But you don't need compulsory socialization to do that! All you need is a colleagues who you talk to from time to time. What if the person who knows exactly how to do what you want to do is someone elses XP buddy? Now you have two people stalled instead of just one.

There is ample evidence that "ownership" of code results in better quality and a more motivated workforce. People like seeing a feature from inception to completion. So long as basic conventions are adhered to, there's no need for anyone to touch anyone elses code except in a genuine emergency.

Can you point to any open source project that is actually collectively owned? I think not, everything actually has an owner who gets to say who gets to commit what...


> Can you point to any open source project that is actually collectively owned?

Collective ownership - maybe more like republican ownership - see the code_swarm videos - only a cluster of people commit.

Successful open source projects are led by very strong leaders: (Linux) Torvalds, (Ruby on Rails) DHH, (Gnome/Mono) De Icaza. Eclipse is questionable - it's more like run by a board of directors, with a large (mostly IBM) programmer workforce.

> But you don't need compulsory socialization to do that!

Agreed. We got past the teamwork learning curve and we pair when we have to get things done fast/fix a problem. We usually don't pair otherwise, unless you count long-running IM conversation threads as pairing.

> XP provokes a lot of one-sided emotional reactions from people, some in favor, most against.

As for emotional reaction, I still get a heebie-jeebie hokey feeling when someone says "I'll drive" [but only in reference to pair programming].

As an aside, pair programming does not work in a dom-sub relationship (especially when the sub is passive and doesn't want to code) - the dom will take over the coding.


I'm certainly not saying that XP and open source are the same model, but rather that one thing they have in common is improved code quality ("given enough eyeballs..."). Are you aware that pretty much the only definitively reproduced finding in the literature about software engineering is that code reviews and inspections reduce bugs? The trouble is that if you do them after the fact, they're expensive. Prohibitively expensive, in fact, for commercial projects, so nobody does them. Plus they degenerate into boring pro forma meetings. XP's answer to this is rather elegant and if anybody knows a better one I'd sure like to hear it.

"Collective code ownership" sounds like everybody's going to be forced onto a collective farm and made to slave in the fields and then sent to barracks where they each get a potato for dinner and all go to bed at the same time, and the government raises your children. So I'm not surprised you think that it means your code will be seized by the state and you will never be allowed to "see a feature from inception to completion". Some of XP's terminology and dogmatism kind of foster these reactions. I don't like it either. But your objections don't really have anything to do with how stuff works in practice.

How like the software industry that we end up in a binary argument about whether "solitary" or "collective" programming is better. Just because we work with data that is either 0 or 1 doesn't mean that we have to be that way.




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

Search: