Hacker News new | past | comments | ask | show | jobs | submit login

Python is a lot older and a lot more widely used, so it’s not as easy to just change things.



Python3 is pretty close to Go in age and was a purposely compatibility breaking, so it could have easily changed things at that point and they definitely knew about the problem at that point.


The difference between 2 and 3 is way smaller than people make it out to be. I migrated a large Python 2.7 project to Python 3.8 and it wasn't a particularly painful experience. I feel that way more effort should have been directed at making 2 and 3 compatible.


It took more than a decade for the ecosystem to migrate. IIRC, a lot of effort went into making them compatible, but some things are just fundamentally incompatible and also very difficult to automate (e.g., string encodings).


I learnt Python in 2013, when Python 3 still had some serious growing pains. I switched from 2 to 3 almost overnight circa 2015 or 2016.

The last few years I cannot help but feel they were very close to making 2 and 3 play nice together, but the idea ironically lost traction because of how much Python 3 adoption had accelerated.


Python 3 is easy for a Python 2 programmer to pick up, but that doesn’t mean it’s easy to port large systems from one to the other.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: