Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I think this is a fair assessment, and would like to add that the "time to first plot" is also quite the usability issue.

Julia is using LLVM for code-gen has to compile a lot of code before you can actually use stuff like plots.

It takes ages to get a Pluto Notebook up and running, while a jupyter notebook is available instantly.



Wait, why can't you use a regular jupyter notebook for julia? The "ju" in "jupyter" stands for what, then?


You can, but Pluto is (I would argue) a better notebook than Jupyter. Regardless, the latency experienced with Julia applies equally whether you use Pluto, Jupyter, or any other front-end.


Pluto is a notebook design the world needs. It’s nice enough for it to motivate me to use Julia for some new prjects.

But yeah latency kills :)


You absolutely can use regular jupyter notebooks for julia! Pluto has some advantages, like being stored as a normal julia file. The julia startup time issues affect both.


> being stored as a normal julia file.

Oh, man, this is indeed a major feature. My main point of friction with jupyter notebooks is the stupid json ipynb format. Why can't it be just a regular language file with comments?


>My main point of friction with jupyter notebooks is the stupid json ipynb format. Why can't it be just a regular language file with comments?

Have you ever used Jupyter notebooks? They contain code, rendered Markdown, images, plots, video players, widgets, etc.

How do you see a "regular language file with comments" supporting this, instead of the "stupid ipynb format"?

You can use plain text files with Jupyter, too.


> They contain code, rendered Markdown, images, plots, video players, widgets, etc.

The code could be verbatim python code (or whatever language the notebook uses), and the rest could be embedded inside comments. I don't see any problem with that (besides the very concept of "rendered Markdown" being totally out of order). The fact that they are saving it as json by default seems more to be laziness by the developers than a well thought-out solution, that could be just a straightforward serializer.


>and the rest could be embedded inside comments. I don't see any problem with that

Do you mean embedding images and plots inside comments? If yes, please elaborate on how you see that happening in the real world.

>The fact that they are saving it as json by default seems more to be laziness by the developers than a well thought-out solution, that could be just a straightforward serializer.

So, how would that well thought-out solution in the form of a "straightforward serializer" work? I have a flat file, and I want to display images, plots that you can zoom into out of, figures, etc. as comments. How would that happen?


Well you could look at the source for org-mode, which does what Jupyter does but in Emacs, and using plain-text files.

https://github.com/bzg/org-mode


> How would that happen?

At the very least, you could put the whole json stuff inside a comment. It's already plain text, isn't it?


Python supports multi-line strings for this. No need for comments.


>At the very least, you could put the whole json stuff inside a comment. It's already plain text, isn't it?

So instead of having the whole file as JSON, which is lazy and not well thought-out, we'll put all content in JSON, then put that JSON inside a comment in a plain text file. Do I read you correctly?

I feel we're making progress faster than these lazy Jupyter org bandits.


> we'll put all content in JSON, then put that JSON inside a comment in a plain text file

Only the "output" content. The code inside the cells is verbatim, and the markdwon cells are regular text comments.

See, I'm not discussing you just because. I have a legitimate problem with ipynb: very often I want to run the code of a notebook from the command line, or import it from another python program. This is quite cumbersome with the ipynb, but it would be trivial if it was a simple program with comments.


I believe people reading this are not detecting the sarcasm. I'm demonstrating that the Jupyter folks are not lazy engineers, and the "obvious" solutions people come up with are not that well thought-out when you start actually thinking about them.


Rmarkdown does this perfectly


Sounds like you want jupytext


Yes. What I really want is that ipynb disappears everywhere forever to be replaced by jupytext or a variant of it.


You can also use VS Code notebooks and Julia support in VS Code keeps getting better. As a newcomer to Julia I am super impressed with the experience. No getting around loading the Plots package but producing a high quality plot and getting the data there is a much more enjoyable experience than pandas + numpy + Matplotlib + whatever tensor framework you’ve sworn to.


Unfortunately for Julia, its actual competitors in this space are ggplot and R.


Do you still have latency issues in Julia 1.6? The latency improvements in the last 3 versions of julia have been so significant that I do not really notice it anymore. Supposedly there are additional speedups planned for 1.7.


I tried also recently the beta version of Julia 1.6 and the speed improvement of installing/loading package are quite impressive. Essentially, packages get precompiled after installation using multiple threads.

Beside this, if you only infrequently install/update package, you can use PackageCompiler.jl. I use it for PyPlot.jl (based on matplotlib), DataFrames.jl, ... and plotting some data quasi instantaneous as it is in python (even the very first time in a session).




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: