I was fresh at university, around 2001, and our mathematics professor introduced us to Python with NumPy/SciPy as an alternative to the commercial math tools. There aren't many events that changed my career as much as that. Being exposed only to compiled languages before that, it blew my mind. It was friendly, expressive and came with batteries included.
There was a huge sense of community around Python, that I didn't really see elsewhere in the programming world. It started with these scientific libraries. Python wouldn't be what Python is today without NumPy. It was nice to see in the last years the boost of the Python scientific community, with basically anything machine learning using Python as the DSL.
Python 2 code was absolutely not "thrown away just because". Nobody made your interpreter stop working; it was never on a cloud service or anything like that. It just stopped receiving bugfixes from core team (it's open source so everyone was and is free to take over maintenance) and third-party tool and infrastructure support (notably, PyPI) doesn't take it into consideration any more.
Further, the changes were made for very good reasons, such as allowing beginners to accept user input on day 1 without opening ACE exploits in their programs, and having plain double-quoted string literals actually produce a string rather than an immutable byte buffer that vaguely assumes a generic code-page encoding, except for the contexts where it will complain if it's not plain ASCII (admittedly, this is still an improvement over trying to handle text in C with only the standard library), and making sure that decoding operations don't produce encoding errors and vice-versa, and making `isinstance(1<<64, int)` give the expected `True` result, and making `except` syntax make sense, and making sure there aren't two fundamentally different kinds of user-defined class.
And by making these changes, we actually got Python 3 in about 2.5 years (4.5 if you allow for the first couple of releases having some issues figuring out the string literal transition and other such details — I agree they were premature) and were able to offer another 11 (9) for everyone to migrate. Whereas with Raku the entire 13.5 (more like 15.5) year period was spent on design and implementation, and now there hasn't been a new stable release for almost 5 years.
That is all good and well. Unfortunately, it degenerated into a tyranny where a small group of mediocre people grabbed power, censored the infrastructure and threatened people with defamation if they didn't obey.
Most developers have left or have been driven out. The remaining ones do corporate projects that generally underdeliver.
It is striking that this article equates community with bureaucratic efforts like setting up the PSF and getting funding for the PSF. It is essentially a hagiography for the bureaucrats. The omission of Tim Peters, who was later slandered by bureaucrats, is notable.
11 comments
[ 8.6 ms ] story [ 52.6 ms ] threadThere was a huge sense of community around Python, that I didn't really see elsewhere in the programming world. It started with these scientific libraries. Python wouldn't be what Python is today without NumPy. It was nice to see in the last years the boost of the Python scientific community, with basically anything machine learning using Python as the DSL.
Though there was a developer who was forced to quit a while ago.
Further, the changes were made for very good reasons, such as allowing beginners to accept user input on day 1 without opening ACE exploits in their programs, and having plain double-quoted string literals actually produce a string rather than an immutable byte buffer that vaguely assumes a generic code-page encoding, except for the contexts where it will complain if it's not plain ASCII (admittedly, this is still an improvement over trying to handle text in C with only the standard library), and making sure that decoding operations don't produce encoding errors and vice-versa, and making `isinstance(1<<64, int)` give the expected `True` result, and making `except` syntax make sense, and making sure there aren't two fundamentally different kinds of user-defined class.
And by making these changes, we actually got Python 3 in about 2.5 years (4.5 if you allow for the first couple of releases having some issues figuring out the string literal transition and other such details — I agree they were premature) and were able to offer another 11 (9) for everyone to migrate. Whereas with Raku the entire 13.5 (more like 15.5) year period was spent on design and implementation, and now there hasn't been a new stable release for almost 5 years.
It's not community, it's meddling, toil, and folly.
Most developers have left or have been driven out. The remaining ones do corporate projects that generally underdeliver.
https://talkpython.fm/episodes/show/513/stories-from-python-...