CoCalc is used in large in-person courses at UCLA, by Cambridge's books and journals, is embedded in Yields.io's risk management platform, and features extensive ChatGPT integration. There are many other ways that people use CoCalc...
Teach scientific software online using Jupyter Notebooks
CoCalc is a virtual online computer lab: it takes away the pain of teaching scientific software!
An entire computer lab in the cloud
- Every student works 100% online – inside their own dedicated workspace.
- Follow the progress of each student in real time.
- At any time you and your teaching assistants can jump into a student's file, right where they are working, and answer their questions.
- Use TimeTravel to see every step a student took to get to their solution, and to get context when helping them.
- Integrated chat rooms allow you to guide students directly where they are working or discuss collected files with your teaching assistants.
- The project's Activity Log records exactly when and by whom a file was accessed.
- CoCalc's massive default Software Environment provides nearly everything anybody has ever asked us to install since 2013!
No software setup 100% online
Fully managed software environment:
- Forget any complicated software setup – everyone is able to start working in seconds!
- Since everyone works with exactly the same software stack, all inconsistencies are eliminated.
Batteries included: CoCalc includes much of what you need to teach your course
- Integrated Jupyter Notebooks with collaboration, recording changes, and much more…
- Support for many programming languages:
Python with many pre-installed Python packages;
Statistical Software R with many pre-installed R packages;
Julia programming language, Octave, and SageMath, …
- A Linux environment, with many pre-installed utilities and a terminal.
- Use a virtual Whiteboard with embedded Jupyter Cells to bring your ideas across.
Manage all files
The course management interface gives you full control over distributing, collecting, grading and returning everyone's assignments.
- Start discovering CoCalc: CoCalc's Jupyter Notebooks
- The Instructor Guide explains how to use CoCalc to teach a course.
- The CoCalc Manual explains much of what CoCalc can do.
- There are a large number of courses all over the world running on CoCalc. We used to list them here...
CoCalc's Jupyter Notebooks fully support automatic and manual grading using our version of NBGrader with no configuration!
The teacher's notebook contains exercise cells for students and test cells, some of which students can also run to get immediate feedback. Once collected, you tell CoCalc to automatically run the full test suite across all student notebooks and tabulate the results.
By default, tests run in the student's project, so malicious code won't impact anybody except the student.
CoCalc's own Jupyter Notebook implementation offers realtime synchronization, TimeTravel, automatic grading, side chat, and more.
Sage Worksheets are similar to Jupyter Notebooks, but made to work well with SageMath. They offer a single-document model that scales to large documents and integrated 3d graphics.
The very sophisticated collaborative Linux Terminal makes you incredibly productive. Many programming languages and hundreds of tools are available at your fingertips in a full Ubuntu Linux environment.
I just found out that my CoCalc class got by far the best course evaluations for any course I've taught at UCSD to date (over 85% on the favorable/unfavorable scale), which makes it a sure thing that I'll be teaching this course again (in some form) next year! Many thanks for the backend work on CoCalc, for the course materials, for the guest lecture...
CoCalc provides a user-friendly interface. Students don't need to install any software at all. They just open up a web browser and go to https://cocalc.com and that's it. They just type code directly in, hit shift+enter and it runs, and they can see if it works. It provides immediate feedback. The course management features work really well.
Start free today. Upgrade later.