Brett Cannon
banner
snarky.ca
Brett Cannon
@snarky.ca
#Python core developer who also works on packaging; works on Python stuff at #Microsoft (although this is a personal account). Proudly #Canadian.
Reposted by Brett Cannon
Stoked to share that the Steering Council has accepted PEP 814. frozendict is coming to Python 3.15!

discuss.python.org/t/pep-814-ad...
PEP 814: Add frozendict built-in type
After careful deliberation, the Python Steering Council is pleased to accept PEP 814 – Add frozendict built-in type. The absence of an immutable dict counterpart has been a long-standing gap in Pytho...
discuss.python.org
February 11, 2026 at 5:13 PM
Reposted by Brett Cannon
So this is dystopian as hell and I can't believe this is real...

AI agents are now writing takedown blog posts to shame maintainers for not accepting agent-generated PRs.

github.com/matplotlib/m...
[PERF] Replace np.column_stack with np.vstack().T by crabby-rathbun · Pull Request #31132 · matplotlib/matplotlib
This PR addresses issue #31130 by replacing specific safe occurrences of np.column_stack with np.vstack().T for better performance. IMPORTANT: This is a more targeted fix than originally proposed. ...
github.com
February 12, 2026 at 5:01 PM
Reposted by Brett Cannon
Do you like Typer? ⌨️

Fill the Typer developer survey and help us define its future ✨

forms.gle/uT8SYQRoxuPz...
Typer developer survey
Help us understand how Typer is used, what is needed, and help guide its decisions ⌨️
forms.gle
February 3, 2026 at 3:03 PM
Reposted by Brett Cannon
Why the French govt digital services chose #Python and #Django: “the boring stack can be upgraded easily and will still work in 20 years” -- Manuel Raynaud showcases LaSuite #FOSDEM. Open source digital collaboration apps, built as an alternative to Microsoft Teams / Office
January 31, 2026 at 5:17 PM
Reposted by Brett Cannon
Python Tip #33 (of 365):

Don't sleep on Python's keyword arguments / named arguments. 🧵

When you have the choice between a positional argument or a keyword argument, choose a keyword argument if it clarifies the argument's purpose.

#Python #DailyPythonTip
February 2, 2026 at 7:04 PM
Reposted by Brett Cannon
We need your help to advance the Python ecosystem on Windows on Arm!

Feel free to drop me a message if you want to know more.
The Python Package Porting Challenge is live!

Help close gaps in the Windows on Arm Python ecosystem by enabling win_arm64 wheels, fixing portability issues, and upstreaming improvements.

Goal: move at least 5 packages from amber to green

Explore the challenge ↓
shorturl.at/FjWGY
January 30, 2026 at 4:21 PM
Reposted by Brett Cannon
Message or email me if you'd like to receive a free ebook review copy of my workbook of Python practice questions. al@inventwithpython.com (No time pressure on this, but I just need to get more reviews for it on Amazon now that it's out. If you're a fan of my books, these reviews really help me out)
January 30, 2026 at 6:06 PM
One way to support Signal monthly is to pay for the backup service.
I was going to ask y'all to donate to @signal.org but I had to do it first.

Now that I have, please consider learning about Signal, and why privacy is important, even when you don't have anything to hide, then consider donating to help Signal continue their work. signal.org/donate
January 27, 2026 at 9:42 PM
Reposted by Brett Cannon
This is a good lesson, no matter how you come to learn it
January 18, 2026 at 3:11 PM
Reposted by Brett Cannon
Ah finally, critique of agentic coding (Gas Town, etc) from the pro-LLM side.

I respect these sort of opinions more than I do the "it's new and I don't like it" critiques

lucumr.pocoo.org/2026/1/18/ag...
Agent Psychosis: Are We Going Insane?
What’s going on with the AI builder community right now?
lucumr.pocoo.org
January 18, 2026 at 6:52 PM
Reposted by Brett Cannon
Hey if you’re looking to try/retry/find a home on the ActivityPub/mastodon shaped part of the fediverse, I will personally help you get set up, move followers, block assholes, etc

I have no interest in debating the merit of bsky-v-mastodon, purely offering help.

Reskeets welcome ✨
January 18, 2026 at 11:35 PM
Reposted by Brett Cannon
The section on performance measurements and finding bottlenecks has been significantly expanded to include cProfile/profiling.tracing, tprof, and profiling.sampling/Tachyon: www.python4data.science/en/latest/pe...
#Python #Performance
Performance
Python can be used to write and test code quickly because it is an interpreted language that types dynamically. However, these are also the reasons it is slow when performing simple tasks repeatedl...
www.python4data.science
January 19, 2026 at 5:51 AM
Reposted by Brett Cannon
The EU Commission is currently gathering feedback from open source communities in order to tailor its open source funding accordingly. Wouldn’t that also be something for @python.org?
ec.europa.eu/info/law/bet...
ec.europa.eu/info/law/bet...
#EU #OpenSource #Python #DigitalSovereignty
European Commission - Have your say
European Commission - Have your say
ec.europa.eu
January 19, 2026 at 6:58 PM
Reposted by Brett Cannon
Thank an open source maintainer today.

(Or a blogger you like :D)
When I find myself working in a big pile of metaphorical manure, I can always bring out this email I received on this day, nine years ago...
January 14, 2026 at 2:06 PM
Reposted by Brett Cannon
Hey everyone,

We literally just added 100 more trans girl scouts to the trans girl scout cookie list. The list is bigger than it has ever been in EITM history.

Go get some cookies and make a trans scout's day!
1. Did you know that Girl Scouts has, for a long time, accepted trans girls and nonbinary scouts?

Trans kids are under attack. Every year, I make a thread of trans and nonbinary girl scouts you can get your cookies from.

Lets get our cookies from them this year in solidarity!
2026 Trans Girl Scouts To Order Cookies From!
This year, consider ordering your Girl Scout cookies from a trans girl scout to make their day!
www.erininthemorning.com
January 14, 2026 at 6:10 PM
Reposted by Brett Cannon
I have a theory that those of us who were raised on IRC or AIM are absolutely insufferable in Slack to those who were not, because instead of writing a three-paragraph thing, we'll break that up into 15 comments.
January 15, 2026 at 9:41 PM
Reposted by Brett Cannon
LLMs and other tools are great, use them wisely 🧙

fastapi.tiangolo.com/contributing...
January 11, 2026 at 10:50 PM
Reposted by Brett Cannon
Wrote a short post about what getting elected to the Steering Council means to me. Baby Savannah could never believe it!

I love Python! Python is forever <3!

savannah.dev/posts/im-on-...
I'm on the Python Steering Council
I ran for a seat on the Steering Council for the 2026 term, and I was elected.
savannah.dev
December 18, 2025 at 4:59 AM
Reposted by Brett Cannon
so pumped for the ty beta to finally be here, we did so much great work it rules! astral.sh/blog/ty
ty: An extremely fast Python type checker and language server
ty is an extremely fast Python type checker and language server, written in Rust, and designed as an alternative to mypy, Pyright, and Pylance.
astral.sh
December 16, 2025 at 9:03 PM
Reposted by Brett Cannon
Just released! 🚀

🐍 Python 3.15a3!

discuss.python.org/t/python-3-1...

🔬 A new high-frequency statistical sampling profiler
💬 Python now uses UTF-8 as the default encoding
⚠️ Better error messages
🎨 Colour code snippets in argparse help: bsky.app/profile/sava...

#Python #Python315 #CPython #release
December 16, 2025 at 3:55 PM
Reposted by Brett Cannon
I’m incredibly excited to serve on this coming term’s Steering Council!

Working on CPython has been one of the most rewarding endeavours of my career. I’m so grateful to everyone who voted & honoured that so many placed their trust in me.

peps.python.org/pep-8107/
PEP 8107 – 2026 Term Steering Council election | peps.python.org
This document describes the schedule and other details of the 2025 election for the Python steering council, as specified in PEP 13. This is the steering council election for the 2026 term (i.e. Pytho...
peps.python.org
December 13, 2025 at 1:16 PM
Reposted by Brett Cannon
Wow, Nushell has progressed a ton since the last time I checked it out!

www.nushell.sh

It's fast, the syntax is nice, the data types are well balanced, that's a nice shell.

Apparently, it runs on the locked-down laptop of my current employer at a decent speed, and integrates with vscode and conda
Nushell
A new type of shell.
www.nushell.sh
December 14, 2025 at 2:17 PM
Reposted by Brett Cannon
What coding with an LLM feels like sometimes.
December 3, 2025 at 9:29 AM
Reposted by Brett Cannon
🧵 THANK YOU!! WOW! We hit our initial fundraising goal of $314,159.26 🌠 We're bursting with joy and hope- & we're not done yet!

Thanks to you, we’re rolling out two new goals:
400k (stretch)
512k (super stretchy!)

Can you help us hit our super stretchy goal? Read on ⬇️

#PythonForEveryone
December 9, 2025 at 11:52 AM