3 ms·
Why do people in the Python community get so excited over announcements? I'd rather see working code, but no one cares about that in the Python universe. It is
by rqst 5y ago
Why do people in the Python community get so excited over announcements? I'd rather see working code, but no one cares about that in the Python universe.
It is always announcements, talks, conferences and if something emerges it is a bit weird like the pattern matching.
Meanwhile the Erlang people quietly produced a JIT without any advertisements.
- BiteCode_dev 5y ago> Why do people in the Python community get so excited over announcements? When you like a tech, knowing people are brewing improved perfs on it is kinky. On Python, the motto has always been "it's fast enough", "if you want perfs, don't use python", "C extensions will solve this", "we don't want to make the main implementation complicated", "python dynamism and GIL make it a hard problem", etc. So in the python world, it's particularly big news, especially given that previous attempts (gilectomy, unladen swallow, first pyston...) all died.
- WesolyKubeczek 5y ago> So in the python world, it's particularly big news, especially given that previous attempts (gilectomy, unladen swallow, first pyston...) all died. This is precisely the point you seem to be missing. All those things you mentioned were similar big announcements back in their day, and they all have just died by fizzling. What should be setting this one apart?
- BiteCode_dev 5y agoBecause Guido is paid to work on it.
- taland 5y agoThe only person with JIT experience listed there seems to be Mark Shannon. GvR may push through whatever is developed though. If that is cause for excitement can be seen when a product is finished.
- WesolyKubeczek 5y agoWhen Guido was the BDFL (but whom am I fooling, everyone still will blindly accept a PEP from him and his opinion will still weigh a ton, steering council or not), he was pretty actively against any kind of bytecode-level optimization even though a lot could be done that way, citing “simplicity” and “readability”. Most Python core developers have had pretty much a Pavlovian response to shut down any and all such discussions. I think they could get away with it for a while because none of the competing implementation would readily steal Python’s darlings, namely NumPy/SciPy and Tensorflow. Now there is competition, and it can really push CPython away to being a niche “reference implementation”, thus we are seeing these twitches. The track record of CPython core team in the last decade makes me very wary when it comes to bringing in such features. Ship it or it didn’t happen. P. S. Microsoft once threw a large sum of money at Kenneth Reitz to work on Requests, anyone remembers how that story ended?
- BiteCode_dev 5y agoReitz is no core dev, guido has always delivered. His track record is flawless. However, the first release will probably suck like asyncio or type hints did. It will take time to become usable, but it's unlikely it won't happen.
- tla100 5y agoWhat track record does GvR have in terms of speeding up CPython? He did not care for 3 decades (which is a defensible position given C extensions) and has been literally called "the boat anchor" by another HN member many times. Mypy was Jukka Lehtosalo's work, asyncio was fixed and extended by many. So now he needs a project at Microsoft, he changed his mind (or had it changed under pressure) and this is the project. We'll see, I agree though that the first version will be underwhelming, the following versions will have a max speedup of 50% but will be celebrated at conferences and here.
- BiteCode_dev 5y agoSorry, I don't debate with throwaway accounts, they are usually trolls.
- dragonwriter 5y ago> All those things you mentioned were similar big announcements back in their day Also, most of them released working code. So I guess we shouldn’t be excited about that, either.
- coldtea 5y ago>Why do people in the Python community get so excited over announcements? I'd rather see working code, but no one cares about that in the Python universe. Because almost everything you've seen as 'working code' started its life as an announcement. And because to coordinate and discuss future work, there would need to be some announcements. And because some announcements (based on the persons, e.g. here GvR is involved) or the funding (e.g. here MS is involved) or the specificity (e.g. here 3.10 timeframe is discussed) are more important than others. >Meanwhile the Erlang people quietly produced a JIT without any advertisements. Good for them. That's maybe because much fewer care for Erlang (and thus for the advertisements) related to Python (which has a much larger dev base), so the advertisements of the former are posted fewer times and discussed by fewer people.
- HUSSTECH 5y agoJust to add on the coordination point. Python has a large user base, and that's not to say larger user numbers equals better/superior. So the broadcasting of intention or direction is certainly welcome. Not only is it a large user base, but a varied one too. Flask, Django, FastAPI, Twisted...and that is just to name the web frameworks! We have scientific use, research use, cli tools. Perhaps in some cases end users (developers or not) of those tools may not be aware Python is the foundation of said tool. Anecdotally the Erlang users I've met have been incredibly knowledgeable and in tune with the language features and development. I find that pretty cool. In my opinion, an argument can be made that Elixir is the most prominent web framework for the language, so developers can just keep up with that and not the language if they wish. Compared to the Python ecosystem. As Erlang inevitably grows in popularity, it too may fragment.
- dragonwriter 5y ago> Meanwhile the Erlang people quietly produced a JIT without any advertisements. Er, no, they didn’t, they made plenty of announcements before the release, most of which even made their way to HN.
- kzrdude 5y agoThis project has already submitted a few small changes into cpython, like https://github.com/python/cpython/pull/25069 https://github.com/python/cpython/pull/25069 and https://github.com/python/cpython/pull/25729 https://github.com/python/cpython/pull/25729