Hacker News new | ask | show | jobs
by smabie 2176 days ago
I would disagree about it being pleasant, but let's ignore that. What advantages does Python have over Julia? Julia is even simpler than Python at this point, especially for researchers. A lot of non-programmers I know have been switching to Julia, as it's really easy to "write math" in it.
2 comments

I really want Julia to succeed and take place of Python/R/other. But Python has lots of packages and tutorials/book. You can do lots of things in Python. It will be very hard to replace it because of the need to rewrite lots of things and need to learn other language. Many people do not want to learn new language if current one provides solution for a problem that they are facing today.
> What advantages does Python have over Julia?

You can get paid to write it and there is a mature library ecosystem around it.

Why is the ecosystem important when you can just use pyjulia to call any python library you want? In regards to pay, many Python programmers aren't actually paid to program.

And regardless, I wasn't aware that getting paid to program in a language made the actual language itself better.

> Why is the ecosystem important when you can just use pyjulia

Now you need to package a Julia application and Python application dependencies, instead of just a Python application.

Also, pyjulia is a Julia binding for Python, used for calling Julia code from Python.

The Python bindings for Julia seem to be library specific[1], and brittle. They require an additional special snowflake layer for Python dependencies[2], bypassing PyPI entirely in favor of Conda.

This means that a lot of packages will not work, and even if they do, some will be prone to crashing and some will be out of date.

> And regardless, I wasn't aware that getting paid to program in a language made the actual language itself better.

I like Haskell, I think it is in many ways a great language. However, I'm not going to start new projects in it, nor will I recommend it to clients. It's difficult to hire for, and hard for professionals to justify adopting for reasons other than personal preferences. A big reason for that is that its ecosystem isn't as mature or diverse compared to other languages.

[1] https://github.com/JuliaPy

[2] https://github.com/JuliaPy/Conda.jl

The main package for calling Python is PyCall [1]. It uses Conda by default but you can specify your own python location.

[1] https://github.com/JuliaPy/PyCall.jl

You will need new programmers to replace old ones if they leave your company. Now instead of knowing only Python they will need to know Julia (which at the moment is not as popular as Python) so it makes much harder to find new programmers. I really want Julia to take Place of Python/R and others but I think it will not happen in near future.