Dear lazyweb,
There is much outsourcing of software development, often to teams in places far flung around the world. However, my impression that is that this is usually wholesale outsourcing - i.e. entire projects or subprojects are specified and assigned to the the geographically remote team. Am I right in think that it is rare for organisations to attempt split site development of the same codebase? Does the lazyweb know of any examples of successful split site development with geographically and temporarlly remote teams? If so, what are the tricks to overcoming the obvious barriers to effective "internal" comunication?
split site development of the same codebase
Wouldn't that fairly accurately describe a project such as
I believe you have some familiarity with how that works
I'd have thought that in a commercial project, the main difference would be that a project manager would be able to step in and "make a call" in the case of conflict or disagrement.
Re:A familiar model
speters on 2006-11-26T06:38:30
From my experience in working with Perl is that being several timezones apart from the others can be a bit of a challenge at times. At least with open source, people are generally available. At work, people tend to be available only during the eight to ten hours they are expected to be there. So, if your separated by eight hours or more, you may never reach some people in the office ever. That's where I guessing where the challenge comes in.
Re:A familiar model
nicholas on 2006-11-26T12:07:01
You've expressed the distinction better than I was going to. In my experience volunteer developed open source (seems) to be different and therefore easier for a couple of reasons:
- People are generally available for more hours, so lack of overlap is not such a problem
- People are generally working on individual subsections of the code, so don't conflict (and so don't need communication to resolve that)
- People are generally not working full time, so the sheer pace of development is slower. (Or at least, the attempted pace)
- People are working on what they feel like, or what they feel is important, so if they realise that they're about to start creating conflicts with someone else, they back off and wait. There's no business pressure to have both projects done soon and simultaneously
I think that if Perl attempted to have development done full time by multiple people in mutliple locations, it would rapidly grind to a halt as everyone spent a lot of of their time communicating to avoid conflicts, or liasing to ensure that parallel development stayed in touch. So I feel my original questions remain unaswered.