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
-
Embed this notice
acowley (acowley@mastodon.social)'s status on Monday, 23-Oct-2023 14:14:05 JST acowley -
Embed this notice
mcc (mcc@mastodon.social)'s status on Monday, 23-Oct-2023 14:14:04 JST 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
clacke likes this. -
Embed this notice
mcc (mcc@mastodon.social)'s status on Monday, 23-Oct-2023 14:16:04 JST 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)
clacke likes this. -
Embed this notice
mcc (mcc@mastodon.social)'s status on Monday, 23-Oct-2023 14:16:06 JST 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.
clacke likes this. -
Embed this notice
mcc (mcc@mastodon.social)'s status on Monday, 23-Oct-2023 14:16:07 JST 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*.
-
Embed this notice
mcc (mcc@mastodon.social)'s status on Monday, 23-Oct-2023 14:16:07 JST 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?)
clacke likes this. -
Embed this notice
Rob Ricci (ricci@discuss.systems)'s status on Monday, 23-Oct-2023 14:16:08 JST Rob Ricci @mcc @acowley I like python as a language quite well, but *package management* is the absolutely worst place to have framework disease
-
Embed this notice