4 ms·
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
by shiftingleft 6y ago
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.
- enriquto 6y agoWait, why can't you use a regular jupyter notebook for julia? The "ju" in "jupyter" stands for what, then?
- jakobnissen 6y agoYou 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.
- carterschonwald 6y agoPluto 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 :)
- spacedome 6y agoYou 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.
- enriquto 6y ago> 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?
- goerz 6y agoSounds like you want jupytext
- enriquto 6y agoYes. What I really want is that ipynb disappears everywhere forever to be replaced by jupytext or a variant of it.
- Jugurtha 6y ago>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.
- enriquto 6y ago> 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.
- Jugurtha 6y ago>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?
- jsinai 6y agoYou 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.
- disgruntledphd2 6y agoUnfortunately for Julia, its actual competitors in this space are ggplot and R.
- krastanov 6y agoDo 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.
- kwertzzz 6y agoI 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).