6 ms·
Being new to python, the astral stuff is such a relief. I don’t think experienced python folks realize how much the flexible tooling slows people down, and cre
by scosman 2y ago
Being new to python, the astral stuff is such a relief.
I don’t think experienced python folks realize how much the flexible tooling slows people down, and creates friction for adopters. Setting up my project I tried 3 environment managers, 2 type checkers, 3 formatters/linters, 3 packagers/dependancy/project managers.
I know this is kinda the n+1 issue where astral is just adding another. But it feels like a complete and well designed stack, not a box of parts encouraging me to build my own. Reminds me a bit of go tooling.
I am a convert. I’ll happily jump on their type checker and packager when ready.
- kstrauser 2y agoI’ve been writing Python for 25 years and I love love love ruff and uv and friends.
- kibwen 2y ago> I know this is kinda the n+1 issue where astral is just adding another. My bugbear with that XKCD is that even if it's true, it's also how progress is made. By this point I'm so annoyed whenever anyone links it that I kinda just wish Randall would take it down.
- tubthumper8 2y agoYeah, and that comic is about standards anyways, not tools, so it's doubly annoying when it's linked out of context
- earnestinger 2y ago> it's also how progress is made Introducing n+1 solution/ standard may be the necessary cost of making progress, but it is possible to incur that cost without gaining anything (at the extreme, trolling is fun activity with net negative on bigger scale)
- scosman 2y agoYeah but still seems relevant when complaining there are too many options and praising the n+1 option
- nosefurhairdo 2y agoI primarily work on typescript projects, little bit of go. Never enjoyed working with python until I found uv. Glad to see folks rally around astral's tools.
- jmorenoamor 2y agoI started with python dependency management just executing pip install and thinking wow that's cool. No envs, no linters or formatters. The point is, if you are learning to code, you can skip nearly all the ecosystem tools. Their need will arise when the time comes.
- scosman 2y agoYeah but a global environment is a really bad idea. It’s going to trip up those beginners when second project that requires a different version of pytorch.
- Hackbraten 2y agoAnd when they try to revisit their project one year later only to find it broken.
- atkailash 2y agoThis is why I tried ruff, managing the different settings and stuff and an experienced Python person was getting tedious. Now I have one tool. I moved to poetry for things a bit ago until I found out about uv recently, it’s so fast I thought it didn’t even do what it asked a couple times.
- giancarlostoro 2y agoI used to use any standard editor but these days I use PyCharm or Visual Studio (not Code) otherwise, I just use Sublime Text or any adjacent reasonable editor. Elementary OS has the nicest editor that other Distros have not snatched up yet not sure why. Its fast, and fits the bill where KATE and Sublime Text are for me.
- zahlman 2y ago>Setting up my project I tried 3 environment managers, 2 type checkers, 3 formatters/linters, 3 packagers/dependancy/project managers. I've been using Python for right about 20 years now. I've been through various prior iterations of the "standard" packaging tools. But I've never found myself wanting a type checker, formatter or linter; and aside from a brief period with Poetry (in which I used barely any of its functionality), I've had no interest in dependency management tools, either. What I have found myself wanting is fixes for the problems in Pip. Different people work on different kinds of projects, and approach the language differently, and have radically different needs as a result.
- pansa2 2y ago> I've never found myself wanting a type checker Do you still write type hints, but not check them? Or just use dynamic typing as in Python 2? Actually, I guess the first case is really type-hints-as-comments, so isn't substantially different from the second. > I've been using Python for right about 20 years now Either way, I've found it quite common among long-time Python users to stick with Python's traditional dynamic typing, whereas newcomers to the language tend to really dislike it in favour of strict static typing. (One exception is GvR himself, who seems to be very pro-type-checking.) As the second group continue to add increasingly complex typing features to the language, I wonder if Python is becoming less desirable for those in the first group.
- zahlman 2y ago>Do you still write type hints, but not check them? Or just use dynamic typing I occasionally write them as a form of documentation - when it would be more concise than explaining in prose. There is nothing specifically 2.x-style about making use of dynamic typing - it's a core property of the language. While 3.0 introduced the annotation feature, it wasn't even specifically intended for typing (https://peps.python.org/pep-3107/ https://peps.python.org/pep-3107/) and standard library support wasn't added until 3.5 (https://docs.python.org/3/library/typing.html https://docs.python.org/3/library/typing.html). >As the second group continue to add increasingly complex typing features to the language, I wonder if Python is becoming less desirable for those in the first group. Some new changes have been missteps, in my view. There's still nobody forcing my hand when it comes to typing, really; I just shake my head when I see people trying to make it do things it really wasn't designed for. On the other hand, there are definitely things I'd love to see improved about the language.
- ubercore 2y ago`uv` really is amazing.
- coldtea 2y agoExperienced Python folks have Stockholm Syndrome about its tooling, even rejoice at all the "options" for things like dependency managers.
- globular-toast 2y agoPeople just need a mentor. Could you imagine getting into plumbing and just trying to work out what kind of tools you need by looking at the pipes? Of course not. You'd learn from someone else.
- scosman 2y agoI’ve been coding for 25 years. I don’t need a mentor. I want nice tools when I try yet another language.