In my experience, one of the hardest things for new programmers to understand is the consequences of the fact that they are not the only ones working on a project. Of course, they understand that there are other team members, but the full impact can ...