HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
sagemathinc
cocalc
TypeScript2015–2024
sagemathinc / cocalc · Archived

cocalc

(moved to https://github.com/sagemathinc/cocalc-ai) CoCalc: Collaborative Calculation in the Cloud

3Distinct people
30Mentions
1Explicit recommenders
1.3KGitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

(moved to https://github.com/sagemathinc/cocalc-ai) CoCalc: Collaborative Calculation in the Cloud

GitHub

Where it is used

No documented product use has been verified yet.

What people are saying

SageMathCloud (https://cloud.sagemath.com) is a completely open source (https://github.com/sagemathinc/smc/tree/rethinkdb) collaborative code editing environment built on…

williamstein used a recommendation phrase. One indexed comment matches. This is a phrase match, not a verdict.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

No other repository is repeatedly linked in the same discussions.

This week on Hacker News

Nov 8–Nov 15 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/15/2026, 2:59:58 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by year30 dated mentions

Observed mentions: 2015-08-04 14:58:07 UTC to 2024-12-26 15:52:33 UTC.

02468102015-01-01 00:00:00 UTC to 2016-01-01 00:00:00 UTC (exclusive): 4 mentions; 0 submissions, 4 comments20152016-01-01 00:00:00 UTC to 2017-01-01 00:00:00 UTC (exclusive): 6 mentions; 0 submissions, 6 comments2017-01-01 00:00:00 UTC to 2018-01-01 00:00:00 UTC (exclusive): 10 mentions; 0 submissions, 10 comments2018-01-01 00:00:00 UTC to 2019-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2019-01-01 00:00:00 UTC to 2020-01-01 00:00:00 UTC (exclusive): 3 mentions; 0 submissions, 3 comments20192020-01-01 00:00:00 UTC to 2021-01-01 00:00:00 UTC (exclusive): 1 mentions; 1 submissions, 0 comments2021-01-01 00:00:00 UTC to 2022-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2022-01-01 00:00:00 UTC to 2023-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2023-01-01 00:00:00 UTC to 2024-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2024-01-01 00:00:00 UTC to 2025-01-01 00:00:00 UTC (exclusive): 3 mentions; 0 submissions, 3 comments2024

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
20152015-01-01 00:00:00 UTC2016-01-01 00:00:00 UTC404
20162016-01-01 00:00:00 UTC2017-01-01 00:00:00 UTC606
20172017-01-01 00:00:00 UTC2018-01-01 00:00:00 UTC10010
20182018-01-01 00:00:00 UTC2019-01-01 00:00:00 UTC101
20192019-01-01 00:00:00 UTC2020-01-01 00:00:00 UTC303
20202020-01-01 00:00:00 UTC2021-01-01 00:00:00 UTC110
20212021-01-01 00:00:00 UTC2022-01-01 00:00:00 UTC000
20222022-01-01 00:00:00 UTC2023-01-01 00:00:00 UTC101
20232023-01-01 00:00:00 UTC2024-01-01 00:00:00 UTC101
20242024-01-01 00:00:00 UTC2025-01-01 00:00:00 UTC303

What Hacker News says

10 sources
I recently built a complete node.js Jupyter server on top off https://github.com/nteract/spawnteract (also used by nteract). There is no Python involved at all unless you connect to a Python kernel. Some of the code of what I wrote: https://github.com/sagemathinc/cocalc/tree/master/src/smc-pr... I'm not suggesting you use what I wrote. I'm just pointing out that there exist alternatives to the Python-based Jupyter server that accomplish the same goal. And I strongly agree with you -- it would be great to have even more implementations of the server part of the Jupyter stack!
In Jupyter C Kernel
I’m also a software dev who has been painfully dogfooding an iPad Pro 10.5 fulltime for development of CoCalc/SageMath for the last few weeks. I even opened (and fixed) a bunch of bugs in our site as a result: https://github.com/sagemathinc/cocalc/issues?utf8=&q=label%3... I’ve been using iOS 11 beta3. Surprisingly, there actually exist some clear advantages over most laptops: Physical Hardware Advantages over laptops (not over surface pro): - More cameras (e.g., an extra 12MP camera on back); you can easily snap a picture or shoot video. - The iPad 10.5 weighs 1 pound, which is way less than most notebooks; it is EXTREMELY portable. - Portrait mode (i.e., rotate screen) with no keyboard, which is useful, e.g., for reading pages of technical documentation. - No trackpad, so the keyboard/bottom takes up much less space, meaning you can
Read the rest
fit easily in more places (e.g., cramped airplanes). - The keyboard doesn’t get dust/crumbs under the keys, since they are sealed. There are also some advantages over my other laptop, which is a 2.2 pound Macbook 12: - The iPad has LTE, which works very well to provide internet without wifi. - Surprisingly, the iPad 10.5 “SmartKeyboard” from Apple has a vastly better mechanical feel than the Macbook 12 (2016). Of course, the real annoyance of the iPad is the software, because the hardware itself is very good, whereas the software is intentionally crippled for reasons of control/security/arrogance/vision. This is a much bigger can of worms...
In iPad Pro 10.5 for Software Development
This is a very valuable article about what it would take to do such a migration. I also work on a large CoffeeScript + React codebase (https://github.com/sagemathinc/smc), write a lot of new CoffeeScript every day, and I have no plans to do a rewrite. I just don't see the value of doing a rewrite, given how hard it would be. I like CoffeeScript, find it expressive, and I think it would be easier to fix or maintain the relevant CoffeeScript tooling than to do a rewrite (just because a rewrite would be so damned difficult). Also, CoffeeScript really is sufficiently close to Javascript, and it interoperates effectively enough for now. CoffeeScript is not totally dead. There's pretty regular activity this month (see https://github.com/jashkenas/coffeescript/commits/master). That said, personally, I find the stability of CoffeeScript to b
Read the rest
e kind of nice, considering how much churn there is in the rest of the Javascript world. The language barely changes at all, and that's kind of nice.
In Converting a large React Codebase from Coffeescript to ES6
> EDIT: after thinking about this for a while, I wonder if the RethinkDB changefeed scenario is doable with the tools in PostgreSQL: get initial user data, then get all subsequent changes to that data, with no race conditions. It's easier if you do things in the other order, and can make assumptions about the structure of your data. In my implementation, I have to first start listening for changes, then do the initial query (relevant code: https://github.com/sagemathinc/smc/blob/ce594ff0574ce781bf78...). As you say, race conditions aren't an issue for some applications. For me, (slightly simplifying) the main table that involves changefeeds is a table of (timestamp, patch) pairs, and for it, race conditions aren't an issue -- you get the data in whatever order you want and merge it on the client. I'm definitely making no claims to have
Read the rest
implemented changefeeds for general PostgreSQL queries or general data. I am concerned that there is an edge case with one of the tables where there is a race condition that causes trouble, in which case I'll have to explicitly change the schema in order to account for this. Somebody below writes "I strongly suspect that the author has ignored race conditions in his changefeeds implementation."; that's not exactly true, since I'm worried about them and try to structure my data to account for them.
In RethinkDB versus PostgreSQL: my personal experience
I added code to my clients to do "SET enable_nestloop TO off" anytime they connect to the database. This sets a global flag for that session, which disables nestloop query planning. It could indeed impact other unrelated queries, which is deeply disturbing, but I don't know any way to disable nestloop query planning only for a specific query (aside from constantly setting and unsetting that flag?). Incidentally, here is an example of the query that causes all the trouble: "SELECT * FROM file_use WHERE project_id = any(select project_id from projects where users ? '25e2cae4-05c7-4c28-ae22-1e6d3d2e8bb3') ORDER BY last_edited DESC limit 100;" Search for nestloop in https://github.com/sagemathinc/smc/blob/master/src/smc-hub/p... to see my relevant client code.
In RethinkDB versus PostgreSQL: my personal experience
The flexbox bugs: https://bugzilla.mozilla.org/buglist.cgi?quicksearch=flexbox... E.g., "Firefox slow to the point of hanging when rendering nested flexbox layout with overflow-y: scroll", which is trivial to reproduce, and which all other modern browsers handle fine. In fact, anybody who visits our product's site using Firefox is given a warning to use any other browser: https://github.com/sagemathinc/smc/issues/1314
In Ask HN: What's stopping you from using Firefox as your primary browser?

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.