Collaboration

There are multiple ways in which you can interact with your students or collaborators, in this section we will present some features that you might find useful when managing a course.

Real-time chatrooms

You can create general real-time chatrooms for your CoCalc projects. You can create a project chat room by clicking on the New button, this will create a file with .sage-chat extension.

In addition, every file in CoCalc has a separate chat that can be found on the upper left corner of your screen.

button at upper right for side chat with any file

Every time one of your students writes something into a chat on any one of their files, you will get a notification displayed on the top bar.

notification count shown inside bell icon

Clicking on the notification button (bell icon on the top of the screen) displays a notification menu with the latest chats and modifications in the project or specific files.

click notification bell for list of latest notifications

The chat notifications are always presented at the top of the menu, followed by any updates you or your collaborators have done to the project. Clicking on a chat notification will take you to the student’s copy of the file inside his/her project. From there, you can both reply to their questions and look at their work simultaneously.

clicking on notification expands to show detail

Once you have replied to the student’s question (s)he will receive a notification.

Live collaborative editing

Multiple users can collaborate on a project. As soon as a collaborator is added to a a project (see Creating a New Course) they share both the project and the associated files.

Live collaborative editing is possible in CoCalc. If one of your collaborators updates a notebook, the rest can see the changes as they are being made (similar to Google Docs).

@-Mention collaborators in chat

Using @ followed by a recipient’s name in a chat message you send, you can cause an email notification to be sent. See @-mentions for more information.

Shared Project

You can create a common shared project for your course. Think of a shared project as your private course website for the students with automatic forum and code support. By default everybody (collaborators and students) will have write access to the project and its associated files.

To create a shared project you need to go to your .course file and click on the Shared Project button.

creating a project that will be shared by all students

If you create a .sage-chat file here, all students will receive automatic notifications when questions are posted on the chat.

If you want to make a file or an assignment read-only so that students cannot modify it, you need to modify the file permissions. Launch a terminal and type:

chmod a-w filename

If you want to check the access permissions of all the files contained in a given directory, use the following:

ls -l

In case you want to change a read only file into a read and write, type:

chmod a+w filename

Group Projects

If you want students to work together in groups, you can assign a “leader” for each group, have them create a project, and add other members and you as collaborators. (Of course, you can also create all such projects yourself, although it can take some time.) Everybody will be able to collaborate on this project and modify files simultaneously.

If you want to use automatic distribution and collection of assignments with group projects, you can create a course file with only group “leaders” added as students and then manually add other group memebers as collaborators. We do plan to add a more direct support for groups in the future.