Guys, could we, please, stop spreading FUD and nonsense about Python?
And conflating incompetence of developers using with some sort of inherent misfeature of the language?
- First, distributing applications written in Python - if you are downloading Python scripts, you are doing it wrong. Or rather whoever has published the code (and it is meant to be an application) did. Python can be compiled and packaged into a self-contained executable, as any other Windows application without issues.
There is PyInstaller, there is fbs, there is freeze and probably a few other tools that can be used for that.
If the author of the program you are using didn't do this and is distributing a bunch of .py files with a dependency hell, blame them, not Python. That's like downloading C source code from Github and complaining about the C language conspiracy of Kernighan & co because you need to find and learn to use a compiler.
- Python versioning - again, if some software works only with certain versions of Python, that's hardly Python's fault. The major Python versions are very well backwards compatible, so pretty much anything that runs in 3.0 will work in the current 3.10.5. So just use the current up to date version (or at least something reasonably recent - like 3.8 when 3.10 is current) and you will be fine.
The major break was between Python 2 and 3 - but that's more than 14 years back and everyone had ample time to adjust and update their code. Python 2 has been EOL-ed since 2020.
One exception to this are binary extensions for Python which must be compiled for the matching Python versions (not every minor/patch, there is a defined ABI). However, properly written/setup Python package will handle that for you, including downloading pre-built packages so you don't even need a compiler setup on your own machine (it will compile only if the prebuilt binary isn't available for your version of Python, which is rare).
If this is not set up properly, complain to whoever wrote and published that piece of crap, not Python. Python has all the tooling and infrastructure to support this in place. That's no different than having a C library compiled with wrong options or for a wrong architecture and now one can't use it. Is that somehow fault of C or compiler developers?
However, most Python code does not use/need binary extensions apart from the commonly packaged, standard stuff (parts of Python's standard library, Numpy, Pandas, maybe Tensorflow if you are doing machine learning), etc. I probably didn't have to deal with compiling a Python extension (or even seen one compile as in most cases it is automatic) in at least two years - of daily Python development for work.
- Python's incompatibility with older Windows - that's simply because the toolchains for Windows stopped supporting the older Windows releases. Certainly, one could use old versions of Visual Studio - but that blocks the development of Python (and everything else) on an old version of C/C++, causes a ton of maintenance and support issues (different versions of code need to exist and be supported - a highly nontrivial stuff when you have huge packages like Numpy or Pandas depending on it!). Keep in mind that Python developers don't have unlimited resources.
If an old PC works with an old version of an OS for you - great. But don't expect that everyone else wants/can work like that and that people will support these old systems with current software releases (you can always use an old release, it will work fine) forever, no matter what problems it causes. At least not for free. If you do need such support for old machines for business reasons, you can always pay for it and you will get the stuff built for you.
ActiveState is one of such companies when it comes to Python, for example.
- Concerning Guido van Rossum - he has not been involved with day to day work on Python at least since 2018 when he left his position as the "benevolent dictator for life" and retired. In 2019 he left even the Python Steering Council. He joined Microsoft only later in 2019. Before Microsoft he worked at Google and Dropbox - both huge Python shops.
The first version of Python that is incompatible with Windows 7 is 3.9.0, released in 2020. Long past the time Guido had any decision power or influence on Python development. And the first version that broke XP compatibility was in 3.5.0 released in 2015 - while he was at Dropbox.
It also completely ignores the fact how the decision making in Python development is done - no, it isn't a single person deciding to "break Windows 7" even if they were outright hell-bent on it.
So stop the ridiculous BS conspiracies, please.