|
|
|
|
|
by ericd
2023 days ago
|
|
One of the key points of the mythical man month is that communication overhead starts taking a larger and larger chunk of the total productivity as you scale the number of people involved, just to keep everyone synced up and rowing in the same direction. It's not really based on when the people are added. |
|
But with reasonable amount of people, if you start with the full team at the beginning, you can assign different responsibilities to different people. For example, one can do database, one can do web API, one can do web design, one can do integration with other systems, one can build and maintain continuous integration; you can also divide the domain knowledge among multiple people. Each person can focus on doing their part in such way that the others do not need to understand every single detail, and only use the agreed API.
However, if you add a new person late in the project... all simple things were probably already done, and all difficult things require a lot of knowledge about the existing code, that other team members already know, but if they spend their time explaining it to the new member, then their own work gets slower, so the overall speed reduces. (And yes, given enough time, the new member would learn everything and become just as productive as the old members. But the thing is, there is not enough time left at that moment.)