Skip Navigation

Posts
1
Comments
285
Joined
3 yr. ago

  • especially when doing data science

    500MB for Ray, another 500MB for Polars (though that was a bug IIRC), a few more megs for whatever binaries to read out those weird weather files (NetCDF and Grib2).

  • Downside: "^1.2.3" as default versioning for libraries. You just pinned a version? Oh great, now I can't upgrade another library because you had to pin something in yours...

    That non-standard syntax has been a PITA for the last few years. That being said: They created that syntax for regular applications (and not for libs) in a time when the pyproject.toml syntax was not anywhere near finalization.

  • I bet it’s darn amazing,

    It is. In this older article (by Anna-Lena Popkes) uv is still not in the middle, but I would claim it's the new King of Project Management, when it comes to Python.

    uv init --name <some name> --package --app and you're off to the races.

    Are you cloning a repo that's uv-enabled? Just uv sync and you're done!

    Heck, you can now add dependencies to a script and just uv run --script script.py (IIRC) and you don't need to install anything - uv will take care of it all, including a needed Python version.

    Only downside is that it's not 1.0 yet, so the API can change at any update. That is the last hurdle for me.

    1. let pyproject.toml track the dependencies and dev-dependencies you actually care about
    • dependencies are what you need to run your application
    • dev-dependencies are not necessary to run your app, but to develop it (formatting, linting, utilities, etc)
    1. it can track exactly what's needed ot run the application via the uv.lock file that contains each and every lib that's needed.
    2. uv will install the needed Python version for you, completely separate from what your system is running.
    3. uv sync and uv run <application> is pretty much all you need to get going
    4. it's blazingly fast in everything
  • pip3 freeze > requirements.txt

    I hate this. Because now I have a list of your dependencies, but also the dependencies of the dependencies, and I now have regular dependencies and dev-dependencies mixed up. If I'm new to Python I would have NO idea which libraries would be the important ones because it's a jumbled mess.

    I've come to love uv (coming from poetry, coming from pip with a requirements/base.txt and requirements/dev.txt - gotta keep regular dependencies and dev-dependencies separate).

    uv sync

    uv run <application>

    That's it. I don't even need to install a compatible Python version, as uv takes care of that for me. It'll automatically create a local .venv/, and it's blazingly fast.

  • Python’s tooling is a mess.

    Not only that. It's a historic mess. Over the years, growing a better and better toolset left a lot of projects in a very messy state. So many answers on Stack Overflow that mention easy_install - I still don't know what it is, but I guess it was some kind of proto uv.

  • We live in a patriarchy

    I don't even know what this means anymore.

  • Oh hell yeah, Category Theory! LET'S GOOOOO!

  • I would argue that the Republicans are a symptom as well, the whole USA democratic structure will only enable a 2-party system. The whole systemic structure is rotten.

  • The "Infinite monkey theorem" concerns itself with Probability (the mathematical field). It has been mathematically proven that given the random input (the mathematical kind - not the human-created kind) of the monkeys, and the infinite time, the probability of the "complete works of William Shakespeare" rolling out of the typewriter in between the other random output is 1.

    It's a mathematical theorem that just uses monkeys to speak to the imagination, not a practical exercise, other than to prove the maths.

    You should look into another brain-breaking probability problem called the "Monty Hall Problem". Note that some of the greatest mathematical minds of the time failed said puzzle. Switching 100% increases the chance of winning. No, it won't guarantee a win, but it will increase your chances, mathematically.

  • Aw boo! Where is your sense of fantasy!?

  • Luke Smith made video about this several years ago: Virgin "Open Source" vs Chad Free Software

    He ends the video with "I don't care if the boot-stamping on my head is proprietary or open source. I don't want a boot stamping on my head. That's what Free Software is about, okay!?"

    This has been going on for a while, but it's good to shine a light on it once more.

  • "for I, the LORD your God, am a jealous God" - Exodus 20:5

    Says it all, really. This whole character trait is that he's a jealous little asshole. He's like Dolores Umbridge.

    I'm aware Christians may make counter-claims, but I've read the old testament, and all he does is to come off as an absolute asshole - you either worship me, or else!

    I wasn't too surprised (but it made sense) that he (Elohim) originally came from the Canaanitic pantheon. How else can you be the only god, yet people shouldn't worship other gods? He's not, that's how.

    /rant

  • Determinate Nix is not a fork of Nix—it is a downstream Nix distribution. Its

    Ah, I initially figured they would've forked it. Good, as it'll prevent the community in general to completely split and potentially splinter.

  • *Freedom of Expression

    We don't have Freedom of Speech, but we do have Freedom of Expression. Important difference, even though it may freak out some Americans.

  • LineageOS, maybe? Still Android, but (AFAIK) more open to change than standard Android.

  • So sad when it happens…

    I don't follow - do people still seriously use SMS? I for one try to use it as little as possible.