CoCalc (formerly called SageMathCloud) is a
web-based
A web application (or web app) is application software that is accessed using a web browser. Web applications are delivered on the World Wide Web to users with an active network connection.
History
In earlier computing models like client-serve ...
cloud computing
Cloud computing is the on-demand availability of computer system resources, especially data storage ( cloud storage) and computing power, without direct active management by the user. Large clouds often have functions distributed over mul ...
(
SaaS
Software as a service (SaaS ) is a software licensing and delivery model in which software is licensed on a subscription basis and is centrally hosted. SaaS is also known as "on-demand software" and Web-based/Web-hosted software.
SaaS is cons ...
) and
course management
The CourseManagement Open Service Interface Definition (OSID) is an O.K.I. specification which supports the creation and management of a course catalog (''CourseCatalog''). OSIDs are programmatic interfaces which comprise a service-oriented archi ...
platform for
computational mathematics
Computational mathematics is an area of mathematics devoted to the interaction between mathematics and computer computation.National Science Foundation, Division of Mathematical ScienceProgram description PD 06-888 Computational Mathematics 2006 ...
. It supports editing of
Sage
Sage or SAGE may refer to:
Plants
* ''Salvia officinalis'', common sage, a small evergreen subshrub used as a culinary herb
** Lamiaceae, a family of flowering plants commonly known as the mint or deadnettle or sage family
** ''Salvia'', a large ...
worksheets,
LaTeX
Latex is an emulsion (stable dispersion) of polymer microparticles in water. Latexes are found in nature, but synthetic latexes are common as well.
In nature, latex is found as a milky fluid found in 10% of all flowering plants (angiosperms ...
documents and
Jupyter
Project Jupyter () is a project with goals to develop open-source software, open standards, and services for interactive computing across multiple programming languages. It was spun off from IPython in 2014 by Fernando Pérez and Brian Granger ...
notebooks. CoCalc runs an
Ubuntu
Ubuntu ( ) is a Linux distribution based on Debian and composed mostly of free and open-source software. Ubuntu is officially released in three editions: ''Desktop'', ''Server'', and ''Core'' for Internet of things devices and robots. All the ...
Linux
Linux ( or ) is a family of open-source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically packaged as a Linux distribution, which ...
environment that can be interacted with through a terminal, additionally giving access to most of the capabilities of Linux.
CoCalc offers both free and paid accounts. Subscriptions starting at $14/month provide internet access and more storage and computing resources. One subscription can be used to increase quotas for one project used by multiple accounts. There are subscription plans for courses. Over 200 courses have used CoCalc.
Features
CoCalc directly supports
Sage
Sage or SAGE may refer to:
Plants
* ''Salvia officinalis'', common sage, a small evergreen subshrub used as a culinary herb
** Lamiaceae, a family of flowering plants commonly known as the mint or deadnettle or sage family
** ''Salvia'', a large ...
worksheets, which interactively evaluate Sage code. The worksheets support
Markdown
Markdown is a lightweight markup language for creating formatted text using a plain-text editor. John Gruber and Aaron Swartz created Markdown in 2004 as a markup language that is appealing to human readers in its source code form. Markdown is ...
and
HTML
The HyperText Markup Language or HTML is the standard markup language for documents designed to be displayed in a web browser. It can be assisted by technologies such as Cascading Style Sheets (CSS) and scripting languages such as JavaScri ...
for decoration, and
R,
Octave
In music, an octave ( la, octavus: eighth) or perfect octave (sometimes called the diapason) is the interval between one musical pitch and another with double its frequency. The octave relationship is a natural phenomenon that has been refer ...
,
Cython
Cython () is a programming language that aims to be a superset of the Python programming language, designed to give C-like performance with code that is written mostly in Python with optional additional C-inspired syntax.
Cython is a compiled ...
,
Julia
Julia is usually a feminine given name. It is a Latinate feminine form of the name Julio and Julius. (For further details on etymology, see the Wiktionary entry "Julius".) The given name ''Julia'' had been in use throughout Late Antiquity (e.g. ...
and others for programming in addition to Sage. CoCalc supports
Jupyter notebooks, which are enhanced with real-time synchronization for collaboration and a history recording function. Additionally, there is also a full
LaTeX
Latex is an emulsion (stable dispersion) of polymer microparticles in water. Latexes are found in nature, but synthetic latexes are common as well.
In nature, latex is found as a milky fluid found in 10% of all flowering plants (angiosperms ...
editor, with collaboration support, a preview of the resulting document and also support fo
SageTeX With its onlin
CoCalc also indirectly supports editing and running many other languages, including
Java
Java (; id, Jawa, ; jv, ꦗꦮ; su, ) is one of the Greater Sunda Islands in Indonesia. It is bordered by the Indian Ocean to the south and the Java Sea to the north. With a population of 151.6 million people, Java is the world's List ...
,
C/
C++
C++ (pronounced "C plus plus") is a high-level general-purpose programming language created by Danish computer scientist Bjarne Stroustrup as an extension of the C programming language, or "C with Classes". The language has expanded significan ...
,
Perl
Perl is a family of two high-level, general-purpose, interpreted, dynamic programming languages. "Perl" refers to Perl 5, but from 2000 to 2019 it also referred to its redesigned "sister language", Perl 6, before the latter's name was offici ...
,
Ruby
A ruby is a pinkish red to blood-red colored gemstone, a variety of the mineral corundum ( aluminium oxide). Ruby is one of the most popular traditional jewelry gems and is very durable. Other varieties of gem-quality corundum are called sa ...
, and other popular languages that can be run on Linux. Other packages can be installed on request.
Users can have multiple projects on CoCalc, and each project has separate disk space and may be on an entirely different server. Many users can collaborate on a single project, and documents are synced so multiple users can edit the same file at once, similar to
Google Docs
Google Docs is an online word processor included as part of the free, web-based Google Docs Editors suite offered by Google, which also includes: Google Sheets, Google Slides, Google Drawings, Google Forms, Google Sites and Google Keep. Google Do ...
. All the data on projects is automatically backed up about every five minutes wit
bup and snapshots of previous versions are accessible. Through the terminal, files can be tracked using revision control systems like
Git
Git () is a distributed version control system: tracking changes in any set of files, usually used for coordinating work among programmers collaboratively developing source code during software development. Its goals include speed, data inte ...
.
Development
CoCalc is open source software hosted by SageMath Inc. The creator and lead developer of CoCalc is
William Stein, a former professor of mathematics at the
University of Washington
The University of Washington (UW, simply Washington, or informally U-Dub) is a public research university in Seattle, Washington.
Founded in 1861, Washington is one of the oldest universities on the West Coast; it was established in Seattle a ...
who also created the Sage software system. Initial development was funded by the University of Washington and grants from the
National Science Foundation
The National Science Foundation (NSF) is an independent agency of the United States government that supports fundamental research and education in all the non-medical fields of science and engineering. Its medical counterpart is the National I ...
and
Google
Google LLC () is an American multinational technology company focusing on search engine technology, online advertising, cloud computing, computer software, quantum computing, e-commerce, artificial intelligence, and consumer electronics. ...
. Now CoCalc is mostly funded by paying users. It is intended as a replacement fo
sagenb which also let users edit and share Sage worksheets online.
See also
*
SageMath
SageMath (previously Sage or SAGE, "System for Algebra and Geometry Experimentation") is a computer algebra system (CAS) with features covering many aspects of mathematics, including algebra, combinatorics, graph theory, numerical analysis, numbe ...
References
{{Reflist
External links
CoCalc homepageCoCalc documentationCoCalc FAQGoogle Chrome extensionSource code used for running CoCalc
Collaborative real-time editors
Free mathematics software
Free software programmed in Python
Free software websites
Mathematical software