Earlier quoted context omitted.
Julia has the focus on scientific and numerical computing, and is overtaking the python/numpy combo in that niche. In addition to being considerably faster than python, it also has quite some innovative libraries in the area. This can also extend into machine learning, where python has been the go to language, despite its limitations. For other areas, like web programming, there is no sign of Julia replacing Python i…
>Julia has the focus on scientific and numerical computing, and is overtaking the python/numpy combo in that niche\ I agree. In fact if Julia hasn't overtaken Python in numerical computing by January 2022 I will consider it a huge failure.
Julia adoption keeps climbing
201–210 of 309 posts
Re: Julia adoption keeps climbing
#202I'm a graduate student that's switched almost completely over to Julia. Prior to it I worked in both MATLAB (the IDE is so nice, and writing out matrix computations is just great) and Python (for ML). Julia is absolutely nicer to write in than either of the two. MATLAB is slow and at times feels less like a programming language and more like an incomplete and brittle interface with the JVM. Python is also slow, and i…
Out of curiosity, have you tried using Plots.jl from VS Code? If so, what's missing from that experience?
Re: Julia adoption keeps climbing
#203Julia is a nice language, it's just tough to compete with Python. - The beginner experience in Julia is still much worse than it is in Python. Stuff that should work intuitively sometimes doesn't, and when you get a cryptic error message, it's difficult to find relevant help online. And when you do find help, some of it is out of date because the language has changed over the past few years. - You can squeeze a lot o…
I remember in ~2005 people said almost the exact same thing about Python and Perl.
Re: Julia adoption keeps climbing
#204I'm a graduate student that's switched almost completely over to Julia. Prior to it I worked in both MATLAB (the IDE is so nice, and writing out matrix computations is just great) and Python (for ML). Julia is absolutely nicer to write in than either of the two. MATLAB is slow and at times feels less like a programming language and more like an incomplete and brittle interface with the JVM. Python is also slow, and i…
I would recommend Plotly.js in VSCode for interactive plotting.
Re: Julia adoption keeps climbing
#205I don't want to disparage Julia, it's actually a very nice language, and I was very excited to learn it a couple of years ago. But, honestly, I think their adoption at this point is less "linux-like" driven and much more "apple-like". In that, the language is 'ok', but the company is going to INCREDIBLE lengths with respect to shrewd marketing and buzz-creation at this point. Which is admirable but also kinda worryin…
Seriously, when I learned Python (about 20 years ago) I thought it was amazing, and it was, because it let me do things I wouldn't have otherwise done (by reducing the cognitive load on the programming side so I could think more about my problem than the code).
Julia's giving me that kick again - more expressive than Python, doesn't just glue things together but integrates them, and can make code as fast as any language.
Re: Julia adoption keeps climbing
#206Earlier quoted context omitted.
> 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 t…
> 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?
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.
Re: Julia adoption keeps climbing
#207Earlier quoted context omitted.
If we removed dplyr, then R scripts would absolutely scream so I find the speed argument for 'why switch to X' unconvincing. If users cared so deeply about speed, almost no one would be using tidyverse instead we'd all be using base-R or data.table. Multiple dispatch? Hmm is this really a problem that I'm going to come across in the real-world when 90% of our time is spent ingesting a poorly-formatted csv, doing some…
> If the goal of Julia is to replace R/Python then their priorities feel way off the mark There's a lot more to scientific computing than wrangling tabular data. Julia is competing in that overall space with R/Python/Fortran/Java/C++. If R or Pandas is better at data wrangling, then Julia won't win out there. But so be it. No PL is best at everything.
Also a point that gets ignored way too often. My original post differentiated between time spent writing models and time spent data wrangling.
I would never even attempt to write a symplectic integrator in base R (OK maybe Rcpp would be fine but that's not really "R"). Julia, by design, is better at that. But the R ecosystem is so good that I can use the best practical implementation of a symplectic integrator to solve common modeling problems via RStan.
Yes, Stan is a standalone framework that can be accessed from Julia as well. But the following workflow can be done in R much easier:
1) Read in badly formatted CSV data
2) Wrangle the data into a useable form
3) Do some basic exploratory analysis (including plots)
4) Write several models in brms/raw Stan (via rstan)
5) Simulate from the priors and reset them to more sensible values
6) Run the model over the data to generate the posterior
7) Plot/run posterior predictive checks, counterfactual analysis, outlier analysis (PSIS or WAIC), etc.
Again, the above represents my common use case. I fully appreciate that people use Julia to do awesome stuff like "the exploration of chaos and nonlinear dynamics." [0]. I understand that the modern R ecosystem isn't really built for this.[0] https://juliadynamics.github.io/DynamicalSystems.jl/latest/
Re: Julia adoption keeps climbing
#208Earlier quoted context omitted.
I haven't heard of queryverse, thank you for that. This also brings up a good point I wanted to highlight. I get that Julia is a young language with a growing ecosystem. But the lack of "one obvious way to do something" may scare new users away. "I want to quickly wrangle data. Do I use Query.jl, DataFramesMeta.jl, SplitApplyCombine.jl or something else?" "I need pipes to help me wrangle data more efficiently do I us…
I mean I get yout point. Julia has a bit of a Lisp's Curse http://winestockwebdesign.com/Essays/Lisp_Curse.html Writing a performant and easy to use data wrangling library for R is a bunch of work and means dealing with C/C++ etc. So few people are willing to do so, and just contribute to a small number of libraries like dplyr. (I feel like there are at least 2 other major compeditors to that in R?) Where as in julia…
Re: Julia adoption keeps climbing
#209Earlier quoted context omitted.
> 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?
> 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.
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.
Re: Julia adoption keeps climbing
#210I have been using Julia only for a few months, but I’ve been surprised in the speed up that’s possible vs python code using pandas. Depending on the size of your datasets the JIT might slow you down a little, but the speed of Julia outweighs this. Liberally using functions really allows Julia to shine. One thing that I’ve recently seen which concerns me long term is the creation of various competing macro syntaxes fo…
When I got annoyed in my own work that some data wrangling syntax was repetitive I was just really glad that I could easily build my optimal solution and didn't have to just accept that there's one suboptimal (for me) way. In Python and R, if you like what they offer that's good, if not - not so good.
Part of the problem comes from Julia not being geared towards DataFrames like R is, but I gladly trade a bit of convenience in one domain against a lot of expressive freedom with very clean rules that apply everywhere.
For example, I think it's quite good that you can only have "weird" behavior in Julia with macros, but they give you a visual indicator with the @ that you're seeing non-standard syntax. While in R, the non-standard evaluation means that literally anything could happen to the variables you pass into any function. It makes for some convenient syntax in some cases, yes, but it's so confusing as a system for writing software! You never really know if you're looking at a variable or just a name, for example.