Just recently, one of our developer teams started running the experiment of having two pairs of developers work together on the same task at the same time. This is a practice known as mob or "ensemble" programming.
In this case, the team has used mobbing to share specialized knowledge with a wider portion of the team and wrap up the highest priority tasks quicker! However, there is some risk in this practice. It could be easy for someone's contributions to be left out in a crowded conversation, especially if a strong voice or pair of voices were to take control of the work. This would significantly decrease the value of the mob.
To mitigate this risk, the 4 devs (a Menlo pair and a client pair) decided to use a timer that goes off every 15 minutes. When the timer goes off, the keyboard is passed (virtually) to the next person. This rotates responsibility for driving on a regular basis which keeps everyone engaged by forcing constant communication, dialog, explaining, and learning!
From Wade, a Menlo Developer who participated in this experiment: "We find it helped ensure everyone has a chance to participate and encourages collaboration for team members who might not feel confident enough to volunteer to drive on their own."
Whether this experiment becomes a regular practice or not, what is important in experimenting is identifying a problem, developing an experiment to solve it, and most importantly, running the experiment!