Live data from Hacker News

JupyterLite – WASM-powered Jupyter running in the browser

github.com

51–60 of 68 posts

Re: JupyterLite – WASM-powered Jupyter running in the browser

#52
I use frequently the basthon notebook https://notebook.basthon.fr/ which is also a wasm powered jupyter (based on pyodide) and quite like it. It's flying a bit under the radar as it's not translated in other langage than french. How does it compare to this project?

Re: JupyterLite – WASM-powered Jupyter running in the browser

#53
post #51

How far are we away from having _collaborative_ Jupyter in the browser? Would love a Google Docs experience of sharing a no-sign up required link to help remotely teach basic python.

Livebook does this! It only runs Elixir for now, but there is an issue to add other languages in future. It’s a really cool project IMO. https://github.com/elixir-nx/livebook

Re: JupyterLite – WASM-powered Jupyter running in the browser

#54
post #51

How far are we away from having _collaborative_ Jupyter in the browser? Would love a Google Docs experience of sharing a no-sign up required link to help remotely teach basic python.

Not that far, someone just needs to make a JupyterLab plugin that uses Automerge or a similar OT/CRDT structure for collaborative editing documents in a workspace (perhaps using WebRTC data channels for P2P sync between clients, or stick with the tried and true server model like Google docs). The trouble is turning that into something as polished and secure as Google Docs collaborative editing experience--there's a _lot_ of work to get there with tons of little corner cases, security issues (you're potentially giving strangers over the internet access to remotely run code in your browser--that should raise big alarm bells), etc. to think through. But the basic stuff is all out there for someone motivated to pick up and go wild with.

Re: JupyterLite – WASM-powered Jupyter running in the browser

#55
post #51

How far are we away from having _collaborative_ Jupyter in the browser? Would love a Google Docs experience of sharing a no-sign up required link to help remotely teach basic python.

JupyterLab does support real-time collaborative editing in the browser, as of a few weeks ago.

https://github.com/jupyterlab/rtc

Re: JupyterLite – WASM-powered Jupyter running in the browser

#56

Earlier quoted context omitted.

You misunderstood. The guy above correctly said that Jupyter is nice for ad-hoc analysis kind of work. The problem is that when you've reached terabytes of data and tens of cores you're not "ad-hoc" anymore. Too often the math guys try to avoid responsibility by claiming they're doing "ad-hoc" work when they're clearly not anymore. It's convenient, yes, but leads to a bad place eventually.

I understood fine. The problem is trying to formalize "ad hoc" versus "production development" practices as if they're meaningful. There isn't some golden truth of software development that analysts are too lazy to learn and implement. There's the problem and then there's solutions. Complaining that Jupyter-based development doesn't adequately accomdate version control or some other whistle commonly used in software…

Your boss will eventually ask to make your "ad-hoc" stuff "production".

At which point you'll dump the hot mess in somebody else's lap, and the whole thing will be rewritten from scratch.

If that's your thing, then go for it.

Re: JupyterLite – WASM-powered Jupyter running in the browser

#57

Earlier quoted context omitted.

> I said this already 10 years ago: We don't need more cloud computing but need to empower users end devices again. Jupyter is typically operated on powerful notebooks and not on mobile devices. If you’re working with data of any significant size at all it then it doesn’t matter how fast your user device is—it’s so much cheaper (time and network egress costs) to send the computations from a user device to the cloud t…

Most users don't have 'tens-thousands' of GB of data as part of their use case. You're describing a business case, not an end user consumer case.

Most of the users will not run Jupyter Notebooks locally, they expect a remote kernel in the cloud with GPU/multicore machines, only the web app will be running in browser (think of big query). Of course small users with you datasets will run locally.

Re: JupyterLite – WASM-powered Jupyter running in the browser

#58

Earlier quoted context omitted.

I understood fine. The problem is trying to formalize "ad hoc" versus "production development" practices as if they're meaningful. There isn't some golden truth of software development that analysts are too lazy to learn and implement. There's the problem and then there's solutions. Complaining that Jupyter-based development doesn't adequately accomdate version control or some other whistle commonly used in software…

Your boss will eventually ask to make your "ad-hoc" stuff "production". At which point you'll dump the hot mess in somebody else's lap, and the whole thing will be rewritten from scratch. If that's your thing, then go for it.

That’s fine. Why waste time productionizing something that may or may not ever go to production? We do this all the time. Do you think Tesla built a whole fully-automated factory to build its first proof-of-concept car?

Re: JupyterLite – WASM-powered Jupyter running in the browser

#59

Earlier quoted context omitted.

Any substance on why we shouldn’t be doing it or why it’s stupid? What’s the alternative? Should researchers all learn Kubernetes and AWS and deploy their own environments?

The problem with Jupyter is that it impedes common-sense practices like version control, reproducibility, and automation. If you're spending the time and effort to rent these big servers, why not spend the 5 percent of the effort and do it right? Jupyter exists mostly because analytics/math guys are too lazy to spend a day learning software development practices. Must be some sort of us-vs-them point of misplaced pri…

I am shocked at your unjustified and rather arrogant gatekeeping here.

Version controlled Jupyter notebooks running in an automated environment (eg Kubernetes), with repeatable test data loading into a processing environment (eg. MinIO or Spark), is quite commonplace. Making it even easier with WASM makes sense.

What about Jupyter impedes good practices? That it empowers ad hoc exploration at all? It is merely an IDE tailored to sharing interactive text and code. To me it is one of the most exciting ecosystems for modern software development (and I’ve been developing software for 30 years).

Re: JupyterLite – WASM-powered Jupyter running in the browser

#60
post #51

How far are we away from having _collaborative_ Jupyter in the browser? Would love a Google Docs experience of sharing a no-sign up required link to help remotely teach basic python.

Not that far, someone just needs to make a JupyterLab plugin that uses Automerge or a similar OT/CRDT structure for collaborative editing documents in a workspace (perhaps using WebRTC data channels for P2P sync between clients, or stick with the tried and true server model like Google docs). The trouble is turning that into something as polished and secure as Google Docs collaborative editing experience--there's a _…

There is a PR to add initial support for real time collaboration in JupyterLite: https://github.com/jtpio/jupyterlite/pull/109

This reuses almost all the RTC work done upstream in JupyterLab itself.

And since this is implemented as a regular JupyterLab plugin, folks will then be able to swap it for something else and implement their own if they want to, as a federated extension.

Post reply on HN