Introduction


  • Building an effective collaborative community involves Social, Socio-technical and Technical aspects.
  • Other modules cover some of the technical aspects, such as Project Management, collaborative use of Git and GitHub, Code Reviews and Pair Programming.

Benefits


  • Most projects involve working together.
  • Most people produce better code and enjoy work more when they work with others.

Challenges


  • Logistics, decision-making and communication all can negatively impact your ability to work effectively
  • Egos can be a significant problem. Strive to be an egoless programmer.

Social Aspects


  • Social aspects of collaboration such as inclusivity, conduct and attitudes contribute significantly to how effective and enjoyable work will be.

Socio Technical Aspects


  • Technology can augment collaboration, but it is not a replacement for clear communication.
  • Make use of the diverse experience on your team. Different technical skills make a well-rounded team and is a great opportunity for collaboration.