G Suite for Education (bConnected)

bConnected is a collection of campus collaboration tools that includes G Suite for Education (bMail, bCal, bDrive, bConnected Lists), Box, CalShare, bCourses Project Sites.

bDrive allows for sharing and collaborating on files. A new bDrive folder is usually created for each new semester, and then course staff-specific files are placed within the folder.

It can also be helpful to use bDrive for managing staff-internal documentation (though GitHub Wikis are a good alternative), as well as for synchronizing exam clarification information between several different rooms.

A staff-internal bCal can be helpful to share events between staff (such as staff meetings, exams, etc.). Calendars can also be made public and shared with students, so it could be useful too. A SPA is a great account act as the owner of staff calendars, which can be shared from semester-to-semester.

bConnected Lists are Google Groups mailing lists, which allow for easy delegation of access to other Google services. Create a bConnected list for each new semester’s course staff, and then share the staff bDrive and bCal with the mailing list to give everyone on the list access.

Slack

Instant messaging app for small teams. It’s different from Piazza in that conversations are broken into channels: each channel can have a different topic. It’s nice for short messages that don’t warrant emails.

The Slack mobile app also has great notification features, so it’s really helpful for getting another staff member’s attention (similar to texting, but with lots more capabilities like GitHub integration, file upload, and more).

The free plan is limited to 10,000 messages in the history, but there is a free trial which extends for a few months. Generally, we stick with the free version: important and longer-lived documents, notes, and conversations should live on bDrive anyways for posterity and archival.

Some channels CS 61B uses are #urgent, #labs, #website, #autograder, #projects, #random, and channels for proctoring, scanning, and grading each exam. We usually have several rooms taking the same exam at the same time, so it’s really helpful to instantly update each other on exam corrections, timing, and progress. The instructor can then escalate clarification discussion made between course staff on Slack to the projected exam clarifications doc.

Slack channels are unlimited; don’t be afraid to create short-lived channels for active discussions. The important thing is to make sure staff can keep with the most important updates, and won’t feel the need to read every post.

GitHub

Each course usually retains its own GitHub organization for managing the course repositories. The course GitHub organization might contain repositories containing the course’s source code for coding assignments or problem sets.

GitHub also offers free static web page hosting through GitHub Pages. This is a good alternative to making changes directly on the instructional computing servers since the website can be generated and updated seamlessly each time a commit is made to the repository. In addition, GitHub Pages also supports Jekyll, a popular static website generator, which makes it easy to build websites in a modular fashion. Pages can be written in Markdown and then rendered according to predefined templates.

If you are hosting a course site on GitHub Pages, or any 3rd-party domain, it is a good idea to update your instructional computing webpage (for example, http://inst.eecs.berkeley.edu/~csXXX/) to point to your own domain.

The institutional memory of the course is stored on GitHub through wikis and past-semester course materials, and hand-off between instructors usually also involves sharing GitHub organization access. Maintain a GitHub wiki to codify the practices and procedures between semesters.

If your course is just setting up GitHub, GitHub Education discounts are available for organizations as well as individual users. This can be used together with a GitHub Classroom to distribute private GitHub repositories to students with staff permissions automatically set.

Moss

Moss is an open-source software we use for plagiarism-detection. It performs a Measure of Software Similarity, so it requires additional intervention from course staff to interpret the results.