Is python not backwards compatible? I thought it would be since all the old modules are the same without them making a python 4 (they just change system libraries and compilation stuff).
Python has a lot of versioning issues... look at all the "Python 2" vs "Python 3" issues... but then 3 was intentionally
not backwards compatible.
This article explains the new features in Python 3.0, compared to 2.6. Python 3.0, also known as “Python 3000” or “Py3K”, is the first ever intentionally backwards incompatible Python release. There are more changes than in a typical release, and more that are important for all Python users. Nevertheless, after digesting the changes, you’ll find that Python really hasn’t changed all that much – by and large, we’re mostly fixing well-known annoyances and warts, and removing a lot of old cruft.
Also, various linux distros all use different "default" versions... which can and do cause problems for users when they are attempting to use various apps that rely on specific versions. There are very good reasons why the Electrum devs put out the "AppImage"