Page 7: Digital Collaboration

Unit 4, Lab 3, Page 7

On this page, you will learn how people use computing to enhance collaboration.

IOC-1.E.5: Human capabilities can be enhanced by collaboration via computing.

IOC-1.E.5

The worldwide nature of the Internet both requires and enables collaborative design. Human capabilities can be enhanced by collaboration via computing.

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.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.A.3, CRD-1.A.5, CRD-1.A.6

Computers these days are so small and so inexpensive that nearly everyone has one in their pocket. So, for a software project to be successful,

CRD-2.A.2: An understanding of the purpose of a computing innovation provides developers with an improved ability to develop that computing innovation.

CRD-2.A.2

Nobody has enough experience with enough cultures to design for all these expectations. Instead, innovations are designed by a team that includes potential users, from a variety of cultures, ideally by choosing diverse technical experts (programmers, graphic artists, user interface experts, and others) who’ll do the actual implementation and who clearly understand the purpose of the innovation. In addition, modern innovators survey large numbers of users outside their team to double-check that everyone’s expectations are satisfied. (This is why you may see invitations from a company to “alpha test” a new program. It’s only partly to help catch out-and-out bugs; it also finds out early if some users are going to get angry about something the developers never considered.

CRD-1.A.4: Collaboration that includes diverse perspectives helps avoid bias in the development of computing innovations.
ALREADY COVERED IOC-1.F.11: Computing innovations can raise legal and ethical concerns. Some examples of these include:
the development of algorithms that include bias

CRD-1.A.4, IOC-1.F.11(2)

Another reason a variety of people on the design team is desirable is to help avoid bias in the innovation. In some early testing of self-driving cars, it was found that they weren’t good at detecting pedestrians who were people of color. This wasn’t deliberate, of course; the artificial intelligence program that detected pedestrians had been trained on a vast collection of photographs of people, in which all the people happened to be light-skinned. Luckily this problem was discovered in early testing, before the self-driving cars were really sent out on the road.

CRD-1.B.1: Online tools support collaboration by allowing programmers to share and provide feedback on ideas and documents.

CRD-1.B.1 (next four paragraphs)

How do computers and the Internet enable collaboration? The way that’s most taken for granted is the worldwide telephone system. Telephones are older than computers, but the early telephone systems didn’t have area codes, let alone country codes. You could dial people in your town, but to call anyone else you had to ask an operator (a telephone company worker) to connect you by hand. Today, connecting telephone calls is done by computer, and you can dial just about any telephone on Earth yourself.

Computers are more visibly involved when you use virtual meeting software. Skype, the best-known example, is free in the sense of not costing you money to use it (although not in the sense of giving you the right to see or modify the software). But Skype’s free service degrades significantly if more than two or three people are on the call. Both Skype and other companies offer commercial virtual meeting software that can connect dozens of users with good quality.

Besides talking with each other, developers can collaborate on multi-author documents using software that allows them to share the ownership of an online document. The best-known such system is Google Docs; like Skype, it’s free in the money sense but not in the sense of sharing the software that implements it.

Systems that allow several people to edit the same document at the same time have the problem that one person’s edits may contradict another person’s. Revision control systems, of which the best-known is Git (free in both senses), support a more complicated but safer kind of collaboration: Each person has a private copy of the shared document, and edits that copy. When a collaborator is ready to share an edit with the rest of the team, the software synchronizes the local changes with the online, shared version. If changes from two collaborators conflict, the software won’t allow the synchronization until the conflicting text is resolved. The software also remembers the complete history of who changed what when, so it’s possible to undo a change even if other parts of the document have changed since then. But succeeding with Git does require a certain level of expertise.

    CRD-1.B

  1. Research other forms of collaboration technology. How do people use them to work effectively in teams and develop new computing innovations? Write down what you discover.
  2. CRD-1.A

  3. Explain how computing innovations are improved through collaboration.