Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

Forgive my newbishness but I have a question to ask about teamwork...mainly because I stink at it. Most of my projects up until this point have been solo so I have a very limited experience with teamwork. I did make graphics for a game that was being developed by several people, but that was completely different than programming with several different people.

Right now I'm working with someone else on an indie MMO along with a few other team members. I've already made some pretty stupid mistakes, (like rewriting EVERYTHING) so I have two questions for you guys:

1) What are some of the most common mistakes that people make in a team environment and how can they be avoided?

2) How can the structure of your program be altered to allow for multiple teams members to work on different parts of the program at the same time?

P.S. Is this the right stack exchange site for this type of question? (if not, where does it go? Thanks)

share|improve this question

2 Answers 2

up vote 2 down vote accepted

Few simple advices (From my own experience):-
Always keep superior informed about your progress. If you stuck somewhere let him/her know immediately.
Don't take the code review comments personally. Don't get disappointed if there are many code review comments.
I am not sure if these answers your questions. But still hope they are useful.

share|improve this answer
    
Actually they are useful. Thanks! :) It's good to know I'm doing one thing right. (communicating with my superior) Hopefully I'll be able to follow the rest of your advice when the time comes. –  clankercrusher Feb 18 '11 at 14:56

1) What are some of the most common mistakes that people make in a team environment and how can they be avoided?

Ignoring each other.

If you're on your own, then you know your code, you have your way of doing things. If someone else wants in on your code, they will probably find it as mangled as mincemeat.

You need to consider that other people will be reading, editing and using your code.

For the love of god, use a source control system and peer review. It makes things so much easier, where you can't submit anything to source until at least 1 peer has OK'd it.

2) How can the structure of your program be altered to allow for multiple teams members to work on different parts of the program at the same time?

Depending on your source control system, multple files, logically separated.

A file for IO, a file for character stuff, a file for scoreboards; as an example. It's a lot simpler to edit separate files of data than trying to share one. Even if you consolidate it in at the end.

share|improve this answer
    
Right now there are only two main programmers. What would a peer review system like this look like under the following circumstances (Bear with me, I'm ignorant) Also, here's how the teamwork is working right now: Team member A is working ona componant. Team member C is working on a componant. Team member B (me) is working on building major structures in the program. When team member C is done with their componant, I'll incorperate it into the application. Same with team member A. Is there any way to make this more efficient? –  clankercrusher Feb 18 '11 at 5:02
    
You're incorporating it after checking that their code works right? You have checks in place do you're making sure that you're not making everything break if you incorporate it? –  glasnt Feb 18 '11 at 5:43
    
Yes, I put their code into the application and do any neccesary bugfixing. The problem is that takes a while so I can't do this all of the time. –  clankercrusher Feb 18 '11 at 14:55

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.