Comment by BiteCode_dev
1 month ago
Indeed, but unzipping while downloading do. Analysing multiple metadata files and exporting lock data as well.
Now I believe unzip releases the GIL already so we could already benefit from that and the rest likely don't dominate perfs.
But still, rust software is faster on average than python software.
After all, all those things are possible in python, and yet we haven't seen them all in one package manager before uv.
Maybe the strongest advantage of rust, on top of very clean and fast default behaviors, is that it attracts people that care about speed, safety and correctness. And those devs are more likely to spend time implementing fast software.
Thought the main benefit of uv is not that it's fast. It's very nice, and opens more use cases, but it's not the killer feature.
The killer feature is, being a stand alone executable, it bypasses all python bootstrapping problems.
Again, that could technically be achieved in python, but friction is a strong force.
> Maybe the strongest advantage of rust, on top of very clean and fast default behaviors, is that it attracts people that care about speed, safety and correctness. And those devs are more likely to spend time implementing fast software.
people who have this opinion should use Rust, not Python, at all. if Python code does not have sufficient speed, safety, and correctness for someone, it should not be used. Python's tools should be written in Python.
> The killer feature is, being a stand alone executable, it bypasses all python bootstrapping problems.
I can't speak for windows or macs but on Linux, system pythons are standard, and there is no "bootstrapping problem" using well known utilities that happen to be written in Python.
For the latter point, you are blinded by your own competence.
Bootstrapping a clean python env is the single biggest problem for people that are not daily coding in python.
That's half of the community in the python world.
When you write sqla that's not obvious, because you know a lot. But for the average user, uv was a savior.
I wrote a pretty long article on that here:
https://www.bitecode.dev/p/why-not-tell-people-to-simply-use
We also discuss it with brett cannon there:
https://www.bitecode.dev/p/brett-cannon-on-python-humans-and
But the most convincing argument is to teach python to kids, accountants, mathematicians, java coders and sysadmin.
After 20 years of doing that, I saw the same problems again and again.
And then uv arrived. And they disapeared for those people.
> And then uv arrived. And they disapeared for those people.
I'm not arguing against tools that make things as easy as possible for non programmers, I'm arguing against gigantic forks in the Python installation ecosystem. Forks like these are harmful to the tooling, I'm already suffering quite a bit due to the flake8/ruff forking where ruff made a much better linter engine but didnt feel like implementing plugins, so everyone is stuck on what I feel is a mediocre set of linting tools. Just overall I don't like Astral's style and I think a for-profit startup forking out huge chunks of the Python ecosystem is going to be a bad thing long term.