Live data from Hacker News

Uv is the best thing to happen to the Python ecosystem in a decade

emily.space

841–850 of 1001 posts

Re: Uv is the best thing to happen to the Python ecosystem in a decade

#841

Uv is so good. I'm a curmudgeon about adopting new tooling, and tried uv with a lot of skepticism, but it was just better in every way. And even if it wasn't so polished and reliable, the raw speed makes it hard to go back to any other tool. Uv combined with type hints reaching critical mass in the Python ecosystem, and how solid PyLance is in VSCode, feels so good it has made me consider investing in Python as my pr…

I wish we had a language that had the syntax of Python (notably including operator overloading, which is absolutely critical for neural networks, ML, data science and numerical computations), the performance, compile times and concurrency support of Go, the type system flexibility of Typescript, and the native platform integration of C/C++.

Kotlin on a modern JVM comes pretty close.

* Performance - the JVM is very competitive with C/C++ performance.

* Compile times - Not go fast, but not C/C++/Rust slow.

* Concurrency - Virtual threads (finalized in 21) bring in the concurrency capabilities of go to the JVM

* Type System Flexibility - Kotlin isn't quite as flexible as Typescript, but it's pretty close. It's more flexible than java but not as flexible as scala. I think it strikes a good middle ground.

* Native platform integration - This is probably the weakest part of the JVM but it's gotten a lot better with the work done on Project Panama (mostly delivered in 22). Jextract makes it a lot easier to make native integrations with Java. Definitely not as painful as the JNI days.

There's also kotlin native that you could play around with (I haven't).

Re: Uv is the best thing to happen to the Python ecosystem in a decade

#842

Earlier quoted context omitted.

You’re about to run an untrusted python script. The script can do whatever it wants to your system. Dependencies are the least of your worries.

The script is just a cat or vim away from audit. Its dependencies on the other hand…

This was very confusing!

I meant it’s easy to inspect your script’s logic — look it. Bunch harder to audit the code in dependencies though…

Re: Uv is the best thing to happen to the Python ecosystem in a decade

#843

I predict it'll be the best and then the 'worst' thing: they'll go hard on monetisation. Just look at this post: 1839 points and 1048 comments! That is insane. It's captured the hearts and minds of Python devs and I'm sure they know it. I'm not against projects making money, just remember you'll likely pay a price later on once you invest in more of Astral's ecosystem. It's just temporarily free.

They’ve been very transparent about their monetization strategy and it does not impact uv’s foss model

Re: Uv is the best thing to happen to the Python ecosystem in a decade

#844
post #843

I predict it'll be the best and then the 'worst' thing: they'll go hard on monetisation. Just look at this post: 1839 points and 1048 comments! That is insane. It's captured the hearts and minds of Python devs and I'm sure they know it. I'm not against projects making money, just remember you'll likely pay a price later on once you invest in more of Astral's ecosystem. It's just temporarily free.

They’ve been very transparent about their monetization strategy and it does not impact uv’s foss model

That's just marketing. Only time will tell. I'll be very happy to be wrong

Re: Uv is the best thing to happen to the Python ecosystem in a decade

#848

The sticking point for me is the way tools like uv and poetry build everything around the idea of a "project". I don't want a separate environment for every project, and I don't want to start by creating a project. I want to start with an environment that has stuff in it, and I start fiddling around, and gradually something comes together that eventually will be pulled out into a separate project. From what I can see…

It doesn't.

uv has a script mode, a temp env mode, and a way to superimpose a temp env on top of an existing env.

See: https://www.bitecode.dev/p/uv-tricks

That's one of the selling point of the tool: you don't need a project, you don't need activate anything, you don't even need to keep code around.

Yesterday I wanted to mess around with logoru in ipython. I just ran `uvx --with loguru ipython` and I was ready to go.

Not even a code file to open. Nothing to explicitly install nor to clean up.

For a tool that is that fantastic and create such enthusiasm, I'm always surprise of how little of its feature people know about. It can do crazy stuff.

Re: Uv is the best thing to happen to the Python ecosystem in a decade

#849

uv is spectacular But I’m utterly shocked that UV doesn’t support “system dependencies”. It’s not a whole conda replacement. Which is a shame because I bloody hate Conda. Dependencies like Cuda and random C++ libraries really really ought to be handled by UV. I want a true genuine one stop shop for running Python programs. UV is like 80% of the way there. But the last 20% is still painful. Ideally UV would obsolete t…

Ideally uv pip install mypackage should work 100% of the time, but that's far from the case.

Re: Uv is the best thing to happen to the Python ecosystem in a decade

#850
post #693

Earlier quoted context omitted.

I wish the Python ecosystem would just switch to Rust. Things are nice over here… please port your packages to crates.

I've never used a more hostile language than rust. Some people hate python and I can't understand why but such is life. One mans meat....

I don’t really hate python but would absolutely never use it as a large code base main language. I think what people hate is other people trying to use a scripting language like Python in places where you have large code bases and large teams. Scripting languages in general are terrible for that as they give you almost no compile time guarantees about anything! But I always thought that for people whose main job is not programming and whose scripts don’t get larger than a couple of thousand lines, python is a good choice… though Lisp would perhaps be even better if historically it had gotten the huge mindshare and resulting ecosystem.
Post reply on HN