What does HackerNews think of emacs-ipython-notebook?
Jupyter notebook client in Emacs
I see the appeal of Jupyter notebooks for someone testing out things or experimenting, but it's a bit like a brain dump that isn't that trivial to navigate around when a second or third person is involved.
There is an important feature Jupyter has that org doesn’t share: collaboration. If everyone I need to collaborate with already uses emacs and org, great—but that’s a pretty big “if,” I and haven’t seen that opportunity in the wild.
On the other hand, jupyter notebooks may have a garbage format (JSON blobs with embedded b64? Ugh!), and the browser-driven UI sucks (IMO, as an ardent emacser), but they’re ubiquitous and the lingua franca for Python data science. Most everyone you meet is familiar with them and can incorporate them into their workflow, and there’s benefit to the direct rendering pipeline to standalone HTML in a conventional format.
There is actually a viable jupyter interface in emacs, EIN [1]. I’ve used it a lot and it works seamlessly, and reduces the pain of using jupyter by letting me edit within emacs. There are also VS Code plugins that enable jupyter development…
Tldr jupyter can be ugly but it’s widespread and that alone makes org mode Babel analysis a nonstarter for collaboration, but at least there are ways to run jupyter within emacs
[1] EIN == Emacs iPython Notebook https://github.com/millejoh/emacs-ipython-notebook
If you use emacs, ein is also a good choice: https://github.com/millejoh/emacs-ipython-notebook
If I am just poking around I use a Jupiter notebook. If I have to do a lot of prototyping, I use the emacs plugin. So the muscle memory typing works.
I find the whole "notebooks are a revelation!" thing kind of amusing, given that we have had REPLs for a long time. emacs is just a big REPL if you know elisp. But, yeah, ein is great.
In that Jupyter files are just json files, I hope that there it will be easier to switch between the two in the future. Like [1], [2], and [3].
[1] https://github.com/gregsexton/ob-ipython
I have used it quite productively for a while, but at the moment have mostly moved back to the browser for my notebooks. I can recommend to collect larger functions in a separate source file (for Emacs editing bliss) which you import to the notebook. [import helpers; reload(helpers)]
There's an emacs lisp for that..:
https://github.com/millejoh/emacs-ipython-notebook
Seems the best of both worlds!
Now, is there a elisp notebook (or is it just emacs)?.
Jupyter may already be more featured than org-mode through the kernels it embeds. e.g: SageMath alone is gigantic.
Then, if you don't enjoy the web interface you can use it within emacs if so you prefer.
I've used the Jupyter emacs integration (https://github.com/millejoh/emacs-ipython-notebook) but in the end, I stuck with org mode.
For an example of what you can do in org mode (in emacs), here is part of a "dashboard" I created for one of my products: https://i.imgur.com/QUFbIBk.png
And an example of how I design: https://i.imgur.com/MeRYn1L.png
You can essentially use org-babel to recreate an approximation to the notebook environment which si cool