Last year I learned about Byte Order Mark (BOM), and how imports of CSV files generated on Windows should be decoded as “utf-8-sig” instead of “utf-8” when using Python `csv.reader()`.
That lesson saved me a lot of time today.
Last year I learned about Byte Order Mark (BOM), and how imports of CSV files generated on Windows should be decoded as “utf-8-sig” instead of “utf-8” when using Python `csv.reader()`.
That lesson saved me a lot of time today.
Extra background info courtesy of
@jscholesJames Scholes:
> “The wider issue is that many Python programs are written with no explicit `encoding` argument in `open` calls, implicitly expecting UTF-8 because that's often the default on Unix systems. But it usually is not the default on Windows.”
> “As I understand it, that's set to change in Python 3.15:”
Last year I learned about Byte Order Mark (BOM), and how imports of CSV files generated on Windows should be decoded as “utf-8-sig” instead of “utf-8” when using Python `csv.reader()`.
That lesson saved me a lot of time today.
How often does Python allocate?
Link: https://zackoverflow.dev/writing/how-often-does-python-allocate/
Discussion: https://news.ycombinator.com/item?id=45786041
Premiers essais de glitch art avec #Python, et vraiment pas mécontent du résultat ! #glitchart #photography #vosges
J'ai enfin soigné la vitrine de mon blog Github. Du datajournalisme documenté en notebooks #Python en veux-tu, en voilà ! #ddj https://github.com/raphadasilva/blog_rdasilva
Most Python classes use a dictionary (__dict__) to store their attributes.
Some classes use a more memory efficient mechanism for attribute storage.
More in my new screecast on __slots__: https://pym.dev/__slots__
Hey there fellow nerds, ready for a niche blog post about something that I think is important and seemingly no one else cares about? I got you covered:
"The Case for Standardised Time Range Variable Names"
https://danielquinn.org/blog/the-case-for-standardised-time-range-variable-names/
🌟 "Shadows of the Golden Door" returns! 🚀
A #Python #Pygame game revived with polished visuals, audio, and smoother performance. Ready for the next stage: Release Prep! 🚧
Check out the full update and get involved here: Shadows of the Golden Door https://github.com/bijiyiqi2017/ShadowsOfTheGoldenDoor
#IndieDev #GameDev #OpenSource
@brettcannon on the one hand; yes, boosted. On the other: this effort was spearheaded by me, personally, and 4 friends in the community, over the course of 7 days. We received matches from just over 100 donors from the community out of an audience of potentially millions, and notably, zero corporate donors. The fact that *we* were able to accomplish this and get to *2%* of the financial power the US federal government was able to deploy shows that there is a lot of headroom to keep going here
@glyph
@brettcannon I'm out on a limb here since I don't really know how corporate donation programs work, but I imagine that at a lot of companies it wouldn't have been possible to get a donation approved within the time frame of your campaign. There's just too much bureaucracy to go through. (Heck, in my experience it sometimes takes weeks or months to pay *invoices*.) Plus, I think companies are less influenced by matching programs than individuals are. So I think there are explanations for why you didn't see any corporate donations that aren't just "companies can't be bothered to support the PSF". (But I am also not denying that most companies don't want to support the PSF)
Forget about trying to get your company to support something abstract like the PSF.
You use PyPI: you know, the place that pip installs from. Wouldn't it be bad if `pip install` stopped working? Support the organization that runs PyPI instead.
Surprise, it's the PSF! Support the PSF! Your company depends on #Python. You want it to keep working and keep being good.
Support the PSF. https://www.python.org/psf/sponsors/
For a work-related open source project, we discussed raising the minimum python version: a feature only worked on python 3.12, and failed on lower versions. Would it make sense to make 3.12 the minimum? 1/6 🧵
SPy: An interpreter and compiler for a fast statically typed variant of Python
Link: https://antocuni.eu/2025/10/29/inside-spy-part-1-motivations-and-goals/
Discussion: https://news.ycombinator.com/item?id=45761594
Hypothesis: Property-Based Testing for Python
Link: https://hypothesis.readthedocs.io/en/latest/
Discussion: https://news.ycombinator.com/item?id=45818562
Design Pressure: The Invisible Hand That Shapes Your Code https://lobste.rs/s/1kfakg #video #practices #python
https://www.youtube.com/watch?v=msKPhXNi-A8
If you don't maintain a library where your users would benefit from delayed string interpolation or automatic pre-processing of inputs, then you don't need to think about t-strings until a library tells you to use one.
Read more 👉 https://trey.io/n4mlgb
Did you know
@ThePSFPython Software Foundation is a charity that runs on a budget that is a vanishingly small proportion of the money that Python-using corporations make, but we still put on PyCon US, run PyPI, and (try to) fund grants that support Python events all around the world.
Changes in the tech and politicial landscape make it ever harder to fund the essential work we do. If #Python is part of your life, read this post that connects the dots, and consider donating or sponsoring our work: https://pyfound.blogspot.com/2025/10/connecting-the-dots.html
One huge part of #Python's success is a governance process that's owned by the community, and doesn't give Big Tech an outsized voice – let alone the ability to make decisions. That's how Python's been in the right place at the right time for more than 30 years now.
But that means we can't charge millions of dollars for favourable treatment. This limits our revenue! But it also means if you're a small donor or sponsor, you – and the whole community – will absolutely benefit from your gift.
Did you know
@ThePSFPython Software Foundation is a charity that runs on a budget that is a vanishingly small proportion of the money that Python-using corporations make, but we still put on PyCon US, run PyPI, and (try to) fund grants that support Python events all around the world.
Changes in the tech and politicial landscape make it ever harder to fund the essential work we do. If #Python is part of your life, read this post that connects the dots, and consider donating or sponsoring our work: https://pyfound.blogspot.com/2025/10/connecting-the-dots.html
Hey all, this
@ThePSFPython Software Foundation blog post is special, it connects the dots, on where the PSF is financially, and how we’ll sustain it to serve its mission in the future. This transparency is key and an invitation to build together.
You all know that Python became the connective tissue of modern computing because of everyone (maintainers, educators, library/tools authors, companies, user groups and conferences, you!) invested time into the Python community.
https://pyfound.blogspot.com/2025/10/connecting-the-dots.html (1/2)
Among them, the tiny but mighty PSF team. Now’s the time to invest to enable the PSF to continue its mission.
So if your org runs on Python, please consider sponsoring the PSF: https://www.python.org/psf/sponsorship/
If Python shaped your career, consider becoming a Supporting Member: https://www.python.org/psf/membership/supporting/
And never hesitate to share your “why” via social media, how Python helped you, spread the word.
I’m in. Join me!
https://pyfound.blogspot.com/2025/10/connecting-the-dots.html
#Python #OpenSource #PSF (2/2)
The November edition of the PSF Board Office Hour is about to begin 🐍 🗒️ 2 PM UTC. Join us to share how we can help your community, express your perspectives, and provide feedback for the PSF! #python
https://pyfound.blogspot.com/2025/10/a-new-psf-board-another-year-of-psf.html
@ThePSFPython Software Foundation 💭 A genuine question:
Should the PSF continue to sustain PyCon US directly?
It’s the flagship Python event, but it also seems to consume a large portion of PSF funds with limited benefit for the global community.
Wouldn’t it make more sense for PyCon US to rely more on external sponsorships and partnerships, instead of drawing so much from the PSF itself?
Also, how much support do regional PyCons receive by comparison?
Read the full post to see how the PSF is tackling these challenges and how you can help power the future of Python. Many of you have donated in the past week- so we are looking for you to help us with reach. Please share this story, boost our upcoming fundraiser posts, and most importantly, tell the world your #Python story!
When we shared last week that we withdrew from a U.S. government grant due to conflicts with our mission, the community showed incredible support. 1400+ donors and 270+ new members raised $135K+ in solidarity– thank you!! We've also had 3 new companies apply for sponsorship 🤯🥰
The #python library #aiohttp uses #yarl for URLs internally, and yarl normalizes URLs by default. It silently decodes some %-encoded characters in the query string that do not strictly need to be encoded.
Sounds harmless, but it isn't. Changing the URL breaks any protocol that signs important aspects of a HTTP request for security.
Took me a while to find this bug. I usually expect an HTTP client library to not silently manipulate the URLs before sending a request. Smarter is not always better
Apparently I'm going to have some articles, screencasts, and curriculum to update after 3.15 is released! 😅
Python SC accepted PEP 798
PEP: https://peps.python.org/pep-0798/
Acceptance: https://discuss.python.org/t/pep-798-unpacking-in-comprehensions/99435/60
So this:
[*row for row in list_of_lists]
Will do the same thing as this:
[x for row in list_of_lists for x in row]
I often tell new #Python learners that there are 4-ish uses of * and 3 uses of **. That'll now be 5-ish uses of * and 4 uses of **.
Python Steering Council unanimously accepts "PEP 810, Explicit lazy imports"
Link: https://discuss.python.org/t/pep-810-explicit-lazy-imports/104131?page=23
Discussion: https://news.ycombinator.com/item?id=45800967
We are counting all of these donations and new members as the prequel to our end-of-year fundraiser 📈 Stay tuned for more information on the fundraiser– and if you’ve already donated, you can still support us through the end of 2025 by sharing your #Python stories and boosting our posts!
Finally, we want to share that everyone at the PSF is full of hope, courage, and strength- because of each and every one of you in the #Python community. We’ve continued to hear from you across a multitude of platforms with messages of support and encouragement– each of which we truly treasure 🥹
If you’re interested in donating or becoming a member and would like to *double* your contribution, make sure you jump on the matching campaign generously organized by Glyph and others. It ends tomorrow (Nov 4th), so don’t wait! https://mastodon.social/@glyph/115459561050304121
We are counting all of these donations and new members as the prequel to our end-of-year fundraiser 📈 Stay tuned for more information on the fundraiser– and if you’ve already donated, you can still support us through the end of 2025 by sharing your #Python stories and boosting our posts!
Why We Migrated from Python to Node.js
Link: https://blog.yakkomajuri.com/blog/python-to-node
Discussion: https://news.ycombinator.com/item?id=45800955
The Steering Council has accepted PEP 810 (explicit lazy imports) for Python 3.15!
https://discuss.python.org/t/pep-810-explicit-lazy-imports/104131/466
I wrote a bit about what went on at the recent Python Core Sprint at #Arm in Cambridge, plus some bonus
@PyConUK highlights.
🐍 We are happy to announce that we will again be running a Python devroom at FOSDEM 2026 (https://fosdem.org/2026/).
🌍 FOSDEM 2026 will take place on the weekend Jan 31 / Feb 1 2026 in Brussels, Belgium, with the Python devroom being held on Saturday, Jan 31.
📅 The Call for Proposals (CFP) has started. Submission deadline is December 1 2026
For full details, please check the announcement email at: https://gist.github.com/malemburg/4f2d1ceeb24d26c35740390cf712af5e
thanks to the amazing #DjangonautSpace program, i recently started contributing to #django . i documented the journey towards my first PR in this getting-started walkthrough - hope it's helpful to you new contributors out there: https://dev.to/annalauraw/your-first-django-pr-from-scratch-to-improved-patch-5b2f.
with huge thanks to
@djangonautDjangonaut Space 🙏
#python #OpenSource #contribution #WebDev
Introducing runtime_introspect v0.2.0 !
https://github.com/neutrinoceros/runtime-introspect/releases/tag/v0.2.0
This versions introduces high level, portable APIs like
- FeatureSet.supports("free-threading")
- FeatureSet.supports("JIT")
- FeatureSet.supports("py-limited-api")
making it possible to inspect availability for specific features at runtime with *very* little code (turns out solving this problem in the general case is complicated enough that I only want to do it once).
For instance
from runtime_introspect import runtime_feature_set
fs = runtime_feature_set()
if fs.supports("free-threading"):
... # cool multi-threading stuff
else:
... # less cool, single threading stuff
every non-EOL version of #CPython (including unstable ones, #Python315) are supported.
🐍📅✨ Our Python Meeting Düsseldorf is running a Python Sprint / Hackathon at the offices of Atos in Düsseldorf on the weekend of Nov 15./16.
🚀 If you happen to be around, please do consider registering. Sprints are usually lots of fun. You can learn a lot and work with likeminded people on cool projects.
🤝 Here's the Meetup page with the registration: https://www.meetup.com/python-meeting-dusseldorf/events/311837125/
Making an Easy-to-Install Application in Python https://lobste.rs/s/xtfzxb #python
https://gokmengorgen.net/2025/11/02/making-an-easy-to-install-application-in-python/
People who are newer to Django often do not know about these great resources and the richness of the Django ecosystem. Spread this link please! #python #django https://www.djangoproject.com/weblog/2025/nov/02/five-ways-to-discover-django-packages/
Update: a few hours before the deadline, we reached the goal!!!
This week, the #Python Software Foundation rejected a $1.5MM NSF grant, due to a requirement that the PSF abandon diversity work.
So I joined forces with Python folks (
@offby1Chris is.,
@petrillicChris Petrilli,
@amethystAmethyst 🌸) and we're matching up to $12,000 of donations to the PSF. 🧵
@glyph
@offby1Chris is.
@petrillicChris Petrilli
@amethystAmethyst 🌸
@Yhg1sThomas Wouters
Here you go, $100π!
And thank you to
@lorenipsumLoren and Phyllis for typing up and sending all these receipt emails so quickly ⌨️🚀
It’s here!
@pyconPyCon US is live 🎉
Theme: Synthwave, bright, bold, and powered by human creativity. Not prompts.
CFP is open now. Time to plan your talk and your reason to visit California.
👉 us.pycon.org/2026/
#PyConUS #Python #PyCon
To prioritize sidewalk funding, it's useful to know where there's pedestrian demand. Walk Potential calculates this by analyzing how many of 20 different categories of amenities are within a 10-minute walk.
I'm in the process of releasing Walk Potential as a plugin for the QGIS, a free desktop QGIS app. This will make it easier for people to try it out and use.
Demo video: https://urbanists.video/w/ifWGYRor1Zwa5x9ZM9PQ79
Context: https://mark.stosberg.com/new-software-to-calculate-walk-potential-for-cities/
Pull requests wanted!
I've just opened a whole bunch of issues in the PyLadiesCon Portal repo and all of these are up for grabs.
Check it out if you know some Python, Django, and maybe a little of HTML or CSS.
#GetFediHired #Jobs #SysAdmin #Python #FOSS #FLOSS
Hey #FediHired, I'm on a #JobSearch. I'm a #Linux systems engineer and #Python developer with 15+ years' experience, based in #Melbourne, Australia. I have a high attention to detail & lots of experience working with people (15+ years community organising/Scout leading). Motivating values: free/ #OpenSource software, accessibility, diversity, equity, inclusion, privacy, and security, analysing/improving/automating systems/processes. Recent personal projects involve #Docker, #Django, #Ansible.
Ideally seek remote role with communicative/cohesive team, variety, flexible hours, ideally max 4 days/week.
LinkedIn: https://www.linkedin.com/in/mattcen/
Resume: https://blog.mattcen.com/resume/
Running every streets in Paris (using #Python) : https://app.everystreet.run/vinayak/paris ^^
#introduction post, because I need a new one.
Hey, I'm Taedryn! You'll quickly discover that I'm a #trans #femme person, who's also #nonbinary, and that's a lot of what I talk about.
I talk less about #programming in #python and #go, playing the #cello, #photography, #writing, #electronics, #aviation and my #biplane, #ttrpg, and the other biplane I'm #homebuilding in my garage. But those are important too.
The take-away you should get from all this? Huge freakin' #nerd here.
Renewables are growing nicely, which is great... but where does the energy go from there? One answer is "build lots of batteries," but that’s only part of the story. Smart energy storage means predicting consumption patterns, optimising when batteries charge and discharge, and balancing cost with reliability.
Join us on 11 Nov at Sofia Helsinki for an evening hosted and sponsored by Cactos, a company turning battery energy storage into a smart, data-driven system.
Talks:
Olli Ruokojoki: #Data Driven #Batteries: Modeling State of Charge and Health from Operational Data
Tuomas Sivula: Stochastic Models in #EnergyStorage Operating Environments
Quentin Salomé: ⚡️ lightning talk (title TBA)
Osvaldo Martin: ⚡️ #ArviZ 1.0: Refactoring for flexibility, extensibility, and power
Jouni Seppänen: #Python Visualisation Tools
⚞NEW⚟ “Trailblazing Python Security” dedicated talk track coming for #PyConUS 🛡️ 🐍🔥 We are looking for sponsors interested in supporting security in the Python ecosystem:
Hi! I'm jade
I'm a #bi, #polyamorous #trans woman from the best little island on the planet (lutruwita/Trouwunna aka #Tasmania)
I've been a professional software dev since 2014, working mostly with #Django and #Python (and tinkering with F/LOSS in spare moments)
I'm also involved in environmental and social justice activism, and sit on my local council, as a Green councillor
I enjoy queer media, RPGs, lifting weights (and did karate for ~20 years)
Super friendly, so say hi! 💜