Over a few days I wrote a bunch of #C++, #Rust, #Haskell, and #Python. Something I donβt get is that while I might say that Python has the most extensive ecosystem, it seems to have the worst tooling in terms of package management and LSP features (clangd, rust-analyzer, hls, and pylsp). How does that happen? Why donβt the economics that plow programmer hours into Python libraries raise the level of its tooling?
Conversation
Notices
-
acowley (acowley@mastodon.social)'s status on Monday, 23-Oct-2023 05:14:50 UTC acowley -
mcc (mcc@mastodon.social)'s status on Monday, 23-Oct-2023 05:14:48 UTC mcc @acowley My theory is it is because python got started on these tooling problems earlier, and made solutions of them earlier, it has worse solutions, because some of the other languages were able to look at what python did and learn from it.
Node/npm also has this problem to a weaker degree, because while it was able to learn from Python's mistakes, it wasn't able to learn from Node/npm's mistakes
Santa Claes πΈπͺππ°π likes this. -
mcc (mcc@mastodon.social)'s status on Monday, 23-Oct-2023 05:14:53 UTC mcc @acowley *This year*, I have found "pdm", and I was like "oh, this fixes it". It incorporates the previous mix of semi-broken Python tools, is compatible with the parts that work, replaced the parts that don't work, and presents a single frontend so you don't have to know the history of semi-broken tools to use this one actually working tool. Unfortunately I was not able to get it working with the LSP and I have not yet looked into whether that was "my fault" (it actually might have been)
Santa Claes πΈπͺππ°π likes this. -
mcc (mcc@mastodon.social)'s status on Monday, 23-Oct-2023 05:14:56 UTC mcc @acowley β¦but, also, from my own initial reaction, I know that if one is struggling with a chain of three python tools, being told "the solution is to learn a fourth tool!" is not a pleasant thing to hear.
Santa Claes πΈπͺππ°π likes this. -
mcc (mcc@mastodon.social)'s status on Monday, 23-Oct-2023 05:16:26 UTC mcc @ricci @acowley (Most days tho I admit I still kinda prefer it over bower, npm, and deno being three fundamentally different things, plus cjs and mjs being two fundamentally different things which may or may not interoperate and which you may or may not be allowed to mix in any particular project, leading to I think a total of six combinations between [bower, npm, deno]x[cjs,mjs] only some of which actually ever existed?)
Santa Claes πΈπͺππ°π likes this. -
Rob Ricci (ricci@discuss.systems)'s status on Monday, 23-Oct-2023 05:16:27 UTC Rob Ricci @mcc @acowley I like python as a language quite well, but *package management* is the absolutely worst place to have framework disease
-
mcc (mcc@mastodon.social)'s status on Monday, 23-Oct-2023 05:16:27 UTC mcc @ricci @acowley The good news is that each of the frameworks is built on top of the previous framework. The bad news is that from an end user perspective that's *still pretty confusing*.
-