4 ms·
There are some differences indeed: - python is more active than most alternatives, you have new packages created every day. - python is massively used outside
by BiteCode_dev 5y ago
There are some differences indeed:
- python is more active than most alternatives, you have new packages created every day.
- python is massively used outside of the web, unlike JS, ruby or PHP, that are 99% web. You get Python in SIG softwares, data analytics, automation, pen testing, sysadmin, biology, etc. It's a huge graph.
- python is used by the distro themselves to code features of the OS. E.G: you remove Python, there is no yum.
- python has a rich compiled extensions ecosystem, produced from c, c++, fortran, and assembly. It's very complicated to ship them.
- it's much more common to have several Python installed than for other dynamic languages. So isolation matters even more.
So the difference is the sheer size of the problem.
- nerdponx 5y agoThat's a good analysis, thanks. But I don't think any of it justifies the ire towards Python, its community, or its devs that was expressed in the blog post. I also do want to point out that there are quite a lot of general-purpose CLI tools written in Perl, Ruby, and Node.
- BiteCode_dev 5y agoThe distros devs live in their own world, they don't have to work on a fast api service connected to a sap db that must run on windows with no admin rights for dev but must be deployed on centos 7.
- hatsuseno 5y agoAside from the variety of languages in the extension ecosystem, how does this explain Perl doesn't generally share these dependency issues?
- BiteCode_dev 5y ago> Aside from the variety of languages in the extension ecosystem That's a big one to omit. But alright, I'll play. It has much less packages, it's almost never used on windows, it has stopped being popular 10 years ago, it doesn't have anaconda because it's not a "corporate tech", you rarely install several versions of perl on the same system, you don't make enough projects with perl to justify one isolation per project, nobody moved to perl 6 so the all CPAN transition never had to happened, perl is not used to script DB/GIS systems/3D engines/IDE, perl is not used by millions of non coders (geographers, mathematicians, physicists, bankers, etc) that have no idea how their machine work. But to be honest, the nail in the cofin is that distros decided not to split perl and cpan in separate packages. In fact, in somes distros, perl and cpan are already installed and ready to be used. So for linux: - python: you must decide among several python, then intall the right package to use pip and venv, isolate your install with venv. The procedure is different for windows. Also 2.7 is a thing. - perl: you have one perl that hasn't change for years, no new packages, it's already installed, cpan is installed as well, and it's not gonna break your system if you use it. You don't care about windows. Perl 5 forever.