gardners/2014SE3 — pull request #113 by Edme0005 (2014-05-29 11:37:11+00:00)
Title: Prac8 submission.

What benefits did you experience:
---------------------------------
The main benefit of this experience was the extra set of eyes and the other mind to catch silly typo's and help problem solve. The process might have been faster than being solo, but given the downsides that will be mentioned later in this situation it did not work (or at least so it felt). Again its hard to be sure if the programming worked out to be any more efficient, my predictions are that if performed with a team of equal programmers, while someone is typing the code/solution to one problem, the other is working through the correctness of it producing greater code quality (this has been observed in previous coding sessions). At first the team environment encouraged members to participate but when a distraction did come it became very disruptive to the whole team, if the team was segregated there might be less chance that the whole team would get off track.

What difficulties did you experience:
-------------------------------------
The main problem with this given experience was that the other members did not have much coding experience, and while they understood the challenge at hand they did not know how to help solve it with the current tools (programming). The other major problem was the enthusiasm of extra team members, and while this is likely to occur in all team work, it was an major issue given that these members had no previous knowledge of the topic, programming or our teamwork.

Another problem was in the 2 hour time frame with little experience and the open room, it was hard to coordinate members into roles. With more experience with the team and process i feel this could have produce much greater results.

Conclusion:
-----------
To make this work it would require a team of at least somewhat programming competent members. Given the chance to do this again with such a team i would. It shows real potential to speed progression and allow for more reliable code as long as the minimum requirements are met for the task. When a problem is found that is not essential, one person can keep pushing out the relevant code while one finds the solution to the problem.