1.1 Collaboration
Notes on College Board 1.1 Collaboration
College Board Big Ideas
Learning Objectives:
CRD-1.A Explain how computing innovations are improved through collaboration.
CRD-1.B Explain how computing innovations are developed by groups of people
CRD-1.C Demonstrate effective interpersonal skills during collaboration.
Essential knowledge:
CRD-1.A.1 A computing innovation includes a program as an integral part of its function.
CRD-1.A.2 A computing innovation can be physical (e.g., self-driving car), nonphysical computing software (e.g., picture editing software), or a nonphysical computing concept (e.g., e-commerce)
CRD-1.A.3 Effective collaboration produces a computing innovation that reflects the diversity of talents and perspectives of those who designed it.
CRD-1.A.4 Collaboration that includes diverse perspectives helps avoid bias in the development of computing innovations.
CRD-1.A.5 Consultation and communication with users are important aspects of the development of computing innovations.
CRD-1.A.6 Information gathered from potential users can be used to understand the purpose of a program from diverse perspectives and to develop a program that fully incorporates these perspectives.
CRD-1.B.1 Online tools support collaboration by allowing programmers to share and provide feedback on ideas and documents.
CRD-1.B.2 Common models such as pair programming exist to facilitate collaboration.
CRD-1.C.1 Effective collaborative teams practice interpersonal skills, including but not limited to:
- communication
- consensus building
- conflict resolution
- negotiation
Collaboration allows people who specialize in different areas to work together to reach an end product. It can involve the combination of the diverse ideas of many people. Skills that are developed through collaboration include: communication, consensus building, conflict resolution, and negotiation.
Computing innovation: A physical or nonphysical program. Examples include VSCode (nonphysical) or a self driving car (physical).
Collaboration can take place in many formats. Examples include: pair programming (one as driver, one as navigator), think-pair-share (students think through a problem alone, discuss in pairs, then share with class).
Online tools for collaboration:
- repl.it
- Github
- Shared document/folder
Comments in code also help with communication to yourself and others reading your code.