I agree that plotting is still an issue with Julia, although in practice I keep my Julia sessions open for a whole day at a time, so it is not as big of a problem as it may seem.

Still things can happen which require a restart. It then sucks to pay the JIT tax each time.

I was an interesting test you did, so I tried to repeat it on my MacBook Pro (15-inch, 2018) with 2.9 GHz 6-Core Intel Core i9 and 32 GB memory.

My Julia code finnished in 35 seconds. Not stellar but also not too bad.

On second try it was 1.8 seconds and on subsequent tries it was 0.35 seconds.

However a relevant point to add about Python though, is that I actually failed to get any plot by using your code. Plotting just hung.

Which points to an issue I think favors Julia. Julia is simply a lot easier to setup. The whole Python2 vs Python3, how virtual environments work, pip etc it all comes across as a lot more messy and fragile than the current Julia solution.

Setting up a Julia environment and getting things to run is just exceptionally easy. I don't think any other dynamic language is actually as smooth as this. I think Julia benefits a lot from being a latecommer with the ability to learn from past mistakes and create proper versioning, packages system and enviornment handling from the get-go instead of bolting it on as time progress.

Sooner or later I think Julia will get acceptable performance on "time to first plot," but Python will still struggle with the legacy of a system that has been around a long time and which has become unweidly.

Geek dad, living in Oslo, Norway with passion for UX, Julia programming, science, teaching, reading and writing.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store