@fooflington Yeah, we're kind of stuck with some things like this for historical reasons.
I would suggest the first one isn't really so inconsistent, though; Python generally seems to prefer external function calls over standard object methods for these things. I don't think there are really any "universal" object methods that are meant to be called by user code - nothing like toString() in Java, for instance. It's just a design choice one has to get used to.
#Python is quite nice for a lot of things (spake the Perl/Java programmer).
Please don't hate me but there are a few things about it that really wind me up.
list(thing) rather than .toList() and len(thing) rather than thing.len())print() implicitly inserting spaces between argumentsjoin() being backwards (to my mind), calling against the delimiter messes with my brain🤖🪟 #Microsoft виклали серію лекцій «#Python + #AI»
Всередині 9 лекцій з відео, презентаціями та кодом, які дозволяють зануритися в #AI-розробку. Серед тем — RAG, ембеддинги, агенти та MCP-протокол.
🔗 https://github.com/orgs/azure-ai-foundry/discussions/166
Concurrent to all the shenanigans from the Rails maintainer, the Python Software Foundation withdrew a U.S. federal grant proposal (for supply chain security, no less; see the announcement for details) because of the anti-DEI clauses in the terms and conditions of the potential award. "[I]t would be a betrayal of our mission and our community." https://pyfound.blogspot.com/2025/10/NSF-funding-statement.html #python
I joined the Python Software Foundation today. In a tech world of donors to vainglorious ballrooms, the PSF continues to stand for people. Let's show them our appreciation.
https://pyfound.blogspot.com/2025/10/NSF-funding-statement.html
Looked at Django-Bolt, which seems worth keeping an eye on. But right now it just doesn't feel very... Django-esque? Djangonic? Like idiomatic #Django, in other words.
In particular, the need for an instantiated API singleton, and the decorator-based approach for adding routes to that singleton both stand out. They make it feel a bit like other API design patterns from e.g. Flask and FastAPI have been, well, bolted onto Django.
Huge kudos to the PSF for standing on principle and making a difficult decision.
> "Ultimately, however, the value of the work and the size of the grant were not more important than practicing our values and retaining the freedom to support every part of our community. The PSF Board voted unanimously to withdraw our application."
With so many orgs going "no politics" or straight up obsequiousness to those in power, #Python stewards and community continue to impress.
https://pyfound.blogspot.com/2025/10/NSF-funding-statement.html
The PSF has withdrawn a $1.5 million proposal to US government grant program https://lobste.rs/s/9l9wvp #python
https://pyfound.blogspot.com/2025/10/NSF-funding-statement.html
New episode just dropped:
NiceGUI Goes 3.0 with Rodja Trappe, Falko Schindler, and host @mkennedy #python #nicegui
https://talkpython.fm/episodes/show/525/nicegui-goes-3.0
I mentioned in my @pybay welcome – #Python's vendor-neutral governance is what's made Python be successful at keeping up (and keeping ahead) of the tech industry for 30 years.
@ThePSF cannot serve private interests. We can only support what's good for the language and growing its community. And even more importantly, our board is accountable to that community.
Is that true of your preferred language's governance and nonprofit?
HELL YEAH PYTHON #python
I would be glad to donate to the #Python project, but doing so requires me to divulge my name and contact information as per their 501(c)(3) charitable organisation status:
"Contact information is required for tax reporting purposes and will be shared only with the US government."
Considering the current status of the US government, I don't feel comfortable doing this. Are there some other ways to donate to Python project without getting the US government involved?
- https://pyfound.blogspot.com/2025/10/NSF-funding-statement.html
- https://psfmember.org/civicrm/contribute/transact/?reset=1&id=2