Live data from Hacker News

Julia adoption keeps climbing

hpcwire.com

211–220 of 309 posts

Re: Julia adoption keeps climbing

#211

Earlier quoted context omitted.

This "Julia marketing conspiracy theory" that many people on HN seem to believe is so bizarre. What big tech company do you think is behind this incredible, shrewd and presumably well-funded marketing campaign? Julia is the only new major programming language of the last decade that doesn't have a major tech giant backing it. Adoption and development are pretty much entirely grass roots. If you see a lot of enthusias…

Trying to think of others. Kotlin was 2011, and is JetBrains. JetBrain's is 1500 people. So big, but not giant. Rust is 2013 Mozilla is only 750 people So perhaps Major Tech Giant is over-stating it. But definately most other things in the last decade have a major established tech firm backing it. Julia has basically nothing. Starting out as a MIT project, and then Julia Computing is a tiny startup; with like what 50…

Hey, the Julia open source organization did have an undergrad in his senior year working part time on community management though. Can't leave that out. We don't know if JetBrain or Mozilla had something like that.

Re: Julia adoption keeps climbing

#212
post #127

Earlier quoted context omitted.

In practice the multiple dispatch overhead is elided by the compiler. If it can’t be you’re doing something truly dynamic, which is generally unavoidably slower. It’s still a better place to be than everything being a generic Object type.

The nice thing about Cython is that you can have both - all the multiple dispatch you want with fused types, or escape that paradigm to do other things if you desire. It gives a lot of surgical control.

I don’t think that is true. As far as I know, Cython let’s you do function overloading and single dispatch via class inheritance. I think you also miss out on the type inference that lets you do things like pipe dual numbers through functions without any dispatch related overhead.

Re: Julia adoption keeps climbing

#213

Earlier quoted context omitted.

But can Torch/TF/Flax do autodifferentiation on constants ordinary functions? No they cannot!

Flax/jax can :)

If it's a pure function. Oh and if you have state-based control flow you have to turn off the JIT. Etc. If you take a standard library like some thermodynamics simulator and throw Jax on it do you expect it to work without modification? Most of the time it'll fail right at the start by using the wrong implementation of Numpy. So no, that's not "ordinary functions": those are functions where people consciously put in the effort to rewrite years of work onto Jax which is very different.

Re: Julia adoption keeps climbing

#214
The comparison between different languages gets tiring when it focuses on making a black-and-white statement like "Julia is better" or "Python is better" and "x is never going to overtake y". Yes, Python has many more libraries thanks to it being much older than Julia, same for R. But at the same time, Julia can be used for impressive work that R/Python struggle with and which only seem solvable in these languages because of large investments into certain packages by big companies.

So I find the fact that many hard problems can be solved very generically and performant with small libraries written in Base Julia much more interesting than countering that much larger and older Python packages with millions of developer hours poured into them are currently more feature-complete. Yes, they are, right now. Why wouldn't they be. But does what is being done in Julia with much fewer resources not point to an impressive ability of the language to facilitate such development?

Re: Julia adoption keeps climbing

#215
post #99

Earlier quoted context omitted.

> Julia has to be way better than Python to give people an incentive to switch. A language doesn't necessarily have to give all the old programmers an incentive to switch, if it can position itself as a good language for new programmers to learn. For example: at our institute (computational biology), we had a PhD student who was an early Julia adopter and wrote his model in that. Several students have since joined th…

If you work with a lot of data, Julia is already a 10-100x improvement over Python. Being able to iterate and mangle huge columns with real lambdas and without having to marshal arguments to/from C++ is a huge advantage. Where I used to spend hours in aggregate searching through docs for pandas/numpy, for stupid shit like "how do I shift but also skip NaNs", now I just write a for-loop in a couple minutes and get on…

As an experienced python/data science user, this (creating fast complex column-wise transforms) is rarely a problem for me.

The truly huge advantage for Julia is how it plays with parralelism. The GIL makes it an absolute pain to do parallelism in python. Always ends up in threading hacks with numba or joblib, or multiprocessing, which has its own unfixable flaws

Re: Julia adoption keeps climbing

#216

I 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…

This "Julia marketing conspiracy theory" that many people on HN seem to believe is so bizarre. What big tech company do you think is behind this incredible, shrewd and presumably well-funded marketing campaign? Julia is the only new major programming language of the last decade that doesn't have a major tech giant backing it. Adoption and development are pretty much entirely grass roots. If you see a lot of enthusias…

@StefanKarpinski I said none of those things. I didn't mean to hit a nerve. I actually agree with you. I was one of those grassroots people who enthusiastically tried to get friends to try it. Perhaps 'shrewd marketing' didn't come off as positive as it sounded in my mind.

PS. One forgets people like Stefan and Jeff are likely to be on HN. Apologies. I'd have been a bit more careful in my choice of words otherwise.

Re: Julia adoption keeps climbing

#217
post #23

I teach a graduate course in optimization methods for machine learning and engineering [1,2]. Julia is just perfect for teaching numerical algorithms. First, it removes the typical numpy syntax boilerplate. Due to its conciseness, Julia has mostly replaced showing pseudo-code on my slides. It can be just as concise / readable; and on top the students immeditaly get the "real thing" they can plug into Jupyter notebook…

I'm using Julia (because of the hype) to prototype out some numerical optimization stuff. There is a million functions for reshaping multidimensional arrays. The syntax is uncannily like Matlab: retrieving the last element of an array with `[end]`, indexing into a collection with an array of booleans, element-wise versions of operators prepended with dot, etc.

However, I keep running into niggling corner cases that kind of make Julia's promise of a powerful, extensible, yet intuitive type system less convincing.

ME: I want to write a custom getproperty() for Tuple!

JULIA: No.

ME: I want to broadcast over the fields of a NamedTuple!

JULIA: Not allowed.

ME: I want to get a view, not copy, with `@view M[m:n, r:s]`, but also get the ability to specify a default for out-of-range indices, like `get()` allows.

JULIA: I'm afraid I can't let you do that.

Re: Julia adoption keeps climbing

#218
post #201

Earlier quoted context omitted.

>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.

Seriously?!? Julia has no hope of overtaking Python in numerical computing by 2032, expecting movement by 2022 is just delusional. Here is a better prediction: by 2022 people using Python for numerical computing who started doing so in the previous year will exceed the number of people who have ever downloaded Julia since it was first released.

Not people that matter, though, mostly just redundant copies of the same person.

Re: Julia adoption keeps climbing

#219
post #102

Earlier quoted context omitted.

Then Julia should stop describing itself as a general-purpose programming language.

Julia absolutely is a general purpose language and has been from the beginning. However, there are plenty of languages that are fine for building websites, whereas there are no other languages with the combination of speed and usability that Julia offers in technical computing. It's a lovely language for doing all kinds of work and I personally mostly use it for non-technical computing these days — specifically to im…

Oh, hello, interesting to see you here :D Perhaps you ought to say that you're a co-creator of the language...

Re: Julia adoption keeps climbing

#220
post #63

It’s extremely silly, but I don’t really like the name Julia for a programming language. It’s just a bit uncomfortable to have a programming language with a particular, kind of formal-sounding human name like Julia (or like Michael, Lauren, or Jonathan). It just feels weird to me. I know a number of people (family, friends, colleagues) named Julia. I honestly think it could have an effect on adoption. People have to…

[deleted]
Post reply on HN