3 ms·
Doing these things in julia is very different from doing these things in R or Matlab. The tooling and ecosystem for non-scientific applications in Julia is grow
by eigenspace 6y ago
Doing these things in julia is very different from doing these things in R or Matlab. The tooling and ecosystem for non-scientific applications in Julia is growing rapidly and is quite competent.
Julia is absolutely a general purpose language. It’s user base skews heavily towards scientific computing, but the demographics and ecosystem are broadening daily.
- systemvoltage 6y agoHaving used Julia for 2+ years, I couldn't disagree more. Productionizing Julia code has been a total nightmare. The community library support has been growing but hasn't gone through the wringer. Just because things are improving doesn't provide a meaningful understanding against its competitors. I don't see any reason to use Julia over Go for backend webservers. Rust or C++ for systems programming. And frankly, I prefer Python for scientific computing. Julia also has a tiny standard library and lots of flaky external libs which make productionization of code a risky adventure which I have personally been bitten by. Most people are allured by Julia's overhyped marketing which is a shame because the original paper by Stefan is pretty impressive. We're seeing some criticisms of Julia in this thread, rightfully so. My advise to people who are subscribed to Julia's marketing is to listen to people that are complaining. No one wants to just complain, they're saying that because of many reasons. Be humble and try to listen, accept Julia's many shortcomings (error messages and stack traces, library support, startup time, IDE, debugging, etc.). Julia has many shortcomings that are only apparently after using it outside of the Jupyter Notebooks. Not accepting those makes you an annoying fanboy.
- eigenspace 6y ago> I don't see any reason to use Julia over Go for backend webservers. Rust or C++ for systems programming. And frankly, I prefer Python for scientific computing. Sure, I would never claim Julia is being the best language for webservers or systems programming. If someone came to me saying they wanted to do this in Julia, I'd probably tell them "if this is important, I'd probably look at a more established language for this purpose unless you have a good reason to want to use julia for this" That doesn't make julia not a general purpose programming language. It just means it's not the best language for every imaginable purpose (no language is). I personally prefer Julia very strongly for scientific computing to it's competitors, and because of the amount of time I've invested in it for that, I also do many other things in it and I find it quite nice for this. It's totally fair that you prefer Python for scientific computing. Python has a great ecosystem and huge community with tonnes of investment! It's an incredibly stiff competitor. I prefer Julia, and think I have strong reasons to do so, but everyone's needs and desires and different. > No one wants to just complain This is an empirical claim about human psychology and it's false. But regardless, yes there are a lot of totally valid criticisms of julia in this thread! Just because these criticisms exist and some of them have good points doesn't make julia a bad language though. Please consider the fact that not everybody has the same needs, desires and temperament as you. Every language has major probelms with it, but different people feel these problems differently. For many people (for example, me), Julia is a gigantic breath of fresh air! For others, it's painful and clunky. I think there's a lot of good here that people should see and check out and think about, even if they decide it's not for them. Especially because these things improve every day. ___________________________________________________ Just a disclaimer in case anyone is suspicious about my affiliations: I have absolutely zero financial stake in Julia's success. I am not employed by anyone who would benefit from more people switching to julia. I'm a physics PhD student. I simply find julia very useful and pleasant to use and want to share that with others.
- systemvoltage 6y ago> I'm a physics PhD student. I simply find julia very useful and pleasant to use and want to share that with others. User base tends to be scientists and not seasoned Software Engineers. No offense to either one, just that the community inspires the language and its mechanics. This is exactly the reason it is not a general purpose language. You just proved my point. Glad you find it useful for your endeavors. I reckon DiffEq and other hardcore math is great in Julia.
- chrispeel 6y ago> Most people are allured by Julia's overhyped marketing ... Wikipedia says "Marketing refers to activities a company undertakes to promote the buying or selling of a product, service, or good." Julia is not a company; I think what you're calling "marketing" would better be labeled "user enthusiasm" :-)
- systemvoltage 6y agoThe founders of Julia do have financial interest though! I think they're part of Julia Foundation. Same people wrote the marketing material I presume.
- ChrisRackauckas 6y ago> The mission of The Julia Foundation is to provide assistance to those in need while creating awareness of the power of art to heal and inspire. http://www.thejuliafoundation.org/ http://www.thejuliafoundation.org/ I didn't think they were, but now it makes sense why Jeff Bezanson's voice is so soothing.
- StefanKarpinski 6y agoOut of curiosity, what marketing material are you referring to? I.e. what is it that you find misleading, specifically? If anything, I feel that the Julia website and manual focus more on technical computing than they ought to and could stand to spend more time on general computing matters for which the language is also well suited. I’ve been meaning to write a blog post entitled “Julia is a General Purpose Language” for a long time. Which I suspect you would take issue with, but that’s ok.
- sgt101 6y ago>Not accepting those makes you an annoying fanboy. Thanks for the constructive input to the debate.
- systemvoltage 6y agoI am allowed for a bit of unconstructivism after providing a pretty wide take on the productionization of Julia code. Spare me? :)
- gugagore 6y agoYou're going from "don't call it a general purpose language" to "be receptive to complaints about its short-comings". There's quite a gap in between. I know that contributers are receptive about short-comings. And if you frankly prefer other languages, then that's totally fine too.
- systemvoltage 6y agoShort-comings are intrinsingly related to its general purposeness. Tiny standard library is one of them. Not being able to put things into production is another. I guess I see general purpose languages such as Python and Go as rock solid. They have warts but they're well understood and wrinkles have been ironed out.