Back to Homepage

Credit: public domain

Setup communication

Andrew Begel

Today you're going to set up the communication channels necessary for productive exchange. You're going to use Slack for most of your communication. If you haven't used Slack before, it's basically a one or more chat rooms in which you can write text and share images and documents. (Technologies like this have been around since the early 1980's; apparently it took 40 years for them to become worth more than a billion dollars).

Join the class Slack Team

If you haven't already, respond to the invite to the team.

Do the following:

Create a shared Google Hangout

To facilitate synchronous remote meetings, create a shared Google Hangout. Integrate this into your Slack team so that you can easily start a Hangout from Slack.

Define communication policies

Write all of these down in a new document on your GitHub wiki so everyone is clear on expectations.

Schedule team meetings

Meetings are fantastic forcing functions to help you get work done because they serve as social deadlines. Peer pressure is a powerful motivator. Your team should use that to its advantage.

Coordinate among yourselves to choose a time and place to meet once per week. In the syllabus, you will find that many class sessions, especially those further towards the end of the quarter, have been designated as "work time." These are excellent times to hold team meetings since you will all be in the same place at the same time. In the earlier weeks of the class, you may have to work harder to set up your meetings.

Write down the schedule for every team meeting in a document on your GitHub wiki so everyone knows when and where to meet.

Plan the agenda for each meeting

The team manager should come to the team meeting with a prepared agenda. This helps make sure that the meeting time is spent accomplishing your team's goals rather than simply sharing funny memes you saw on social media. A great manager will share the agenda at least one day prior to the team meeting to ensure that all team members know in advance what is expected of them.

The first item on every week's agenda should have the manager publicly acknowledge every team member's individual accomplishments from the past week. If team members want to discuss something, they may write to the manager prior to the meeting to have it placed on the agenda. However, new items can be added to the meeting agenda any time during the meeting as well.

One team member should be responsible for taking notes at the team meeting. Be sure to write down the names of everyone who attended. In the notes, for each item on the agenda, write down the agenda item, a summary of the discussion about that item, and any accomplishments, problems, and TODO items the team came up with during that item's discussion. After each meeting, upload the meeting notes to your GitHub wiki.


For credit, invite the instructor to your channel and write a message to them mentioning their name using the "@" syntax.