Slack
Slack is a business-oriented communication platform used in many software development companies. Like many other chat platforms such as Discord and Microsoft Teams, Slack allows for team communication through named channels and individual communication through Direct Messages (DMs).
In this course’s mission to educate students with the tools and practices used in professional working environments, we use Slack as the main hub for all communication, including for class announcements, assignment questions, and in-class help queues.
Why Slack?
As mentioned in Begel and Simon [citation], who conducted a study at Microsoft on software developers in their first six months of employment, new hires often face the following five learning barriers when entering the software industry:
- Communication - how and when to ask questions
- Collaboration - how to interact with others
- Technical - how to use large-scale development tools
- Orientation - where to find information / help when not readily available
- Metacognition - how to measure progress and get unblocked
By introducing Slack into this course, we hope to either fully or partially address the first four learning barriers.
- Students will be encouraged to ask questions through the use of the #help-lecture-discussion queue in class, as well as general #help channels per assignment for asynchronous assistance (common in large organizations)
- Student teams will each have their own dedicated Slack channel that they can use for team-wide communication, as well as the ability to establish their own channels and group DMs for specific purposes or one-off conversations.
We hope that by introducing Slack as a communication platform and by using many of the same practices used in industry, students will be prepared to communicate professionally in a work environment regardless of their communication platform. It may help in the first lecture to have staff members provide anecdotes from their experience as interns / employees to motivate usage of this tool.