What are the benefits of peer programming?

Asked

Viewed 110 times

4

Programming was almost always done by a person, who creates, analyzes, tests and compiles the code, all by himself. Until a moment came programming in pairs, that said programming in pairs was more effective, faster and spent less resources than "solitary programming".

This practice is widely used by agile methodology XP (andXtrembles Programming). What are the benefits of having someone by your side while you program? This will really make work faster?

1 answer

3


The summary of the benefit is usually:

Two heads think better than one.

In complicated problems there can be advantage, especially if used punctually. People don’t get stuck too much in something, but it can also occur of not just one, but two people getting stuck.

There’s a kind of code review automatic. But some question this. Some say that there are fewer errors, but there is no evidence that this occurs more intensely than other techniques. It may even happen but at a high cost.

Some say the code can get better because there’s someone criticizing there at the time, but it depends a lot on who’s next to it, and it can bring conflict when it happens.

Some people say it’s more efficient that way, but I’ve never seen proof. There may be some cases where a problem that one person is struggling with and the other sees a path more easily, but it needs to be a lot of gain to make up for because it’s two people doing one job.

It can be interesting as a way of training a less experienced programmer, but effectively eliminates the advantages that are said to exist in this mode. It can also serve as an evaluation of employees following the process of each one, but there are people who do not pay well when they are being monitored.

It may be interesting for more than one person on the team to understand the process that was used to arrive at that code, but it may be a band aid something wrong with the team.

It is more difficult to procrastinate. And it can keep morale high, but it can also happen the other way around. When you involve psychology techniques can be problem, ignore the needs of people.

Some people tend to say that they have other advantages that are even harder to measure and that they are not technical. You can integrate the team better socially, but can generate conflicts.

There are disadvantages, the most obvious is that two people are doing the same job, it’s kind of one changing the lamp and the other looking or talking not to forget to screw right. Many of the disadvantages that are usually put in the background can be disadvantages or at least generate a disadvantage because of that.

Browser other questions tagged

You are not signed in. Login or sign up in order to post.