tag:blogger.com,1999:blog-85202026-04-14T10:13:51.504-04:00Python Software Foundation News  News from the Python Software FoundationOlivia Saulshttp://www.blogger.com/profile/02332425566237042576noreply@blogger.comBlogger737125tag:blogger.com,1999:blog-8520.post-61832946599159281292026-04-14T10:13:00.000-04:002026-04-14T10:13:51.470-04:00PyCon US 2026: Why we're asking you to think about your hotel reservation<p>The PyCon US 2026 team has already covered some of the <a href="https://pycon.blogspot.com/2026/04/stories-from-pycon-us-hotels.html">fun, unexpected, and meaningful reasons</a> you’ll want to stay in the PyCon US hotel block. The PSF wants to use our blog to give a different angle, to keep being transparent with you, and share a little bit of real talk on the economics of holding a conference in the US at this moment in time. The short version is, if you’re joining us in Long Beach, please book the official PyCon US hotels through your PyCon US 2026 dashboard, because bookings in our hotel block are critical to the economic viability of the event.</p><h2 style="text-align: left;">Context on hotel bookings &amp; PyCon US</h2><p>For many years, PyCon US has relied on hotel booking commissions to help pay for our conference space. This helps us keep the event tickets affordable and to continue offering Travel Grants to community members who might not otherwise be able to attend PyCon US. Once your event outgrows academic spaces, donated conference rooms, or theatre spaces, working with the hotels is the industry’s standard way to pay for a professional convention center space. You commit to a certain number of hotel nights blocked off at nearby hotels, based on your event’s numbers from previous years, and in return, you get a reduced rental charge at the convention center. If you sell enough rooms, you additionally earn a small percentage of the revenue from those rooms, i.e. a commission. If, on the other hand, you don’t sell enough rooms, you owe damages to the hotels–essentially paying the full rate for the rooms they reserved for your event but didn’t sell.&nbsp;</p><p><br /></p><p>This system has worked well for the PSF and PyCon US until this year. At the height of the pre-pandemic years, we brought in over $200,000 in hotel commissions. Even last year in Pittsburgh, we fully sold out one hotel and our total commission in 2025 was a healthy $95,909. Unfortunately, this year our hotel bookings are far behind the level they need to avoid damages, let alone earn any commission. We attribute this largely to the sad but understandable decline in willingness of international attendees, as well as some vulnerable domestic attendees, to travel to PyCon US, given the current environment. <b>The bottom line is, if PyCon US hotel booking trends continue at their current pace, the PSF is on track to owe over $200,000 in damages under our hotel contracts.</b></p><p>We are not alone in this. The travel industry has been talking about <a href="https://www.linkedin.com/pulse/2026-world-cup-peril-how-new-trump-slump-global-tensions-qux7e/?trackingId=QNdSY%2FcXdeeRK9Bweix%2Bxg%3D%3D">the slump</a> in foreign visitors to the US for months. The decline in foreign tourism revenue is also making the hotels less interested in being generous with our rates, contracts, and deadlines, since most hotels have seen declines in their bookings all year, not just during our event. Everyone is feeling the squeeze.</p><h2 style="text-align: left;">Where we’re at now</h2><p>PyCon US ticket sales are only lagging by a bit. Local attendees buy their tickets later, which is something we anticipate, but this year’s hotel bookings are lagging by a lot compared to last year:</p><blockquote style="border: none; margin: 0px 0px 0px 40px; padding: 0px;"><p dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-left: 36pt; margin-top: 0pt;"><span style="background-color: transparent; color: black; font-size: 12pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"><span style="font-family: inherit;">PyCon US Ticket sales as of April 10, 2025: 1,565</span></span></p><p dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-left: 36pt; margin-top: 0pt;"><span style="background-color: transparent; color: black; font-size: 12pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"><span style="font-family: inherit;">​​​​PyCon US Ticket sales as of April 12, 2026: 1,333</span></span></p><span style="font-family: inherit;"><br /></span><p dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-left: 36pt; margin-top: 0pt;"><span style="background-color: transparent; color: black; font-size: 12pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"><span style="font-family: inherit;">Hotel nights sold as of April 10th, 2025: 3,155&nbsp;</span></span></p><p dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-left: 36pt; margin-top: 0pt;"><span style="font-family: inherit;"><span style="background-color: transparent; color: black; font-size: 12pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;">Hotel nights sold as of April 12th, 2026: </span><span style="background-color: transparent; color: #1a2026; font-size: 12pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;">2,192</span></span></p><span style="font-family: inherit;"><br /></span><p dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-left: 36pt; margin-top: 0pt;"><span style="background-color: transparent; color: black; font-size: 12pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"><span style="font-family: inherit;">Hotel nights we need to sell by April 20th, 2026 to avoid damages: 3,338</span></span></p><p dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-left: 36pt; margin-top: 0pt;"><span style="font-family: inherit;"><span id="docs-internal-guid-9efe6fba-7fff-182d-fec6-369f1ce25ba5"></span></span></p><p dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-left: 36pt; margin-top: 0pt;"><span style="background-color: transparent; color: black; font-size: 12pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"><span style="font-family: inherit;">Additional Hotel nights needed by April 20th, 2026 to avoid damages: 1,146</span></span></p></blockquote><p>The PSF signed a contract for the Long Beach venue back in July of 2023. At that time we couldn‘t have foreseen this current situation where interest in coming to the US has sharply declined due to increased risk. In response, we have focused on attracting more domestic attendees, and that has been going pretty well, but it hasn’t made up for the macroeconomic and geopolitical impacts on our attendance.&nbsp;</p><h2 style="text-align: left;">How you can help</h2><p>We’ll need as many of our attendees as possible to book the official conference hotel before the deadline: <b>The first hotel block closes on April 20th, and the last block closes April 24th.&nbsp;</b></p><p>Booking the official conference hotel helps us keep PyCon US running and affordable and <a href="https://pycon.blogspot.com/2026/04/stories-from-pycon-us-hotels.html">it’s also a lot of fun</a> to stay where the action is. If you are planning to join us at PyCon US this year (and we hope you can because there are a lot of <a href="https://pycon.blogspot.com/2026/04/haciendo-historia-celebrating-pycon-uss.html">great</a> <a href="https://pycon.blogspot.com/2026/03/attend-pycon-us-for-a-day-of-trailblazing-python-security.html">things</a> <a href="https://pycon.blogspot.com/2026/04/python-and-future-of-ai-agents.html">happening</a> at the event this year!) then we hope you will consider booking an official <a href="https://us.pycon.org/2026/venue/hotels/">conference hotel</a>.&nbsp;</p><p></p><p>To book in our hotel block, first <a href="https://us.pycon.org/2026/attend/information/">register for the conference</a>, and then book your room directly from your <a href="https://us.pycon.org/2026/accounts/dashboard/">attendee dashboard</a>. If you need help or would like to reserve a group of rooms, please contact our housing partner Orchid: 1-877-505-0689 or help@orchid.events. Our <a href="https://us.pycon.org/2026/venue/hotels/">hotels page</a> has a full list of the four hotel options and their deadlines.</p><h2 style="text-align: left;">A final note</h2><p>We want to thank you for your commitment to the community that makes PyCon US the special event it is. We hope to see you there to learn, collaborate, and share lots of fun moments.&nbsp;</p><p>For all those who can’t be at PyCon US this year for whatever reason: you will be sorely missed and we hope to see you at a future edition of the event!</p><p>&nbsp;</p>Loren Craryhttp://www.blogger.com/profile/06125752284896762014noreply@blogger.comtag:blogger.com,1999:blog-8520.post-61253383492766852012026-04-13T14:01:00.000-04:002026-04-13T14:01:21.997-04:00Reflecting on Five Years as the PSF’s First CPython Developer in Residence<p><span style="font-family: Arial, sans-serif; font-size: 11pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">After nearly five wonderful years at the Python Software Foundation as the inaugural CPython Developer in Residence, it's time for me to move on. I feel honored and honestly so lucky to have had the opportunity to kick off the program that now includes several wonderful full-time engineers. I'm glad to see the program left in good hands. The vacancy created by my departure will be filled after PyCon US as the PSF is currently focused on delivering a strong event. I'm happy to share that </span><a href="https://about.facebook.com/meta/" style="text-decoration-line: none;"><span style="color: #1155cc; font-family: Arial, sans-serif; font-size: 11pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; text-decoration-line: underline; text-decoration-skip-ink: none; vertical-align: baseline; white-space-collapse: preserve;">Meta</span></a><span style="font-family: Arial, sans-serif; font-size: 11pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> will continue to sponsor the CPython Developer in Residence role at least through mid-2027. The program is safe.</span></p><p></p><div class="separator" style="clear: both; text-align: center;"><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto;"><tbody><tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEhtUayHgoeMYEyB6XwbVMZscpChzV4510xMgphpi29hahrGN-rmUW3GzIfn892orljnqRI7_P_EXA04oGyJWP1hm5uM9O233mYug1i8rEFbrb_aiHjKBNNRhL19cP1IL7ypxT099EbUjxsXkH7Q8lIlbJWPcoEfFU5so7svOtUvs0ABF75NeQ" style="margin-left: auto; margin-right: auto;"><img alt="" data-original-height="1655" data-original-width="1655" height="400" src="https://blogger.googleusercontent.com/img/a/AVvXsEhtUayHgoeMYEyB6XwbVMZscpChzV4510xMgphpi29hahrGN-rmUW3GzIfn892orljnqRI7_P_EXA04oGyJWP1hm5uM9O233mYug1i8rEFbrb_aiHjKBNNRhL19cP1IL7ypxT099EbUjxsXkH7Q8lIlbJWPcoEfFU5so7svOtUvs0ABF75NeQ=w400-h400" width="400" /></a></td></tr><tr><td class="tr-caption" style="text-align: center;"><span style="font-size: xx-small;">Łukasz with PSF's Security Developer in Residence Seth Larson and&nbsp;PyPI Safety &amp; Security Engineer Mike Fielder at PyCon US 2025</span></td></tr></tbody></table></div><p></p><span id="docs-internal-guid-c4cd9ae8-7fff-30f8-f351-1647905e2688"><br /><p dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-left: 36pt; margin-top: 0pt;"><span style="font-family: Arial, sans-serif; font-size: 11pt; font-style: italic; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">As a member of the Python Steering Council during Łukasz’s tenure as Developer in Residence, I express my personal gratitude for his dedication to the CPython project and the larger Python community. I know I echo the sentiment of everyone who has served on the Council during his time as DiR. He has defined what it means to be a Developer in Residence - a position that is incredibly important to the smooth operation of the CPython project, in large and small ways, visible and hidden. Our bi-weekly meetings gave the Steering Council a detailed, unique, and invaluable contemporaneous perspective on what’s happening in CPython. Łukasz leaves big shoes to fill, and we wish him all the best in his next endeavor. It’s comforting to know that he will continue to be a Python leader and member of the core team.</span></p><p dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-left: 36pt; margin-top: 0pt;"><span style="font-family: Arial, sans-serif; font-size: 11pt; font-style: italic; white-space-collapse: preserve;"><br /></span></p><p dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-left: 36pt; margin-top: 0pt;"><span style="font-family: Arial, sans-serif; font-size: 11pt; font-style: italic; white-space-collapse: preserve;">-- Barry Warsaw; Python Steering Council member 2026</span></p><br /><p dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;"><span style="font-family: Arial, sans-serif; font-size: 11pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">In my time as a developer in residence, I personally touched some pretty amazing projects like the transition to GitHub issues from</span><a href="http://bugs.python.org" style="text-decoration-line: none;"><span style="color: black; font-family: Arial, sans-serif; font-size: 11pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span><span style="color: #1264a3; font-family: Arial, sans-serif; font-size: 11pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">bugs.python.org</span></a><span style="font-family: Arial, sans-serif; font-size: 11pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">, the replacement of the mostly manual CLA process with an automated system, the introduction of free threading to Python, and the replacement of the interactive shell in the interpreter. And between the thousands of pull requests I've reviewed or authored, and the many less glamorous tasks like content moderation and keeping the lights on when it comes to core workflow, I've interacted with some amazing individuals. Some of them are core developers now. I've witnessed the full-time paid developer in residence roster at the Python Software Foundation grow from one person to five.</span></p><br /><p dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;"><span style="font-family: Arial, sans-serif; font-size: 11pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">As for me, ever since seeing it for the first time in 2013, I had dreamed about moving permanently to Vancouver BC. This dream is coming true soon. As part of that move, I'm joining Meta as a software engineer on the Python Language Foundation team. In any case, I'm not disappearing from the open-source Python community. I'll be seeing you online and maybe even in person at Python-related conferences.</span></p><div><span style="font-family: Arial, sans-serif; font-size: 11pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><br /></span></div></span>Łukasz Langahttp://www.blogger.com/profile/12992944444591785142noreply@blogger.comtag:blogger.com,1999:blog-8520.post-33703191922953184682026-03-12T08:47:00.002-04:002026-03-12T08:51:28.984-04:00Applications to Join the PSF Meetup Pro Network Are Back Open<p>Following the <a href="https://pyfound.blogspot.com/2026/02/introducing-psf-community-partner.html" target="_blank">introduction of the PSF Community Partner Program</a>, the Python Software Foundation (PSF) is pleased to announce that we have reopened the application for Python Meetup groups to join the <a href="https://www.meetup.com/pro/python-software-foundation-meetups/" target="_blank">PSF’s Meetup Pro Network</a>! We’re very excited to bring back this offering to the Python community after applications were temporarily suspended under the broader <a href="https://pyfound.blogspot.com/2025/08/the-psf-has-paused-our-grants-program.html" target="_blank">PSF Grants Program pause</a> last August. Make sure to check out the <a href="https://www.python.org/psf/meetup-pro/" target="_blank">PSF’s Meetup Pro Network documentation page</a> for more information on how to apply.&nbsp;<br /><br />Reopening applications for the PSF’s Meetup Pro Network is a small but meaningful step forward for our community support-focused programs. The rest of the PSF Grants Program remains on hold while we work through important considerations, such as what we can responsibly budget and how the program will be structured for long-term sustainability. We look forward to sharing more updates when possible.&nbsp;<br /><br />The PSF welcomes your comments, feedback, and suggestions regarding the reopening of the PSF Meetup Pro Network on the <a href="https://discuss.python.org/t/applications-to-join-the-psf-meetup-pro-network-are-back-open/106499" target="_blank">corresponding Discuss thread</a>. We also invite you to join our upcoming <a href="https://pyfound.blogspot.com/2025/10/a-new-psf-board-another-year-of-psf.html" target="_blank">PSF Board</a> or <a href="https://pyfound.blogspot.com/2024/02/introducing-psf-grants-office-hours.html" target="_blank">Grants Program Office Hour</a> sessions to talk with the PSF Board and Staff synchronously. If you wish to send your feedback privately, please email grants@python.org.&nbsp;</p><h2 style="text-align: left;">About the PSF’s Meetup Pro Network</h2><p>The PSF manages a <a href="https://www.meetup.com/meetup-pro/" target="_blank">Meetup Pro account</a> and adds qualified Python-focused Meetup groups to the overarching <a href="https://www.meetup.com/pro/python-software-foundation-meetups/" target="_blank">PSF Meetup Pro Network</a>. Meetup organizers no longer pay for Meetup subscriptions once they become part of the PSF’s network. We currently have 109 groups in the PSF Meetup Pro Network, which costs the PSF $15/month per group.</p><p>The PSF can run reports on Meetup activity, such as the number of interested attendees and events. Management of membership and events is left to the group’s organizers. Any registration fees or deposits for RSVPing or paying for registration to an event are also managed solely by the Meetup organizer.&nbsp;</p><p>Once a Meetup organizer accepts the invite to join, a notation will be shown under the group name: “Part of Python Software Foundation Meetup Pro Network.” Check out the <a href="https://help.meetup.com/hc/en-us/articles/360002877711-Meetup-Pro-feature-overview" target="_blank">Meetup Pro overview page</a> for more information.<br /></p><h2 style="text-align: left;">Criteria and how to apply</h2><p>We've made the application process and criteria as simple as possible, so Python Meetup groups around the world can easily get the support they need. Along those lines, we’ve kept the requirements short and sweet—to qualify for the PSF’s Meetup Pro Network, a Meetup group must:<br /></p><ul style="text-align: left;"><li>Offer content that is majority Python related</li><li>Include or link to a Code of Conduct in the About section of the Meetup page</li><li>Hold at least 2 events per year (virtual or in-person)</li></ul><p>To apply, fill out the <a href="https://psfmember.org/grant-proposals/" target="_blank">short application form</a> on psfmember.org, that asks for basic contact information, as well as gathers information related to the criteria listed above. Make sure you have an account on psfmember.org and that you’re signed in! A PSF Staff member will reach out with any questions or provide the steps needed to add eligible groups to the PSF Meetup Pro Network.&nbsp;<br /></p><h2 style="text-align: left;">About the Python Software Foundation</h2><p>The <a href="https://www.python.org/psf-landing/" target="_blank">Python Software Foundation</a> is a US non-profit whose mission is to promote, protect, and advance the Python programming language, and to support and facilitate the growth of a diverse and international community of Python programmers. The PSF supports the Python community using corporate sponsorships, grants, and donations. Are you interested in sponsoring or donating to the PSF so we can continue supporting Python and its community? Check out our <a href="https://www.python.org/sponsors/application/" target="_blank">sponsorship program</a>, <a href="http://donate.python.org" target="_blank">donate directly</a>, or contact our team at sponsors@python.org!</p>Marie Nordinhttp://www.blogger.com/profile/15138793242213676112noreply@blogger.comtag:blogger.com,1999:blog-8520.post-16413216440464453772026-02-17T02:30:00.001-05:002026-02-17T02:30:00.109-05:00Join the Python Security Response Team!<div class="js-commit-preview commit-preview p-5 markdown-body "><p>Thanks to the work of the Security Developer-in-Residence Seth Larson, the Python Security Response Team (PSRT) now has an approved <a href="https://peps.python.org/pep-0811/" rel="nofollow">public governance document</a> (PEP 811). Following the new governance structure the PSRT now <a href="https://devguide.python.org/developer-workflow/psrt/#members" rel="nofollow">publishes a public list of members</a>, has documented <a href="https://devguide.python.org/developer-workflow/psrt/#responsibilities-of-psrt-members" rel="nofollow">responsibilities for members</a> and <a href="https://devguide.python.org/developer-workflow/psrt/#responsibilities-of-psrt-admins" rel="nofollow">admins</a>, and a defined process for <a href="https://devguide.python.org/developer-workflow/psrt/#how-can-i-join-the-psrt" rel="nofollow">onboarding and offboarding members</a> to balance the needs of security and sustainability. The document also clarifies the relationship between the <a href="https://github.com/python/steering-council">Python Steering Council</a> and the PSRT.</p> <p>And this new onboarding process is already working! The PSF Infrastructure Engineer, Jacob Coffee, has just joined the PSRT as the first new non-"Release Manager" member since Seth joined the PSRT in 2023. We expect new members to join further bolstering the sustainability of security work for the Python programming language.</p> <p>Thanks to <a href="https://alpha-omega.dev" rel="nofollow">Alpha-Omega</a> for their support of Python ecosystem security by sponsoring Seth’s work as the Security Developer-in-Residence at the Python Software Foundation.</p> <div class="markdown-heading"><h3 class="heading-element"><strong>What is the Python Security Response Team?</strong></h3><a aria-label="Permalink: What is the Python Security Response Team?" class="anchor" href="https://gist.github.com/#what-is-the-python-security-response-team" id="user-content-what-is-the-python-security-response-team"><span aria-hidden="true" class="octicon octicon-link"></span></a></div> <p>Security doesn't happen by accident: it's thanks to the work of volunteers and paid Python Software Foundation staff on the Python Security Response Team to triage and coordinate vulnerability reports and remediations keeping all Python users safe. Just last year the PSRT published 16 vulnerability advisories for CPython and pip, <em>the most in a single year to date!</em></p> <p>And the PSRT usually can’t do this work alone, PSRT coordinators are encouraged to involve maintainers and experts on the projects and submodules. By involving the experts directly in the remediation process ensures fixes adhere to existing API conventions and threat-models, are maintainable long-term, and have minimal impact on existing use-cases.</p> <p>Sometimes the PSRT even coordinates with other open source projects to avoid catching the Python ecosystem off-guard by publishing a vulnerability advisory that affects multiple other projects. The most recent example of this is PyPI’s <a href="https://blog.pypi.org/posts/2025-08-07-wheel-archive-confusion-attacks/" rel="nofollow">ZIP archive differential attack mitigation</a>.</p> <p>This work deserves <a href="https://devguide.python.org/developer-workflow/psrt/#members" rel="nofollow">recognition and celebration</a> just like contributions to source code and documentation. Seth and Jacob are developing further improvements to workflows involving “GitHub Security Advisories” to record the reporter, coordinator, and remediation developers and reviewers to CVE and OSV records to properly thank everyone involved in the otherwise private contribution to open source projects.</p> <div class="markdown-heading"><h3 class="heading-element"><strong>How can I join the Python Security Response Team?</strong></h3><a aria-label="Permalink: How can I join the Python Security Response Team?" class="anchor" href="https://gist.github.com/#how-can-i-join-the-python-security-response-team" id="user-content-how-can-i-join-the-python-security-response-team"><span aria-hidden="true" class="octicon octicon-link"></span></a></div> <p>Maybe you’ve read all this and are interested in directly helping the Python programming language be more secure! The process is <a href="https://devguide.python.org/developer-workflow/psrt/#how-can-i-join-the-psrt" rel="nofollow">similar to the Core Team nomination process</a>, you need an existing PSRT member to nominate you and for your nomination to receive at least ⅔ positive votes from existing PSRT members.</p> <p>You do not need to be a core developer, team member, or triager to be a member of the Python Security Response Team. Anyone with security expertise that is known and highly-trusted within the Python community and has time to volunteer or donate through their employer would make a good candidate for the PSRT. Please note that all PSRT team members <a href="https://devguide.python.org/developer-workflow/psrt/#responsibilities-of-psrt-members" rel="nofollow">have documented responsibilities</a> and are expected to contribute meaningfully to the remediation of vulnerabilities.</p> <p>Being a member of the PSRT is not required <a href="https://mail.python.org/archives/list/security-announce@python.org/" rel="nofollow">to be notified of vulnerabilities</a> and shouldn’t be to receive “early notification” of vulnerabilities affecting CPython and pip. The Python Software Foundation is a <a href="https://www.python.org/cve-numbering-authority/" rel="nofollow">CVE Numbering Authority</a> and publishes CVE and <a href="https://github.com/psf/advisory-database/">OSV</a> records with up-to-date information about vulnerabilities affecting CPython and pip.</p> </div><br />Seth Michael Larsonhttp://www.blogger.com/profile/16555309043643874359noreply@blogger.comtag:blogger.com,1999:blog-8520.post-30300270240676791992026-02-12T07:53:00.000-05:002026-02-12T07:53:42.977-05:00Python is for Everyone: Inside the PSF's D&I Work Group<div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/a/AVvXsEjkhgqUDZF7BIsaWJIMrfgV07w_awVOFJdKoIwf2gcrjinWZidBj0W4qNvYDyskySUTJzqGXYkH8gRDhVcyIWzBhJWicGPXxNQg_6NJMzi7QnSUtEF8Z8ZEjUW7uAk2sMChj8wXro1BWmEvMtqJJSqSPuWIZfQU24JroQwb_ng56s0zw_Vr2Q" style="margin-left: 1em; margin-right: 1em;"><img alt="" data-original-height="394" data-original-width="876" height="230" src="https://blogger.googleusercontent.com/img/a/AVvXsEjkhgqUDZF7BIsaWJIMrfgV07w_awVOFJdKoIwf2gcrjinWZidBj0W4qNvYDyskySUTJzqGXYkH8gRDhVcyIWzBhJWicGPXxNQg_6NJMzi7QnSUtEF8Z8ZEjUW7uAk2sMChj8wXro1BWmEvMtqJJSqSPuWIZfQU24JroQwb_ng56s0zw_Vr2Q=w510-h230" width="510" /></a></div><div style="background-color: white; box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px; text-align: left;"><span style="font-family: helvetica;"></span></div><div style="background-color: white; box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px; text-align: left;"><span style="font-family: helvetica;">We are living in a moment where diversity and inclusion work is being actively undermined.&nbsp;</span></div><div style="background-color: white; box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px; text-align: left;"><span style="font-family: helvetica;">From policy changes to corporate rollbacks, the gains we’ve fought for are being questioned and dismantled. Having lived in different countries and been part of many diverse communities, I’ve seen firsthand what happens when people feel excluded from spaces they want to be part of. As the chair of the Python Software Foundation’s Diversity &amp; Inclusion Work Group for the past two years, I want to share what we’ve been doing, why it matters, and the incredible people making it happen.&nbsp;</span></div><div style="background-color: white; box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px; text-align: left;"><span style="font-family: helvetica;">When I took on this role, I realized how much work the workgroup has already invested in that nobody knew about. This article is a reflection on our journey, the challenges we face, and where we’re heading. I want to share our story because I believe it matters.</span></div><div style="background-color: white; box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px; text-align: left;"><h3 id="why-this-matters" style="box-sizing: border-box; line-height: 1.2; margin-bottom: 0.5rem; margin-top: 0px; text-align: left; text-transform: uppercase;"><span style="font-family: helvetica; font-size: medium;">Why This Matters</span></h3><p style="box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px;"><span style="font-family: helvetica;">You might be asking yourself: Why invest so much energy in diversity and inclusion work, especially now when it’s being questioned and de-prioritized?</span></p><p style="box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px;"><span style="font-family: helvetica;">But we all know the truth: barriers exist everywhere. A meetup announcement only in English. Documentation that assumes reliable internet. Examples that reference things unfamiliar to most of the world. Code of conduct violations without clear guidance for organizers. Communities wanting to start but not knowing where to begin.</span></p><p style="box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px;"><span style="font-family: helvetica;">Because the Python community is global, and it should feel that way. When someone discovers Python in Nigeria, Brazil, India, or anywhere else in the world, they should see a community that welcomes them. They should find resources in their language, examples that reflect their context, and people who understand their challenges.</span></p><p style="box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px;"><span style="font-family: helvetica;">Diversity isn’t just about representation. It’s about making Python better. More approachable. More accessible. Different perspectives lead to better solutions, more creative problem-solving, and software that works for more people. When we only hear from one type of voice, we miss opportunities to improve.</span></p><p style="box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px;"><span style="font-family: helvetica;">Right now, when diversity and inclusion efforts are being rolled back in many places, it’s tempting to stay quiet. But that’s exactly why we need to speak up about the work we’re doing. The Python Software Foundation made a commitment: to support a diverse and international community of Python programmers. The D&amp;I Work Group exists to make that commitment real, tangible, and actionable.</span></p><hr style="border-bottom-width: 0px; border-color: rgb(0, 0, 0) currentcolor currentcolor; border-image: initial; border-left-width: 0px; border-right: 0px; border-style: solid none none; border-top-color: rgb(0, 0, 0); border-top-style: solid; box-sizing: border-box; color: inherit; font-family: newsreader, serif; font-size: 25px; margin: 1rem 0px; opacity: 0.25;" /><h3 id="how-the-diversity-and-inclusion-workgroup-started" style="box-sizing: border-box; line-height: 1.2; margin-bottom: 0.5rem; margin-top: 0px; text-transform: uppercase;"><span style="font-family: helvetica; font-size: medium;">How The Diversity and Inclusion Workgroup Started</span></h3><p style="box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px;"><span style="font-family: helvetica;">The PSF Board created the Diversity &amp; Inclusion Work Group in 2020 with a clear purpose: to amplify the Python Software Foundation’s mission of supporting a diverse and international community. It was a good idea. People wanted to join.</span></p><p style="box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px;"><span style="font-family: helvetica;">Members came from different regions around the world, excited to be part of the group and looking forward to creating an impact because all of us, in one way or another, felt something was missing: the need to amplify and embrace diversity through more inclusion.</span></p><p style="box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px;"><span style="font-family: helvetica;">Most discussions related to diversity and how we could spread awareness. The chats on our Slack channel were active with people sharing different opinions and resources.</span></p><h3 style="box-sizing: border-box; line-height: 1.2; margin-bottom: 0.5rem; margin-top: 0px; text-align: left;"><span style="box-sizing: border-box;"><span style="font-family: helvetica; font-size: medium;">PyConUS D&amp;I Panel Discussions</span></span></h3><p style="box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px;"><span style="font-family: helvetica;">We held interesting annual D&amp;I panels where we discussed important topics which are often set aside. In 2022 and 2023 at PyCon US, we spoke about the lack of representation on the board, why the board lacked global representation, the lack of representation from core developers in other parts of the world apart from the US and Europe despite the huge representation of Pythonistas around the world, and how people could contribute to changing that representation.</span></p><p style="box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px;"><span style="box-sizing: border-box; font-weight: 700;"><span style="font-family: helvetica; font-size: medium;">PyConUS 2022 D&amp;I Panel Discussion</span></span></p><p style="box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px;"><span style="font-family: helvetica;">Participating D&amp;I Workgroup members:&nbsp;<a href="https://georgiker.com/" style="box-sizing: border-box; color: #097d8c; text-decoration-line: none; transition: 0.3s ease-in-out;"><span style="box-sizing: border-box; font-weight: 700;">Georgi Ker</span></a>,&nbsp;<a href="https://lerner.co.il/" style="box-sizing: border-box; color: #097d8c; text-decoration-line: none; transition: 0.3s ease-in-out;"><span style="box-sizing: border-box; font-weight: 700;">Reuven Lerner</span></a>,&nbsp;<a href="https://tonybaloney.github.io/" style="box-sizing: border-box; color: #097d8c; text-decoration-line: none; transition: 0.3s ease-in-out;"><span style="box-sizing: border-box; font-weight: 700;">Anthony Shaw</span></a>,&nbsp;<a href="https://lorenamesa.com/" style="box-sizing: border-box; color: #097d8c; text-decoration-line: none; transition: 0.3s ease-in-out;"><span style="box-sizing: border-box; font-weight: 700;">Lorena Mesa</span></a></span></p></div><div style="background-color: white; box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px; text-align: left;"><div><span style="box-sizing: border-box;"><div><span style="box-sizing: border-box;"><div class="separator" style="clear: both; text-align: center;"><iframe allowfullscreen="" class="BLOG_video_class" height="323" src="https://www.youtube.com/embed/WcbnJA2ah6U" width="517" youtube-src-id="WcbnJA2ah6U"></iframe></div><br /><span style="font-family: helvetica;"><br /></span></span></div><div><span style="box-sizing: border-box;"><h4 style="box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px; text-align: left;"><span style="box-sizing: border-box; font-weight: 700;"><span style="font-family: helvetica; font-size: medium;">PyConUS 2023 D&amp;I Panel Discussion</span></span></h4><p style="box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px;"><span style="font-family: helvetica;">Participating D&amp;I Workgroup members:&nbsp;<a href="https://marlenemhangami.com/" style="box-sizing: border-box; color: #097d8c; text-decoration-line: none; transition: 0.3s ease-in-out;"><span style="box-sizing: border-box; font-weight: 700;">Marlene Mhangami</span></a>,&nbsp;<a href="https://deboraazevedo.github.io/" style="box-sizing: border-box; color: #097d8c; text-decoration-line: none; transition: 0.3s ease-in-out;"><span style="box-sizing: border-box; font-weight: 700;">Débora Azevedo</span></a>,&nbsp;<a href="https://iqbalabdullah.net/" style="box-sizing: border-box; color: #097d8c; text-decoration-line: none; transition: 0.3s ease-in-out;"><span style="box-sizing: border-box; font-weight: 700;">Iqbal Abdullah</span></a>,&nbsp;<a href="https://georgiker.com/" style="box-sizing: border-box; color: #097d8c; text-decoration-line: none; transition: 0.3s ease-in-out;"><span style="box-sizing: border-box; font-weight: 700;">Georgi Ker</span></a></span></p><div class="separator" style="clear: both; text-align: center;"><iframe allowfullscreen="" class="BLOG_video_class" height="353" src="https://www.youtube.com/embed/RkvCK4fDSnQ" width="524" youtube-src-id="RkvCK4fDSnQ"></iframe></div><p style="box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px;"><span style="box-sizing: border-box; font-weight: 700;"><span style="font-family: helvetica; font-size: medium;"><br /></span></span></p><p style="box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px;"><span style="box-sizing: border-box; font-weight: 700;"><span style="font-family: helvetica; font-size: medium;">PyConUS 2024 D&amp;I Panel Discussion</span></span></p><p style="box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px;"><span style="font-family: helvetica;">In 2024, we invited different Python community leaders:&nbsp;<a href="https://github.com/mesrenyamedogbe/" style="box-sizing: border-box; color: #097d8c; text-decoration-line: none; transition: 0.3s ease-in-out;"><span style="box-sizing: border-box; font-weight: 700;">Abigail Mesrenyame Dogbe</span></a>,&nbsp;<a href="https://dinama.id/" style="box-sizing: border-box; color: #097d8c; text-decoration-line: none; transition: 0.3s ease-in-out;"><span style="box-sizing: border-box; font-weight: 700;">Dima Dinama</span></a>,<a href="https://bento.me/julesbrlm/" style="box-sizing: border-box; color: #097d8c; text-decoration-line: none; transition: 0.3s ease-in-out;"><span style="box-sizing: border-box; font-weight: 700;">Jules Juliano Barros Lima</span></a>,&nbsp;<a href="https://github.com/sleepypioneer/" style="box-sizing: border-box; color: #097d8c; text-decoration-line: none; transition: 0.3s ease-in-out;"><span style="box-sizing: border-box; font-weight: 700;">Jessica Greene</span></a>, and&nbsp;<a href="https://github.com/sleepypioneer/" style="box-sizing: border-box; color: #097d8c; text-decoration-line: none; transition: 0.3s ease-in-out;"><span style="box-sizing: border-box; font-weight: 700;">Mason Egger</span></a>, who shared about their work, their involvement, and their challenges as community leaders.</span></p><p style="box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px;"><span style="font-family: helvetica;">Participating D&amp;I Workgroup members:&nbsp;<a href="https://deboraazevedo.github.io/" style="box-sizing: border-box; color: #097d8c; text-decoration-line: none; transition: 0.3s ease-in-out;"><span style="box-sizing: border-box; font-weight: 700;">Débora Azevedo</span></a>,&nbsp;<a href="https://georgiker.com/" style="box-sizing: border-box; color: #097d8c; text-decoration-line: none; transition: 0.3s ease-in-out;"><span style="box-sizing: border-box; font-weight: 700;">Georgi Ker</span></a></span></p><div class="separator" style="clear: both; text-align: center;"><iframe allowfullscreen="" class="BLOG_video_class" height="361" src="https://www.youtube.com/embed/WGJu1LggIms" width="520" youtube-src-id="WGJu1LggIms"></iframe></div><p style="box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px;"><span style="box-sizing: border-box; font-weight: 700;"><span style="font-family: helvetica; font-size: medium;"><br /></span></span></p><p style="box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px;"><span style="box-sizing: border-box; font-weight: 700;"><span style="font-family: helvetica; font-size: medium;">PyConUS 2025 D&amp;I Panel Discussion</span></span></p><p style="box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px;"><span style="font-family: helvetica;">In 2025, due to political changes happening around the world, we invited&nbsp;<a href="https://maureira.dev/" style="box-sizing: border-box; color: #097d8c; text-decoration-line: none; transition: 0.3s ease-in-out;"><span style="box-sizing: border-box; font-weight: 700;">Cristián Maureira-Fredes</span></a>,&nbsp;<a href="https://kjaymiller.com/" style="box-sizing: border-box; color: #097d8c; text-decoration-line: none; transition: 0.3s ease-in-out;"><span style="box-sizing: border-box; font-weight: 700;">Jay Miller</span></a>, and&nbsp;<a href="https://www.naomiceder.tech/" style="box-sizing: border-box; color: #097d8c; text-decoration-line: none; transition: 0.3s ease-in-out;"><span style="box-sizing: border-box; font-weight: 700;">Naomi Ceder</span></a>&nbsp;to the D&amp;I Workgroup panel to talk about “The Work Still Matters: Inclusion, Access, and Community in 2025.”</span></p><p style="box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px;"><span style="font-family: helvetica;">Participating D&amp;I Workgroup members:&nbsp;<a href="https://allabarbalat.com/" style="box-sizing: border-box; color: #097d8c; text-decoration-line: none; transition: 0.3s ease-in-out;"><span style="box-sizing: border-box; font-weight: 700;">Alla Barbalat</span></a>,&nbsp;<a href="https://www.linkedin.com/in/keanyaphelps/" style="box-sizing: border-box; color: #097d8c; text-decoration-line: none; transition: 0.3s ease-in-out;"><span style="box-sizing: border-box; font-weight: 700;">Keanya Phelps</span></a></span></p><div class="separator" style="clear: both; text-align: center;"><iframe allowfullscreen="" class="BLOG_video_class" height="347" src="https://www.youtube.com/embed/SQAX4P59u8w" width="521" youtube-src-id="SQAX4P59u8w"></iframe></div><br /><p style="box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px;"><span style="font-family: helvetica;">The panels were great. The discussions in our workgroup were great. But something was still not going right.</span></p><hr style="border-bottom-width: 0px; border-color: rgb(0, 0, 0) currentcolor currentcolor; border-image: initial; border-left-width: 0px; border-right: 0px; border-style: solid none none; border-top-color: rgb(0, 0, 0); border-top-style: solid; box-sizing: border-box; color: inherit; font-family: newsreader, serif; font-size: 25px; margin: 1rem 0px; opacity: 0.25;" /><h3 id="building-a-global-work-group" style="box-sizing: border-box; line-height: 1.2; margin-bottom: 0.5rem; margin-top: 0px; text-transform: uppercase;"><span style="font-family: helvetica; font-size: medium;"></span></h3><h3 id="building-a-global-work-group" style="box-sizing: border-box; line-height: 1.2; margin-bottom: 0.5rem; margin-top: 0px; text-transform: uppercase;"><span style="font-family: helvetica; font-size: medium;">Building a Global Work Group</span></h3><p style="box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px;"><span style="font-family: helvetica;">In 2024, when I took on the role of chair, the D&amp;I Work Group was at a crossroads. The PSF Board had created it to amplify the Foundation’s mission, and there was genuine interest from the community, but without a clear direction or structure, momentum had faded. People wanted to join, but they didn’t know what the group would actually&nbsp;<i style="box-sizing: border-box;">do</i>.</span></p><p style="box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px;"><span style="font-family: helvetica;">I knew we needed two things: a clear purpose and genuine diversity in our membership. Not just diversity as an abstract goal, but real representation from the regions where Python communities were thriving.</span></p><p style="box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px;"><span style="font-family: helvetica;">I started by doing research that I could share with the rest of the workgroup members. I went through the Python.org calendar, cataloging events and projects happening around the world. What I found was that Python communities were active everywhere (as expected), but they weren’t really represented in our Work Group’s leadership. I identified regional gaps and proposed a structure that would ensure fair representation: North America, South America, Africa, Asia, Oceania, the Middle East, and Europe.</span></p><p style="box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px;"><span style="font-family: helvetica;">The current representation as of October 2024 across regions is as follows:</span></p><ul style="box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px; padding-left: 2rem;"><li style="box-sizing: border-box;"><span style="font-family: helvetica;">North America: 3</span></li><li style="box-sizing: border-box;"><span style="font-family: helvetica;">South America: 3</span></li><li style="box-sizing: border-box;"><span style="font-family: helvetica;">Asia: 3</span></li><li style="box-sizing: border-box;"><span style="font-family: helvetica;">Europe: 3</span></li><li style="box-sizing: border-box;"><span style="font-family: helvetica;">Africa: 3</span></li><li style="box-sizing: border-box;"><span style="font-family: helvetica;">Oceania: 1</span></li><li style="box-sizing: border-box;"><span style="font-family: helvetica;">Middle East: 2</span></li></ul><p style="box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px;"><span style="font-family: helvetica;">It is important to note that each member has the freedom to choose which region they represent. As a D&amp;I Workgroup, we do not dictate regional representation. This decision is entirely up to the individual, ensuring that members represent the region where they feel most connected or comfortable. We also shared which countries would be represented in which region to be explicit for interested parties.</span></p><p style="box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px;"><span style="font-family: helvetica;">We launched a public outreach campaign to the community. People applied, and the group voted to bring in new members. For the first time, we had a WorkGroup that truly reflected the global Python community.</span></p><p style="box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px;"><span style="font-family: helvetica;">But diverse perspectives meant many different ideas. In two workshop sessions, we listed every initiative people wanted to pursue, grouped them by theme, discussed priorities, and filtered down to three focused initiatives we could realistically accomplish with volunteer time and resources.</span></p><h3 style="box-sizing: border-box; font-family: dosis, sans-serif; line-height: 1.2; margin-bottom: 0.5rem; margin-top: 0px; text-align: left;"><span style="font-size: medium;">These three initiatives are:</span></h3><ol style="box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px; padding-left: 2rem;"><li style="box-sizing: border-box;"><span style="font-family: helvetica;"><span style="box-sizing: border-box; font-weight: 700;">Concentrate on Outreach to Communities</span>&nbsp;- Creating resources and templates to help communities improve their D&amp;I efforts</span></li><li style="box-sizing: border-box;"><span style="font-family: helvetica;"><span style="box-sizing: border-box; font-weight: 700;">How to Setup a Local Python Community</span>&nbsp;- A comprehensive guide for organizers starting new user groups</span></li><li style="box-sizing: border-box;"><span style="font-family: helvetica;"><span style="box-sizing: border-box; font-weight: 700;">Continue Collecting Survey Feedback from the Python Community</span>&nbsp;- Gathering data to understand where we need to focus</span></li></ol><p style="box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px;"><span style="font-family: helvetica;">The three initiatives we’re working on aren’t abstract goals. They’re about giving people the tools and support they need to build inclusive communities where they are. And of course, there are many other things we would like to work on. But filtering down to what we can concentrate on right now will give us better results, and we will continue to move on and work on the others as we progress.</span></p><p style="box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px;"><span style="font-family: helvetica;">We meet twice monthly across different time zones. We noticed that monthly meetings aren’t frequent enough, coordination is challenging, and volunteer time is limited. But we’re learning and adapting.</span></p><p style="box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px;"><span style="font-family: helvetica;">This wasn’t just about having good ideas. It was about creating a sustainable framework where a volunteer group could actually make progress.</span></p><hr style="border-bottom-width: 0px; border-color: rgb(0, 0, 0) currentcolor currentcolor; border-image: initial; border-left-width: 0px; border-right: 0px; border-style: solid none none; border-top-color: rgb(0, 0, 0); border-top-style: solid; box-sizing: border-box; color: inherit; font-family: newsreader, serif; font-size: 25px; margin: 1rem 0px; opacity: 0.25;" /><h3 id="meet-the-members-of-the-workgroup" style="box-sizing: border-box; line-height: 1.2; margin-bottom: 0.5rem; margin-top: 0px; text-transform: uppercase;"><span style="font-family: helvetica; font-size: medium;"></span></h3><h3 id="meet-the-members-of-the-workgroup" style="box-sizing: border-box; line-height: 1.2; margin-bottom: 0.5rem; margin-top: 0px; text-transform: uppercase;"><span style="font-family: helvetica; font-size: medium;">Meet the Members of the Workgroup</span></h3><p style="box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px;"><span style="font-family: helvetica;">The heart of the D&amp;I Work Group is the people who show up, month after month, to do this work. They come from different regions, different backgrounds, and different parts of the Python ecosystem. We have 19 active members representing all regions and a PSF staff member included.</span></p><h4 id="welcoming-new-members" style="box-sizing: border-box; line-height: 1.2; margin-bottom: 0.5rem; margin-top: 0px;"><span style="font-family: helvetica; font-size: medium;">Welcoming New Members</span></h4><p style="box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px;"><span style="font-family: helvetica;">We’re excited to welcome our five new members:&nbsp;<span style="box-sizing: border-box; font-weight: 700;"><a href="https://www.linkedin.com/in/itskpflow/" style="box-sizing: border-box; text-decoration-line: none; transition: 0.3s ease-in-out;"><span style="color: #45818e;">Kalyan Prasad</span><span style="color: #0b5394;">,</span></a></span>&nbsp;representing Asia,&nbsp;<span style="box-sizing: border-box; font-weight: 700;"><a href="https://juliobs.com/" style="box-sizing: border-box; text-decoration-line: none; transition: 0.3s ease-in-out;"><span style="color: #45818e;">Julio Batista Silva</span></a><a href="https://juliobs.com/" style="box-sizing: border-box; color: black; text-decoration-line: none; transition: 0.3s ease-in-out;">&nbsp;</a></span>representing Europe,&nbsp;<span style="box-sizing: border-box; font-weight: 700;"><a href="https://www.linkedin.com/in/abhijeet-mote/" style="box-sizing: border-box; text-decoration-line: none; transition: 0.3s ease-in-out;"><span style="color: #45818e;">Abhijeet Mote</span></a><a href="https://www.linkedin.com/in/abhijeet-mote/" style="box-sizing: border-box; color: black; text-decoration-line: none; transition: 0.3s ease-in-out;">&nbsp;</a></span>representing North America,&nbsp;<span style="box-sizing: border-box; font-weight: 700;"><a href="https://seyramtheresa.medium.com/" style="box-sizing: border-box; text-decoration-line: none; transition: 0.3s ease-in-out;"><span style="color: #45818e;">Theresa Seyram Agbenyegah</span></a></span>&nbsp;and&nbsp;<span style="box-sizing: border-box; font-weight: 700;"><a href="https://www.linkedin.com/in/emmanuel-ugwu-b58b80223" style="box-sizing: border-box; text-decoration-line: none; transition: 0.3s ease-in-out;"><span style="color: #45818e;">Emmanuel Ugwu</span></a></span>&nbsp;representing Africa. They will bring fresh perspectives and energy to our work.</span></p><h4 id="thanking-our-former-members" style="box-sizing: border-box; font-family: dosis, sans-serif; line-height: 1.2; margin-bottom: 0.5rem; margin-top: 0px;"><span style="font-size: medium;">Thanking our Former Members</span></h4><p style="box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px;"><span style="font-family: helvetica;">We also want to acknowledge and thank our former members who have contributed to the D&amp;I Work Group:<span style="color: #3d85c6;">&nbsp;<span style="box-sizing: border-box; font-weight: 700;"><a href="https://github.com/guel-codes" style="box-sizing: border-box; text-decoration-line: none; transition: 0.3s ease-in-out;">Miguel Johnson</a></span></span>,&nbsp;<span style="box-sizing: border-box; font-weight: 700;"><a href="https://marlenemhangami.com/" style="box-sizing: border-box; text-decoration-line: none; transition: 0.3s ease-in-out;"><span style="color: #45818e;">Marlene Mhangami</span></a></span>&nbsp;,&nbsp;<span style="box-sizing: border-box; color: #45818e; font-weight: 700;"><a href="hhttps://www.terezaiofciu.com/" style="box-sizing: border-box; text-decoration-line: none; transition: 0.3s ease-in-out;">Tereza Iofciu</a></span><span style="color: #45818e;">,</span><span style="color: #3d85c6;">&nbsp;<span style="box-sizing: border-box; font-weight: 700;"><a href="https://iqbalabdullah.net/" style="box-sizing: border-box; text-decoration-line: none; transition: 0.3s ease-in-out;">Iqbal Abdullah</a></span></span>,Cynthia Xin, Mariam Haji and Boluwaji Akinlade. Their dedication helped shape what this group has become, and we’re grateful for everything they contributed.</span></p><p style="box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px;"><span style="font-family: helvetica;">Our current members:</span></p><h4 id="south-america-3-members" style="box-sizing: border-box; line-height: 1.2; margin-bottom: 0.5rem; margin-top: 0px;"><span style="font-family: helvetica; font-size: medium;">South America (3 members)</span></h4><table style="border-collapse: collapse; caption-side: bottom; color: black; font-family: newsreader, serif; font-size: 25px;"><thead style="border-style: solid; border-width: 0px; box-sizing: border-box;"><tr style="border-style: solid; border-width: 0px; box-sizing: border-box;"><th style="border-color: inherit; border-style: solid; border-width: 0px; box-sizing: border-box; text-align: center;"></th><th style="border-color: inherit; border-style: solid; border-width: 0px; box-sizing: border-box; text-align: center;"></th><th style="border-color: inherit; border-style: solid; border-width: 0px; box-sizing: border-box; text-align: center;"></th></tr></thead><tbody style="border-style: solid; border-width: 0px; box-sizing: border-box;"><tr style="border-style: solid; border-width: 0px; box-sizing: border-box;"><td style="border-color: inherit; border-style: solid; border-width: 0px; box-sizing: border-box; text-align: center;"><img alt="Débora Azevedo" src="https://georgiker.com/images/blog/debra.png" style="border: 0px; box-sizing: border-box; height: auto; max-width: 100%; vertical-align: middle;" /></td><td style="border-color: inherit; border-style: solid; border-width: 0px; box-sizing: border-box; text-align: center;"><img alt="Juliana Barros Lima" src="https://georgiker.com/images/blog/jules.png" style="border: 0px; box-sizing: border-box; height: auto; max-width: 100%; vertical-align: middle;" /></td><td style="border-color: inherit; border-style: solid; border-width: 0px; box-sizing: border-box; text-align: center;"><img alt="Karolina Ladino Puerto" src="https://georgiker.com/images/blog/Karo.png" style="border: 0px; box-sizing: border-box; height: auto; max-width: 100%; vertical-align: middle;" /></td></tr></tbody></table><ul style="box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px; padding-left: 2rem;"><li style="box-sizing: border-box;"><span style="box-sizing: border-box; font-weight: 700;"><a href="https://github.com/deboraazevedo" style="box-sizing: border-box; text-decoration-line: none; transition: 0.3s ease-in-out;"><span style="color: #45818e; font-family: helvetica;">Débora Azevedo</span></a></span></li><li style="box-sizing: border-box;"><span style="box-sizing: border-box; font-weight: 700;"><a href="https://bento.me/julesbrlm" style="box-sizing: border-box; text-decoration-line: none; transition: 0.3s ease-in-out;"><span style="color: #45818e; font-family: helvetica;">Juliana Barros Lima (Jules)</span></a></span></li><li style="box-sizing: border-box;"><span style="box-sizing: border-box; font-weight: 700;"><a href="https://www.linkedin.com/in/karobotco/" style="box-sizing: border-box; text-decoration-line: none; transition: 0.3s ease-in-out;"><span style="color: #45818e; font-family: helvetica;">Karolina Ladino Puerto</span></a></span></li></ul><h4 id="north-america-4-members" style="box-sizing: border-box; line-height: 1.2; margin-bottom: 0.5rem; margin-top: 0px;"><span style="font-family: helvetica; font-size: medium;">North America (4 members)</span></h4><table style="border-collapse: collapse; caption-side: bottom; color: black; font-family: newsreader, serif; font-size: 25px;"><thead style="border-style: solid; border-width: 0px; box-sizing: border-box;"><tr style="border-style: solid; border-width: 0px; box-sizing: border-box;"><th style="border-color: inherit; border-style: solid; border-width: 0px; box-sizing: border-box; text-align: center;"></th><th style="border-color: inherit; border-style: solid; border-width: 0px; box-sizing: border-box; text-align: center;"></th><th style="border-color: inherit; border-style: solid; border-width: 0px; box-sizing: border-box; text-align: center;"></th><th style="border-color: inherit; border-style: solid; border-width: 0px; box-sizing: border-box; text-align: center;"></th></tr></thead><tbody style="border-style: solid; border-width: 0px; box-sizing: border-box;"><tr style="border-style: solid; border-width: 0px; box-sizing: border-box;"><td style="border-color: inherit; border-style: solid; border-width: 0px; box-sizing: border-box; text-align: center;"><img alt="Keanya Phelps" src="https://georgiker.com/images/blog/keanya.png" style="border: 0px; box-sizing: border-box; height: auto; max-width: 100%; vertical-align: middle;" /></td><td style="border-color: inherit; border-style: solid; border-width: 0px; box-sizing: border-box; text-align: center;"><img alt="Alla Barbalat" src="https://georgiker.com/images/blog/alla.png" style="border: 0px; box-sizing: border-box; height: auto; max-width: 100%; vertical-align: middle;" /></td><td style="border-color: inherit; border-style: solid; border-width: 0px; box-sizing: border-box; text-align: center;"><img alt="Marie Nordin" src="https://georgiker.com/images/blog/marie.png" style="border: 0px; box-sizing: border-box; height: auto; max-width: 100%; vertical-align: middle;" /></td><td style="border-color: inherit; border-style: solid; border-width: 0px; box-sizing: border-box; text-align: center;"><img alt="Abhijeet Mote" src="https://georgiker.com/images/blog/abhijeet.png" style="border: 0px; box-sizing: border-box; height: auto; max-width: 100%; vertical-align: middle;" /></td></tr></tbody></table><ul style="box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px; padding-left: 2rem;"><li style="box-sizing: border-box;"><span style="box-sizing: border-box; font-weight: 700;"><a href="https://www.linkedin.com/in/keanyaphelps/" style="box-sizing: border-box; text-decoration-line: none; transition: 0.3s ease-in-out;"><span style="color: #45818e; font-family: helvetica;">Keanya Phelps</span></a></span></li><li style="box-sizing: border-box;"><span style="box-sizing: border-box; font-weight: 700;"><a href="https://allabarbalat.com/" style="box-sizing: border-box; text-decoration-line: none; transition: 0.3s ease-in-out;"><span style="color: #45818e; font-family: helvetica;">Alla Barbalat</span></a></span></li><li style="box-sizing: border-box;"><span style="box-sizing: border-box; font-weight: 700;"><a href="https://www.linkedin.com/in/mariecnordin/" style="box-sizing: border-box; text-decoration-line: none; transition: 0.3s ease-in-out;"><span style="color: #45818e; font-family: helvetica;">Marie Nordin - PSF Staff</span></a></span></li><li style="box-sizing: border-box;"><span style="box-sizing: border-box; font-weight: 700;"><a href="https://www.linkedin.com/in/abhijeet-mote/" style="box-sizing: border-box; text-decoration-line: none; transition: 0.3s ease-in-out;"><span style="color: #45818e; font-family: helvetica;">Abhijeet Mote - New member!</span></a></span></li></ul><h4 id="asia-3-members" style="box-sizing: border-box; line-height: 1.2; margin-bottom: 0.5rem; margin-top: 0px;"><span style="font-family: helvetica; font-size: medium;">Asia (3 members)</span></h4><table style="border-collapse: collapse; caption-side: bottom; color: black; font-family: newsreader, serif; font-size: 25px;"><thead style="border-style: solid; border-width: 0px; box-sizing: border-box;"><tr style="border-style: solid; border-width: 0px; box-sizing: border-box;"><th style="border-color: inherit; border-style: solid; border-width: 0px; box-sizing: border-box; text-align: center;"></th><th style="border-color: inherit; border-style: solid; border-width: 0px; box-sizing: border-box; text-align: center;"></th><th style="border-color: inherit; border-style: solid; border-width: 0px; box-sizing: border-box; text-align: center;"></th></tr></thead><tbody style="border-style: solid; border-width: 0px; box-sizing: border-box;"><tr style="border-style: solid; border-width: 0px; box-sizing: border-box;"><td style="border-color: inherit; border-style: solid; border-width: 0px; box-sizing: border-box; text-align: center;"><img alt="Sayantika Banik" src="https://georgiker.com/images/blog/saya.png" style="border: 0px; box-sizing: border-box; height: auto; max-width: 100%; vertical-align: middle;" /></td><td style="border-color: inherit; border-style: solid; border-width: 0px; box-sizing: border-box; text-align: center;"><img alt="Georgi Ker" src="https://georgiker.com/images/blog/georgi.png" style="border: 0px; box-sizing: border-box; height: auto; max-width: 100%; vertical-align: middle;" /></td><td style="border-color: inherit; border-style: solid; border-width: 0px; box-sizing: border-box; text-align: center;"><img alt="Kalyan Prasad" src="https://georgiker.com/images/blog/Kalyan1.png" style="border: 0px; box-sizing: border-box; height: auto; max-width: 100%; vertical-align: middle;" /></td></tr></tbody></table><ul style="box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px; padding-left: 2rem;"><li style="box-sizing: border-box;"><span style="box-sizing: border-box; font-weight: 700;"><a href="https://github.com/sayantikabanik" style="box-sizing: border-box; text-decoration-line: none; transition: 0.3s ease-in-out;"><span style="color: #45818e; font-family: helvetica;">Sayantika Banik</span></a></span></li><li style="box-sizing: border-box;"><span style="box-sizing: border-box; font-weight: 700;"><a href="https://georgiker.com/" style="box-sizing: border-box; text-decoration-line: none; transition: 0.3s ease-in-out;"><span style="color: #45818e; font-family: helvetica;">Georgi Ker</span></a></span></li><li style="box-sizing: border-box;"><span style="box-sizing: border-box; font-weight: 700;"><a href="https://www.linkedin.com/in/itskpflow/" style="box-sizing: border-box; text-decoration-line: none; transition: 0.3s ease-in-out;"><span style="color: #45818e; font-family: helvetica;">Kalyan Prasad - New member!</span></a></span></li></ul><h4 id="europe-3-members" style="box-sizing: border-box; line-height: 1.2; margin-bottom: 0.5rem; margin-top: 0px; text-align: left;"><span style="font-family: helvetica; font-size: medium;">Europe (3 members)</span></h4><table style="border-collapse: collapse; caption-side: bottom; color: black; font-family: newsreader, serif; font-size: 25px;"><thead style="border-style: solid; border-width: 0px; box-sizing: border-box;"><tr style="border-style: solid; border-width: 0px; box-sizing: border-box;"><th style="border-color: inherit; border-style: solid; border-width: 0px; box-sizing: border-box; text-align: center;"></th><th style="border-color: inherit; border-style: solid; border-width: 0px; box-sizing: border-box; text-align: center;"></th><th style="border-color: inherit; border-style: solid; border-width: 0px; box-sizing: border-box; text-align: center;"></th></tr></thead><tbody style="border-style: solid; border-width: 0px; box-sizing: border-box;"><tr style="border-style: solid; border-width: 0px; box-sizing: border-box;"><td style="border-color: inherit; border-style: solid; border-width: 0px; box-sizing: border-box; text-align: center;"><img alt="Jimena Escobar Bermúdez" src="https://georgiker.com/images/blog/Jimena.png" style="border: 0px; box-sizing: border-box; height: auto; max-width: 100%; vertical-align: middle;" /></td><td style="border-color: inherit; border-style: solid; border-width: 0px; box-sizing: border-box; text-align: center;"><img alt="Filipe Laíns" src="https://georgiker.com/images/blog/Filipe.png" style="border: 0px; box-sizing: border-box; height: auto; max-width: 100%; vertical-align: middle;" /></td><td style="border-color: inherit; border-style: solid; border-width: 0px; box-sizing: border-box; text-align: center;"><img alt="Julio Batista Silva" src="https://georgiker.com/images/blog/Julio.png" style="border: 0px; box-sizing: border-box; height: auto; max-width: 100%; vertical-align: middle;" /></td></tr></tbody></table><ul style="box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px; padding-left: 2rem;"><li style="box-sizing: border-box;"><span style="box-sizing: border-box; font-weight: 700;"><a href="https://www.getmanfred.com/perfil/jimena" style="box-sizing: border-box; text-decoration-line: none; transition: 0.3s ease-in-out;"><span style="color: #45818e; font-family: helvetica;">Jimena Escobar Bermúdez</span></a></span></li><li style="box-sizing: border-box;"><span style="box-sizing: border-box; font-weight: 700;"><a href="https://ffy00.github.io/" style="box-sizing: border-box; text-decoration-line: none; transition: 0.3s ease-in-out;"><span style="color: #45818e; font-family: helvetica;">Filipe Laíns</span></a></span></li><li style="box-sizing: border-box;"><span style="box-sizing: border-box; font-weight: 700;"><a href="https://juliobs.com/" style="box-sizing: border-box; text-decoration-line: none; transition: 0.3s ease-in-out;"><span style="color: #45818e; font-family: helvetica;">Julio Batista Silva - New member!</span></a></span></li></ul><h4 id="middle-east-2-members" style="box-sizing: border-box; line-height: 1.2; margin-bottom: 0.5rem; margin-top: 0px;"><span style="font-family: helvetica; font-size: medium;">Middle East (2 members)</span></h4><table style="border-collapse: collapse; caption-side: bottom; color: black; font-family: newsreader, serif; font-size: 25px;"><thead style="border-style: solid; border-width: 0px; box-sizing: border-box;"><tr style="border-style: solid; border-width: 0px; box-sizing: border-box;"><th style="border-color: inherit; border-style: solid; border-width: 0px; box-sizing: border-box; text-align: center;"></th><th style="border-color: inherit; border-style: solid; border-width: 0px; box-sizing: border-box; text-align: center;"></th></tr></thead><tbody style="border-style: solid; border-width: 0px; box-sizing: border-box;"><tr style="border-style: solid; border-width: 0px; box-sizing: border-box;"><td style="border-color: inherit; border-style: solid; border-width: 0px; box-sizing: border-box; text-align: center;"><img alt="Reuven Lerner" src="https://georgiker.com/images/blog/reuven.png" style="border: 0px; box-sizing: border-box; height: auto; max-width: 100%; vertical-align: middle;" /></td><td style="border-color: inherit; border-style: solid; border-width: 0px; box-sizing: border-box; text-align: center;"><img alt="Ali Tavallaie" src="https://georgiker.com/images/blog/Ali.png" style="border: 0px; box-sizing: border-box; height: auto; max-width: 100%; vertical-align: middle;" /></td></tr></tbody></table><ul style="box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px; padding-left: 2rem;"><li style="box-sizing: border-box;"><span style="box-sizing: border-box; font-weight: 700;"><a href="https://lerner.co.il/" style="box-sizing: border-box; text-decoration-line: none; transition: 0.3s ease-in-out;"><span style="color: #45818e; font-family: helvetica;">Reuven Lerner</span></a></span></li><li style="box-sizing: border-box;"><span style="box-sizing: border-box; font-weight: 700;"><a href="https://github.com/tavallaie" style="box-sizing: border-box; text-decoration-line: none; transition: 0.3s ease-in-out;"><span style="color: #45818e; font-family: helvetica;">Ali Tavallaie</span></a></span></li></ul><h4 id="africa-3-member" style="box-sizing: border-box; font-family: dosis, sans-serif; line-height: 1.2; margin-bottom: 0.5rem; margin-top: 0px;"><span style="font-size: medium;">Africa (3 member)</span></h4><table style="border-collapse: collapse; caption-side: bottom; color: black; font-family: newsreader, serif; font-size: 25px;"><thead style="border-style: solid; border-width: 0px; box-sizing: border-box;"><tr style="border-style: solid; border-width: 0px; box-sizing: border-box;"><th style="border-color: inherit; border-style: solid; border-width: 0px; box-sizing: border-box; text-align: center;"></th><th style="border-color: inherit; border-style: solid; border-width: 0px; box-sizing: border-box; text-align: center;"></th><th style="border-color: inherit; border-style: solid; border-width: 0px; box-sizing: border-box; text-align: center;"></th></tr></thead><tbody style="border-style: solid; border-width: 0px; box-sizing: border-box;"><tr style="border-style: solid; border-width: 0px; box-sizing: border-box;"><td style="border-color: inherit; border-style: solid; border-width: 0px; box-sizing: border-box; text-align: center;"><img alt="Mannie Young" src="https://georgiker.com/images/blog/Mannie.png" style="border: 0px; box-sizing: border-box; height: auto; max-width: 100%; vertical-align: middle;" /></td><td style="border-color: inherit; border-style: solid; border-width: 0px; box-sizing: border-box; text-align: center;"><img alt="Theresa Seyram Agbenyega" src="https://georgiker.com/images/blog/Theresa.png" style="border: 0px; box-sizing: border-box; height: auto; max-width: 100%; vertical-align: middle;" /></td><td style="border-color: inherit; border-style: solid; border-width: 0px; box-sizing: border-box; text-align: center;"><img alt="Emmanuel Ugwu" src="https://georgiker.com/images/blog/Emmanuel.png" style="border: 0px; box-sizing: border-box; height: auto; max-width: 100%; vertical-align: middle;" /></td></tr></tbody></table><ul style="box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px; padding-left: 2rem;"><li style="box-sizing: border-box;"><span style="box-sizing: border-box; font-weight: 700;"><a href="https://www.mannieyoung.com/" style="box-sizing: border-box; text-decoration-line: none; transition: 0.3s ease-in-out;"><span style="color: #45818e; font-family: helvetica;">Mannie Young</span></a></span></li><li style="box-sizing: border-box;"><span style="box-sizing: border-box; font-weight: 700;"><a href="https://seyramtheresa.medium.com/" style="box-sizing: border-box; text-decoration-line: none; transition: 0.3s ease-in-out;"><span style="color: #45818e; font-family: helvetica;">Theresa Seyram Agbenyegah - New member!</span></a></span></li><li style="box-sizing: border-box;"><span style="box-sizing: border-box; font-weight: 700;"><a href="https://www.linkedin.com/in/emmanuel-ugwu-b58b80223" style="box-sizing: border-box; text-decoration-line: none; transition: 0.3s ease-in-out;"><span style="color: #45818e; font-family: helvetica;">Emmanuel Ugwu - New member!</span></a></span></li></ul><h4 id="oceania-1-members" style="box-sizing: border-box; line-height: 1.2; margin-bottom: 0.5rem; margin-top: 0px;"><span style="font-family: helvetica; font-size: medium;">Oceania (1 members)</span></h4><table style="border-collapse: collapse; caption-side: bottom; color: black; font-family: newsreader, serif; font-size: 25px;"><thead style="border-style: solid; border-width: 0px; box-sizing: border-box;"><tr style="border-style: solid; border-width: 0px; box-sizing: border-box;"><th style="border-color: inherit; border-style: solid; border-width: 0px; box-sizing: border-box; text-align: center;"></th><th style="border-color: inherit; border-style: solid; border-width: 0px; box-sizing: border-box; text-align: center;"></th><th style="border-color: inherit; border-style: solid; border-width: 0px; box-sizing: border-box; text-align: center;"></th></tr></thead><tbody style="border-style: solid; border-width: 0px; box-sizing: border-box;"><tr style="border-style: solid; border-width: 0px; box-sizing: border-box;"><td style="border-color: inherit; border-style: solid; border-width: 0px; box-sizing: border-box; text-align: center;"><img alt="Nathan Bransby" src="https://georgiker.com/images/blog/nathan.png" style="border: 0px; box-sizing: border-box; height: auto; max-width: 100%; vertical-align: middle;" /></td><td style="border-color: inherit; border-style: solid; border-width: 0px; box-sizing: border-box;"></td><td style="border-color: inherit; border-style: solid; border-width: 0px; box-sizing: border-box;"></td></tr></tbody></table><ul style="box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px; padding-left: 2rem;"><li style="box-sizing: border-box;"><span style="box-sizing: border-box; font-weight: 700;"><a href="https://github.com/Nathan-Bransby-NMT" style="box-sizing: border-box; text-decoration-line: none; transition: 0.3s ease-in-out;"><span style="color: #45818e; font-family: helvetica;">Nathan Bransby</span></a></span></li></ul><h4 id="psf-staff-member" style="box-sizing: border-box; font-family: dosis, sans-serif; line-height: 1.2; margin-bottom: 0.5rem; margin-top: 0px; text-align: left;"><span style="font-size: medium;"><br /></span></h4><h4 id="psf-staff-member" style="box-sizing: border-box; font-family: dosis, sans-serif; line-height: 1.2; margin-bottom: 0.5rem; margin-top: 0px; text-align: left;"><span style="font-size: medium;">PSF Staff Member</span></h4><p style="box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px;"><span style="font-family: helvetica;">We also have&nbsp;<span style="box-sizing: border-box; font-weight: 700;"><a href="https://www.linkedin.com/in/mariecnordin/" style="box-sizing: border-box; text-decoration-line: none; transition: 0.3s ease-in-out;"><span style="color: #45818e;">Marie Nordin - PSF Staff</span></a></span>&nbsp;from the PSF staff as a voting member of the workgroup. Marie provides crucial support and coordination, helping bridge our initiatives with the broader PSF mission and ensuring our work has the resources and visibility it needs to succeed. Her dedicated support and active participation have been instrumental in helping us move from discussion to action.</span></p><hr style="border-bottom-width: 0px; border-color: rgb(0, 0, 0) currentcolor currentcolor; border-image: initial; border-left-width: 0px; border-right: 0px; border-style: solid none none; border-top-color: rgb(0, 0, 0); border-top-style: solid; box-sizing: border-box; color: inherit; font-family: newsreader, serif; font-size: 25px; margin: 1rem 0px; opacity: 0.25;" /><h3 id="looking-forward" style="box-sizing: border-box; line-height: 1.2; margin-bottom: 0.5rem; margin-top: 0px; text-transform: uppercase;"><span style="font-family: helvetica; font-size: medium;"></span></h3><h3 id="looking-forward" style="box-sizing: border-box; line-height: 1.2; margin-bottom: 0.5rem; margin-top: 0px; text-transform: uppercase;"><span style="font-family: helvetica; font-size: medium;">Looking Forward</span></h3><p style="box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px;"><span style="font-family: helvetica;">The D&amp;I Work Group can’t do this work alone. Real change happens when every Python developer, every community organizer, every person writing documentation or teaching a workshop thinks about inclusion in their own context.</span></p><p style="box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px;"><span style="font-family: helvetica;">You don’t need to join a work group to make a difference. You can:</span></p><ul style="box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px; padding-left: 2rem;"><li style="box-sizing: border-box;"><span style="font-family: helvetica;"><span style="box-sizing: border-box; font-weight: 700;">In your local community</span>: Start a Python meetup in your area. Make it beginner-friendly. Announce it in multiple languages if your region is multilingual. Choose accessible venues.</span></li><li style="box-sizing: border-box;"><span style="font-family: helvetica;"><span style="box-sizing: border-box; font-weight: 700;">In your workplace</span>: Mentor someone from a different background. Share knowledge with junior developers. Advocate for diverse hiring and inclusive team practices.</span></li><li style="box-sizing: border-box;"><span style="font-family: helvetica;"><span style="box-sizing: border-box; font-weight: 700;">In your open source projects</span>: Write clear documentation. Add examples that reflect different use cases. Make your contribution guidelines welcoming to newcomers. Consider what barriers might prevent someone from contributing.</span></li><li style="box-sizing: border-box;"><span style="font-family: helvetica;"><span style="box-sizing: border-box; font-weight: 700;">In your daily work</span>: Question assumptions. When you write code examples, ask: “Would this make sense to someone who doesn’t share my context?” When you organize an event, ask: “Who might feel excluded, and how can I change that?”</span></li></ul><p style="box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px;"><span style="font-family: helvetica;">We all know that Python’s success isn’t just about the language. It’s about the community. And that’s the hard truth. The more diverse that community is, the more use cases we discover, the more creative solutions we find, the more people benefit from what we build together.</span></p><p style="box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px;"><span style="font-family: helvetica;">Diversity and inclusion work isn’t a side project or a “nice-to-have”. It’s how we ensure Python remains a language for everyone, everywhere. It’s how we make sure the next generation of developers (wherever they are, whatever their background) sees Python as a community they can be part of.</span></p><p style="box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px;"><span style="font-family: helvetica;">The work is hard. The progress is slow, and it’s often invisible. But it matters. Every small action compounds. Every person who chooses to be intentional about inclusion makes it easier for the next person.</span></p><p style="box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px;"><span style="font-family: helvetica;">That’s what keeps us going in the workgroup. That’s why we show up every month. If you want to learn more about the D&amp;I Work Group, get involved, or share your own experiences with building inclusive communities, you can write to us at&nbsp;<a href="mailto:diversity-inclusion-wg@python.org" style="box-sizing: border-box; color: #097d8c; text-decoration-line: none; transition: 0.3s ease-in-out;">diversity-inclusion-wg@python.org</a>.&nbsp;</span></p><p style="box-sizing: border-box; margin-bottom: 1rem; margin-top: 0px;"><span style="font-family: helvetica;">We’re always learning, and we’d love to hear from you<span style="font-family: newsreader, serif;">.</span></span></p></span></div></span></div></div><p></p>Unknownnoreply@blogger.comtag:blogger.com,1999:blog-8520.post-65158044993811845902026-02-10T08:37:00.001-05:002026-02-10T08:42:08.440-05:00Introducing the PSF Community Partner Program<p>The Python Software Foundation (PSF) is excited to announce the introduction of the <a href="https://www.python.org/psf/community-partners/" target="_blank">PSF Community Partner Program</a>. This new program is designed as an “in-kind” way for us to support Python events and initiatives with non-financial assistance through the use of the PSF logo and name, as well as promotional support via sharing qualified posts on PSF official social media accounts. The PSF looks forward to supporting Python community events and initiatives through this new program!<br /><br />The introduction of the PSF Community Partner Program grew out of our desire to find alternative ways to support the community during the <a href="https://pyfound.blogspot.com/2025/08/the-psf-has-paused-our-grants-program.html" target="_blank">pause of our Grants Program</a> (read more about the resulting process below). Even so, we intend to continue offering this in-kind support program after the Grants Program reopens. Our big picture hope is that, over the long term, some community events and initiatives will continue to partner with the PSF while being financially dependent on sponsors and individual donors alone.&nbsp;<br /><br />The PSF is also working on the future of our Grants Program, including when and how we can reopen it in a way that ensures the program’s long-term sustainability while balancing the needs of the Python community. In light of the truly staggering outpouring of support from our community during the 2025 year-end fundraiser, we are now in a stronger position to reopen the Grants Program and are eager to give back in a thoughtful and sustainable way. More updates to come!<br /><br />As with the rollout of any new program, we anticipate small adjustments will need to be made for processes to flow smoothly and to ensure the program serves the Python community well. The PSF welcomes your comments, feedback, and suggestions regarding the new Community Partner Program on <a href="https://discuss.python.org/t/introducing-the-psf-community-partner-program-for-python-events-initiatives/106095" target="_blank">the corresponding Discuss thread</a>. We also invite you to join our upcoming <a href="https://pyfound.blogspot.com/2025/10/a-new-psf-board-another-year-of-psf.html" target="_blank">PSF Board</a> or <a href="https://pyfound.blogspot.com/2024/02/introducing-psf-grants-office-hours.html" target="_blank">Grants Program Office Hour</a> sessions to talk with the PSF Board and Staff synchronously. If you wish to send your feedback privately, please email grants@python.org.&nbsp;</p><h2 style="text-align: left;">How the program will work</h2><p>The PSF Board delegated authority to the Grants Work Group (GWG) to review, approve, and deny applications for the Community Partner Program.<br /><br />Similar to the PSF Grants Program, the PSF must ensure that applicants meet certain criteria before being approved as a Community Partner. To qualify, an event or initiative must:<br /></p><ul style="text-align: left;"><li>Demonstrate a positive impact on the Python community</li><li>Be Python-specific or primarily Python-related</li><li>Have an established web presence, such as a dedicated website, Meetup page, or Luma page</li><li>Have an enforceable Code of Conduct with clear reporting mechanisms in place</li><li>Acknowledge and agree to the defined bounds of the Community Partner title as outlined in the application form</li></ul><p>The PSF Community Partner application process begins with a <a href="https://forms.gle/6HyvLDpHEtGSpfK97" target="_blank">one-page form</a> designed to collect the information needed for review by the GWG. The form gathers:&nbsp;<br /></p><ul style="text-align: left;"><li>Basic applicant details</li><li>Information about the event or initiative</li><li>Required acknowledgements related to trademark usage and an enforceable Code of Conduct</li><li>A couple questions to better understand the event or initiative, support evaluation, or help the PSF gather relevant metrics</li></ul><p>Applicants are asked to submit their application at least six weeks before their event or initiative, with first-time applicants encouraged to apply eight weeks in advance. Applications may be submitted up to six months ahead of time, allowing the PSF to plan and provide timely promotional support. Once submitted, applications undergo an initial pre-review by PSF staff, who may follow up with clarifying questions as needed. The application will then be reviewed by the GWG, with consultation from the PSF Board in some cases and additional follow-up questions when necessary.</p><p>Decisions will be communicated via the email address provided in the application. Accepted Community Partners will receive guidance on PSF logo usage, social media re-sharing, and an invitation to provide an optional report.<br /></p><h2 style="text-align: left;">How the program took shape</h2><p>Upon the <a href="https://pyfound.blogspot.com/2025/08/the-psf-has-paused-our-grants-program.html" target="_blank">pause of the PSF Grants Program</a>, the PSF Board and Staff set out to understand how we can continue to support Python events and initiatives for the duration of the program's pause. We dedicated Board and Grants Office Hour sessions, gathered input on a Discuss thread, tracked our social media replies to the pause announcement, and talked with community members one-on-one to get a picture of the various needs of our community. From there, PSF Staff compiled the feedback to identify the common threads to weave them together into action.&nbsp;<br /><br />One of the most common themes uncovered is that while the financial assistance offered by our grants is incredibly valuable, the use of the PSF name that comes with grants also provides a strong signal of community trust–an official “stamp of approval”. This stamp of approval empowers Python events and initiatives to approach potential sponsors and is useful as a point of leverage and proof of trustworthiness to convince sponsors to sign on.&nbsp;<br /><br />The next most common theme was that Python events and initiatives would greatly benefit from promotional support. This is a common benefit of “in-kind” partnerships and was a natural addition to the new PSF Community Partner Program. It’s also a bit of a tricky line for the PSF to navigate–as a 501(c)(3) non-profit based in the USA, we cannot raise funds for other organizations. That means we are implementing guidelines for what the PSF can and cannot promote to remain compliant with the requirements of the US federal tax code.&nbsp;<br /><br />After identifying both of these recurring themes, PSF Staff put together a program proposal with input from the GWG and PSF Board. The process from there included review periods for the PSF Board, Staff, and GWG, integrating feedback, two votes from the PSF Board, and PSF Staff work on setting up processes and documentation.&nbsp;<br /></p><h2 style="text-align: left;">About the Python Software Foundation</h2><p>The Python Software Foundation is a US non-profit whose mission is to promote, protect, and advance the Python programming language, and to support and facilitate the growth of a diverse and international community of Python programmers. The PSF supports the Python community using corporate sponsorships, grants, and donations. Are you interested in sponsoring or donating to the PSF so we can continue supporting Python and its community? Check out <a href="https://www.python.org/sponsors/application/" target="_blank">our sponsorship program</a>, <a href="http://donate.python.org" target="_blank">donate directly</a>, or contact our team at sponsors@python.org!</p>Marie Nordinhttp://www.blogger.com/profile/15138793242213676112noreply@blogger.comtag:blogger.com,1999:blog-8520.post-6968850332137960102026-01-26T08:31:00.001-05:002026-01-26T08:36:03.598-05:00Your Python. Your Voice. Join the Python Developers Survey 2026!<p>This year marks the ninth iteration of the official Python Developers Survey. We intentionally launched the survey in January (later than years prior) so that data collection and results can be completed and shared within the same calendar year. The survey aims to capture the current state of the Python language and its surrounding ecosystem. By comparing the results with last year’s, the community can identify emerging trends and gain deeper insight into how Python continues to evolve.<br /><br />We encourage you to contribute to our community’s knowledge by sharing your experience and perspective. Your participation is valued! The survey should only take you about 10-15 minutes to complete.&nbsp;<br /><br /><a href="https://surveys.jetbrains.com/s3/python-developers-survey-2026" target="_blank">Contribute to the Python Developers Survey 2026!</a><br /><br />This year we aim to reach even more of our community and ensure accurate global representation by highlighting our localization efforts:&nbsp;<br /></p><ul style="text-align: left;"><li>The survey is translated into Chinese, French, German, Japanese, Korean, Portuguese, Russian, Spanish.&nbsp;</li><li>To assist individuals in promoting the survey and encouraging their local communities and professional networks we have created a <a href="https://docs.google.com/document/d/1C3r-dFY5LmklzCnf72vfeehzRqCCDuXzK8xKuwBES1Y/edit?usp=sharing" target="_blank">Promotion Kit</a> with images and social media posts translated into a variety of languages. We hope this promotion kit empowers folks to spread the invitation to respond to the survey within their local communities.</li><li>We’d love it if you’d share one or more of the posts in the Promotion Kit to your social media or any community accounts you manage, as well as share the information in Python related discords, mailing lists, or chats you participate in.</li><li>If you would like to help out with translations you see are missing, please request edit access to the doc and share what language you will be translating to. Translations for promotions into languages the survey may not be translated to is also welcome!&nbsp;</li></ul><p>If you have ideas about what else we can do to get the word out and encourage a diversity of responses, please comment on <a href="https://discuss.python.org/t/your-python-your-voice-join-the-python-developers-survey-2026/105883" target="_blank">the corresponding Discuss thread</a>.&nbsp;<br /><br />The survey is organized in partnership between the <a href="https://www.python.org/psf-landing/" target="_blank">Python Software Foundation</a> and <a href="https://www.jetbrains.com/" target="_blank">JetBrains</a>. After the survey is over, JetBrains will publish the aggregated results and randomly choose 20 winners (among those who complete the survey in its entirety), who will each receive a $100 Amazon Gift Card or a local equivalent.<br /><br /></p>Marie Nordinhttp://www.blogger.com/profile/15138793242213676112noreply@blogger.comtag:blogger.com,1999:blog-8520.post-43973621459007914382026-01-21T15:00:00.002-05:002026-01-21T15:00:02.290-05:00Departing the Python Software Foundation (Staff)<p><span style="font-family: Arial, sans-serif; font-size: 11pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-ligatures: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space: pre-wrap;">This week will be my last as the Director of Infrastructure at the Python Software Foundation and my last week as a staff member. Supporting the mission of this organization with my labor has been unbelievable in retrospect and I am filled with gratitude to every member of this community, volunteer, sponsor, board member, and staff member of this organization who have worked alongside me and entrusted me with root@python.org f</span><span style="font-family: Arial, sans-serif; font-size: 11pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-ligatures: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space: pre-wrap;">or all this time.</span></p><span id="docs-internal-guid-1da6e136-7fff-37dc-9256-1924027a973e"><br /><p dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;"><span style="font-family: Arial, sans-serif; font-size: 11pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-ligatures: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space: pre-wrap;">But, it is time for me to do something new. I don’t believe there would ever be a perfect time for this transition, but I do believe that now is one of the best. The PSF has built out a team that shares the responsibilities I carried across our technical infrastructure, the maintenance and support of PyPI, relationships with our in-kind sponsors, and the facilitation of PyCon US. I’m also not “burnt-out” or worse, I knew that one day I would move on “dead or alive” and it is so good to feel alive in this decision, literally and figuratively.</span></p><br /></span><blockquote style="border: none; margin: 0 0 0 40px; padding: 0px;"><span><p style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt; text-align: left;"><i><span style="font-family: Arial, sans-serif; font-size: 11pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-ligatures: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space: pre-wrap;">“The PSF and the Python community are very lucky to have had Ee at the helm for so many years. Ee’s approach to our technical needs has been responsive and resilient as Python, PyPI, PSF staff and the community have all grown, and their dedication to the community has been unmatched and unwavering. Ee is leaving the PSF in fantastic shape, and I know I join the rest of the staff in wishing them all the best as they move on to their next endeavor.”</span>&nbsp;</i></p></span></blockquote><blockquote style="border: none; margin: 0 0 0 40px; padding: 0px;"><span><p style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt; text-align: right;"><span style="font-family: Arial, sans-serif; font-size: 11pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-ligatures: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space: pre-wrap;">- Deb Nicholson, Executive Director</span></p></span></blockquote><span><br /><p dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;"><span style="font-family: Arial, sans-serif; font-size: 11pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-ligatures: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space: pre-wrap;">The health and wellbeing of the PSF and the Python community is of utmost importance to me, and was paramount as I made decisions around this transition. Given that, I am grateful to be able to commit 20% of my time over the next six months to the PSF to provide support and continuity. Over the past few weeks we’ve been working internally to set things up for success, and I look forward to meeting the new staff and what they accomplish with the team at the PSF!</span></p><br /><p dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;"><span style="font-family: Arial, sans-serif; font-size: 11pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-ligatures: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space: pre-wrap;">My participation in the Python community and contributions to the infrastructure began long before my role as a staff member. As I transition out of participating as PSF staff I look forward to continuing to participate in and contribute to this community as a volunteer, as long as I am lucky enough to have the chance.</span></p></span>Unknownnoreply@blogger.comtag:blogger.com,1999:blog-8520.post-69982933452386825482026-01-20T14:49:00.003-05:002026-01-22T08:13:00.137-05:00Announcing Python Software Foundation Fellow Members for Q4 2025! 🎉<p>&nbsp;</p><p><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;">The PSF is pleased to announce its fourth </span><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;">batch</span><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"> of PSF Fellows for </span><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;">2025</span><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;">! Let us welcome the new PSF Fellows for </span><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;">Q4</span><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;">! The following people continue to do amazing things for the Python community:</span></p><p dir="ltr" style="line-height: 1.38; margin-bottom: 11pt; margin-top: 11pt; text-align: center;"><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 12pt; font-style: normal; font-variant: normal; font-weight: 700; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;">Chris Brousseau</span></p><p dir="ltr" style="line-height: 1.38; margin-bottom: 11pt; margin-top: 11pt; text-align: center;"><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"><a href="https://surfaceowl.com/" target="_blank">Website</a>, <a href="https://www.linkedin.com/in/chrisbrousseau/" target="_blank">LinkedIn</a>, <a href="https://github.com/surfaceowl" target="_blank">GitHub</a>, <a href="https://mastodon.social/@surfaceowl" target="_blank">Mastodon</a>, <a href="https://x.com/surfaceowl" target="_blank">X</a>, <a href="https://pybay.org/" target="_blank">PyBay,</a> <a href="https://github.com/pybay" target="_blank">PyBay GitHub</a></span></p><p dir="ltr" style="line-height: 1.38; margin-bottom: 11pt; margin-top: 11pt; text-align: center;"><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 12pt; font-style: normal; font-variant: normal; font-weight: 700; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;">Dave Forgac</span></p><p dir="ltr" style="line-height: 1.38; margin-bottom: 11pt; margin-top: 11pt; text-align: center;"><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"><a href="https://daveops.com/" target="_blank">Website</a>, <a href="https://mastodon.social/@tylerdave" target="_blank">Mastodon</a>, <a href="https://github.com/tylerdave" target="_blank">GitHub</a>, <a href="https://www.linkedin.com/in/daveforgac/" target="_blank">LinkedIn</a></span></p><p dir="ltr" style="line-height: 1.38; margin-bottom: 11pt; margin-top: 11pt; text-align: center;"><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 12pt; font-style: normal; font-variant: normal; font-weight: 700; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;">Inessa Pawson</span></p><p dir="ltr" style="line-height: 1.38; margin-bottom: 11pt; margin-top: 11pt; text-align: center;"><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"><a href="https://github.com/InessaPawson" target="_blank">GitHub</a>, <a href="https://linkedin.com/in/ipawson" target="_blank">LinkedIn</a></span></p><p dir="ltr" style="line-height: 1.38; margin-bottom: 11pt; margin-top: 11pt; text-align: center;"><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 12pt; font-style: normal; font-variant: normal; font-weight: 700; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;">James Abel</span></p><p dir="ltr" style="line-height: 1.38; margin-bottom: 11pt; margin-top: 11pt; text-align: center;"><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"><a href="http://www.abel.co/" target="_blank">Website</a>, <a href="https://www.linkedin.com/in/jamesabel/" target="_blank">LinkedIn</a>, <a href="https://github.com/jamesabel" target="_blank">GitHub</a>, <a href="https://bsky.app/profile/jamesabel.bsky.social" target="_blank">Bluesky</a></span></p><p dir="ltr" style="line-height: 1.38; margin-bottom: 11pt; margin-top: 11pt; text-align: center;"><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 12pt; font-style: normal; font-variant: normal; font-weight: 700; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;">Karen Dalton</span></p><p dir="ltr" style="line-height: 1.38; margin-bottom: 11pt; margin-top: 11pt; text-align: center;"><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"><a href="https://www.linkedin.com/in/karend" target="_blank">LinkedIn</a></span></p><p dir="ltr" style="line-height: 1.38; margin-bottom: 11pt; margin-top: 11pt; text-align: center;"><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 12pt; font-style: normal; font-variant: normal; font-weight: 700; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;">Mia Bajić</span></p><p dir="ltr" style="line-height: 1.38; margin-bottom: 11pt; margin-top: 11pt; text-align: center;"><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 12pt; font-style: normal; font-variant: normal; font-weight: 700; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;">Tatiana Andrea Delgadillo Garzofino</span></p><p dir="ltr" style="line-height: 1.38; margin-bottom: 11pt; margin-top: 11pt; text-align: center;"><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"><a href="https://taicoding.com/" target="_blank">Website</a>, <a href="https://github.com/taicoding" target="_blank">GitHub</a>, <a href="https://linkedin.com/in/taicoding" target="_blank">LinkedIn</a>, <a href="https://www.instagram.com/taicoding" target="_blank">Instagram</a></span></p><p dir="ltr" style="line-height: 1.38; margin-bottom: 11pt; margin-top: 11pt;"><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;">Thank you for your continued contributions. We have added you to our <a href="https://www.python.org/psf/fellows-roster/" target="_blank">Fellows Roster</a></span><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;">.</span></p><p dir="ltr" style="line-height: 1.38; margin-bottom: 11pt; margin-top: 11pt; text-align: justify;"><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;">The above members help support the Python ecosystem by being phenomenal leaders, sustaining the growth of the Python scientific community, maintaining virtual Python communities, maintaining Python libraries, creating educational material, organizing Python events and conferences, starting Python communities in local regions, and overall being great mentors in our community. Each of them continues to help make Python more accessible around the world. To learn more about the new Fellow members, check out their links above.</span></p><p dir="ltr" style="line-height: 1.38; margin-bottom: 11pt; margin-top: 11pt;"><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;">Let's continue recognizing Pythonistas all over the world for their impact on our community. The criteria for Fellow members is available on our <a href="https://www.python.org/psf/fellows" target="_blank">PSF Fellow Membership page</a></span><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;">. If you would like to nominate someone to be a PSF Fellow, please send a description of their Python accomplishments and their email address to psf-fellow at python.org.</span><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"> We are accepting nominations for </span><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;">Quarter 1 of 2026 through February 20th, 2026</span><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;">.</span></p><p dir="ltr" style="line-height: 1.38; margin-bottom: 11pt; margin-top: 11pt;"><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;">Are you a PSF Fellow and want to help the Work Group review nominations? Contact us at psf-fellow at python.org.</span></p>Marie Nordinhttp://www.blogger.com/profile/15138793242213676112noreply@blogger.comtag:blogger.com,1999:blog-8520.post-62550386948965543102026-01-13T08:00:00.001-05:002026-01-13T08:00:00.109-05:00Anthropic invests $1.5 million in the Python Software Foundation and open source security<p><span face="Arial, sans-serif" style="font-size: 11pt; white-space-collapse: preserve;">We are thrilled to announce that Anthropic has entered into a two-year partnership with the Python Software Foundation (PSF) to contribute a landmark total of $1.5 million to support the foundation’s work, with an emphasis on Python ecosystem security. This investment will enable the PSF to make crucial security advances to CPython and the Python Package Index (PyPI) benefiting all users, and it will also sustain the foundation’s core work supporting the Python language, ecosystem, and global community.</span></p><div><b><span face="Arial, sans-serif"><span style="font-size: 14.6667px; white-space-collapse: preserve;">Innovating open source security</span></span><span face="Arial, sans-serif" style="font-size: 11pt; white-space-collapse: preserve;"> </span></b></div><div><span face="Arial, sans-serif" style="font-size: 11pt; white-space-collapse: preserve;"><br /></span></div><div><span face="Arial, sans-serif"><span style="font-size: 14.6667px; white-space-collapse: preserve;">Anthropic’s funds will enable the PSF to make progress on our security roadmap, including work designed to protect millions of PyPI users from attempted supply-chain attacks. Planned projects include creating new tools for automated proactive review of all packages uploaded to PyPI, improving on the current process of reactive-only review. We intend to create a new dataset of known malware that will allow us to design these novel tools, relying on capability analysis. One of the advantages of this project is that we expect the outputs we develop to be transferable to all open source package repositories. As a result, this work has the potential to ultimately improve security across multiple open source ecosystems, starting with the Python ecosystem.</span></span></div><div><span face="Arial, sans-serif"><span style="font-size: 14.6667px; white-space-collapse: preserve;"><br /></span></span></div><div><span face="Arial, sans-serif"><div><span style="font-size: 14.6667px; white-space-collapse: preserve;">This work will build on <a href="https://sethmlarson.dev/">PSF Security Developer in Residence Seth Larson</a>’s security roadmap with contributions from <a href="https://www.miketheman.net/">PyPI Safety and Security Engineer Mike Fiedler</a>, both roles generously funded by <a href="https://alpha-omega.dev/">Alpha-Omega</a>.&nbsp;</span></div><div><span style="font-size: 14.6667px; white-space-collapse: preserve;"><br /></span></div><div><span style="font-size: 14.6667px; white-space-collapse: preserve;"><b>Sustaining the Python language, ecosystem, and community </b></span></div><div><span style="font-size: 14.6667px; white-space-collapse: preserve;"><br /></span></div><div><span style="font-size: 14.6667px; white-space-collapse: preserve;">Anthropic’s support will also go towards the PSF’s core work, including the Developer in Residence program driving contributions to CPython, community support through grants and other programs, running core infrastructure such as PyPI, and more. We couldn’t be more grateful for Anthropic’s remarkable support, and we hope you will join us in thanking them for their investment in the PSF and the Python community. </span></div><div><span style="font-size: 14.6667px; white-space-collapse: preserve;"><br /></span></div><div><span id="docs-internal-guid-7f0633af-7fff-2e4f-8cda-36a65683448c"><p dir="ltr" style="line-height: 1.38; margin-bottom: 0pt; margin-top: 0pt;"><span style="font-size: 11pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;">About Anthropic</span></p><div><span style="font-size: 11pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;"><br /></span></div><div><span style="font-size: 14.6667px; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">Anthropic is the AI research and development company behind Claude — the frontier model used by millions of people worldwide.</span><span style="font-size: 11pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span></div><div><span style="font-size: 11pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;"><br /></span></div><div><span style="font-size: 14.6667px; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"><b>About the PSF</b></span><span style="font-size: 11pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;"> </span></div><div><span style="font-size: 11pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;"><br /></span></div><div><span style="font-size: 14.6667px; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">The Python Software Foundation is a non-profit whose mission is to promote, protect, and advance the Python programming language, and to support and facilitate the growth of a diverse and international community of Python programmers. The PSF supports the Python community using corporate sponsorships, grants, and donations. Are you interested in sponsoring or donating to the PSF so we can continue supporting Python and its community? Check out our <a href="https://www.python.org/sponsors/application/">sponsorship program</a>, <a href="http://donate.python.org">donate directly here</a>, or <a href="mailto:sponsors@python.org">contact our team</a>! </span><span style="font-size: 11pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> </span></div><div><span style="font-size: 11pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; font-weight: 700; vertical-align: baseline; white-space-collapse: preserve;"><br /></span></div></span></div><div style="font-size: 14.6667px; white-space-collapse: preserve;"><br /></div></span></div>Loren Craryhttp://www.blogger.com/profile/06125752284896762014noreply@blogger.comtag:blogger.com,1999:blog-8520.post-77806639396023929562025-12-02T07:00:00.001-05:002025-12-02T07:00:00.111-05:00 Sovereign Tech Agency and PSF Security Partnership<p>We are thrilled to announce that the <a href="https://www.sovereign.tech/">Sovereign Tech Agency</a> has <a href="https://www.sovereign.tech/tech/python-software-foundation">committed to a €86,000 investment</a> in work to be performed by the Python Software Foundation to improve the security of CPython and the Python Package Index (PyPI). The Sovereign Tech Agency is a public organization in Germany that focuses on increasing the security and resilience of critical open source software that forms the foundation of modern digital technology.</p><div><div>With the Sovereign Tech Fund, they invest globally in open software components that underpin economic competitiveness and the ability to innovate. Improving the security, stability, and reusability of open software components like CPython and PyPI is a win for everyone. This&nbsp; project consists of two components, which we are carrying out in parallel: one focused on CPython and one focused on PyPI.&nbsp;</div></div><div><br /></div><div><div>The CPython component, led by <a href="https://sethmlarson.dev/">PSF Security Developer in Residence Seth Larson</a>, concerns archive-handling vulnerabilities in CPython’s standard library. Following multiple CVEs affecting the tarfile and zipfile modules, systematic fuzz-testing is required to uncover potential regressions or untested cases in extraction filtering. These modules are used by most Python packaging and installation tools, and therefore form a critical part of the software supply chain. The work commissioned through the Sovereign Tech Fund’s investment will develop test cases and seed corpora for these modules, integrate fuzz-testing through the OSS-Fuzz infrastructure, and validate filtering protections against potential bypasses.</div></div><div><br /></div><div><div>The PyPI component, led by <a href="https://www.miketheman.net/">PSF PyPI Safety and Security Engineer Mike Fiedler</a> with support from Director of Infrastructure Ee Durbin, focuses on PyPI account integrity and recovery. Current recovery procedures rely solely on email and two-factor authentication, creating support burdens and limiting automated verification. The Sovereign Tech Fund’s investment commissions work that introduces a mechanism for associating PyPI accounts with verified third-party identities through OAuth 2.0 / OIDC flows, allowing account recovery through trusted external services. These associations will improve both user experience and platform reliability while preserving user privacy and autonomy.</div></div><div><br /></div><div><div>We appreciate the Sovereign Tech Fund for supporting these critical improvements that will make CPython and PyPI more secure for millions of users. If you’d like to learn more about the advances our Developers in Residence are driving or investing in these roles and work, check out our <a href="https://www.python.org/psf/developersinresidence/">Developers in Residence page</a> and reach out out to sponsors@python.org</div></div><div><br /></div>Loren Craryhttp://www.blogger.com/profile/06125752284896762014noreply@blogger.comtag:blogger.com,1999:blog-8520.post-51486891115032913942025-11-25T13:51:00.000-05:002025-11-25T13:51:26.247-05:00PSF Code of Conduct Working Group Shares First Transparency ReportThe PSF’s <a href="https://wiki.python.org/psf/ConductWG/Charter">Code of Conduct Working Group</a> is a group of volunteers whose purpose is to foster a diverse and inclusive Python community by enforcing the <a href="https://policies.python.org/python.org/code-of-conduct/">PSF Code of Conduct</a>, along with providing guidance and recommendations to the Python community on codes of conduct, that supports the PSF mission support and facilitate the growth of a diverse and international community of Python programmers. <br /><br />The working group has recently committed to publishing annual transparency reports and we are pleased to share the <a href="https://policies.python.org/python.org/code-of-conduct/reports/PSF-Transparency-Report-2024.pdf">first report with you today, for the 2024 calendar year</a>. The initial transparency report took some time to produce, but we've improved our recording keeping practices to make future reports easier to prepare.<br /><br />The Working Group spent time formalizing our record keeping this year, and going forward we plan to publish our transparency reports in the first quarter of each year. Each year’s report will be added to the same place in the <a href="https://policies.python.org/python.org/code-of-conduct/#transparency-reports">PSF's Code of Conduct documentation</a> so that community members can easily access them. If you have thoughts or feedback on how to make these reports more useful, we welcome you to send us an email at conduct-wg@python.org.Deb Nicholsonhttp://www.blogger.com/profile/06173618710147431813noreply@blogger.comtag:blogger.com,1999:blog-8520.post-25690138625393846192025-11-24T10:44:00.000-05:002025-11-24T10:44:14.884-05:00Python is for Everyone: Grab PyCharm Pro for 30% off—plus a special bonus!<p>So far <a href="https://pyfound.blogspot.com/2025/11/python-is-for-everyone-join-in-psf-year.html" target="_blank">this year’s PSF fundraising campaign</a> has been a truly inspiring demonstration of the Python community's generosity, strength, and solidarity. We set a special 🥧 themed goal of $314,159.26 (it’s <a href="https://www.python.org/downloads/release/python-3140/" target="_blank">the year of Python 3.14</a>!), and with your support, we are already at 93% of that goal—WOW!! Thank you to every single person who has already donated: you have our deep gratitude, and we are committed to making every dollar count.&nbsp;</p><p>🚨 New target alert: If we hit our goal of $100Kπ- we are going to release a nice video AND we are going to set a new goal, as well as an additional <b><i>super stretch</i></b> goal. <a href="http://donate.python.org" target="_blank">Can you chip in to get us there</a>? We’re confident that with your contributions and support we can reach those new heights. Because Python is for everyone, thanks to you!<br /><br />Today, we’re excited to share another way for you to participate AND get awesome benefits from JetBrains! We have the opportunity to once again partner with JetBrains to deliver a special promotion: <a href="https://lp.jetbrains.com/support-python" target="_blank">30% off PyCharm Pro with ALL proceeds going to the PSF</a>. <b>New this year: </b>Folks who take advantage of this offer will also receive a free tier of AI Assistant in PyCharm! Read on to learn more about the PyCharm promotion, how to grab it while it lasts, and other ways you can contribute to the PSF’s 2025 end-of-year fundraiser. Huge thanks to <a href="https://www.jetbrains.com/" target="_blank">JetBrains</a> for stepping up to provide this awesome deal 🐍⚡️</p><p>&nbsp;</p><h2 style="text-align: left;">LIMITED TIME! Grab PyCharm Pro at 30% off with a free tier of AI Assistant:</h2><ul style="text-align: left;"><li><b>Grab a discounted Python IDE: PyCharm!</b> JetBrains is once again supporting the PSF by providing a 30% discount on PyCharm Pro and ALL proceeds will go to the PSF! Your subscription will include a free tier of AI Assistant in PyCharm. You can take advantage of this discount by clicking the button on the <a href="https://lp.jetbrains.com/support-python" target="_blank">JetBrains promotion page</a>, and the discount will be automatically applied when you check out. The promotion will only be available through December 12th, so go grab the deal today!</li></ul><h2 style="text-align: center;">&gt;&gt;&gt; <a href="https://lp.jetbrains.com/support-python" target="_blank">Get PyCharm Pro!</a> &lt;&lt;&lt;</h2><div style="text-align: center;">&nbsp;</div><h2 style="text-align: left;">There are two ways to join our fundraiser through <a href="http://donate.python.org" target="_blank">donate.python.org</a>:</h2><ul style="text-align: left;"><li><b>Donate directly to the PSF!</b> Your donation is a direct way to support and power the future of the Python programming language and community you love. Every donation makes a difference, and we work hard to make a little go a long way.</li><li><b>Become a PSF Supporting Member!</b> When you sign up as a Supporting Member of the PSF, you become a part of the PSF, are eligible to vote in PSF elections, and help us sustain our mission with your annual support. You can sign up as a Supporting Member at the usual annual rate ($99 USD), or you can take advantage of our sliding scale option (starting at $25 USD)!</li></ul><h2 style="text-align: center;">&gt;&gt;&gt; <a href="http://donate.python.org" target="_blank">Donate or Become a Member Today!</a> &lt;&lt;&lt;</h2><div style="text-align: center;">&nbsp;</div><h2 style="text-align: left;">If you already donated, you’re already a PSF member, AND you already grabbed PyCharm at 30% off (look at you, you exemplary supporter!🏆) you can:</h2><ul style="text-align: left;"><li><b>Share the fundraiser with your regional and project-based communities:</b> Share this blog post in your Python-related Discords, Slacks, social media accounts- wherever your Python community is! Keep an eye on <a href="https://pyfound.blogspot.com/2025/02/where-is-psf-2025-edition.html" target="_blank">our social media accounts</a> and repost to share the latest stories and news for the campaign.</li><li><b>Share your Python story with a call to action: </b>We invite you to share your personal Python, PyCon, or PSF story. What impact has it made in your life, in your community, in your career? Share your story in a blog post or on your social media platform of choice and add a link to <a href="http://donate.python.org" target="_blank">donate.python.org</a>.</li><li><b>Ask your employer to sponsor:</b> If your company is using Python to build its products and services, check to see if they already sponsor the PSF on our<a href="https://www.python.org/psf/sponsors/" target="_blank"> Sponsors page</a>. If not, reach out to your organization's internal decision-makers and impress on them just how important it is for us to power the future of Python together, and send them our&nbsp;<a href="https://www.python.org/sponsors/application/" target="_blank">sponsor prospectus</a>.</li></ul><div style="text-align: left;">&nbsp;</div><h2 style="text-align: left;">Your donations and support:</h2><ul style="text-align: left;"><li>Keep Python thriving </li><li>Support CPython and PyPI progress </li><li>Increase security across the Python ecosystem </li><li>Bring the global Python community together </li><li>Make our community more diverse and robust every year</li></ul>Marie Nordinhttp://www.blogger.com/profile/15138793242213676112noreply@blogger.comtag:blogger.com,1999:blog-8520.post-68933194068042368752025-11-12T11:39:00.001-05:002025-11-12T17:03:33.050-05:00Python is for everyone: Join in the PSF year-end fundraiser & membership drive! <p>The <a href="http://python.org/psf" target="_blank">Python Software Foundation</a> (PSF) is the charitable organization behind Python, dedicated to advancing, supporting, and protecting the Python programming language and the community that sustains it. That mission and cause are more than just words we believe in. Our tiny but mighty team works hard to deliver the projects and services that allow Python to be the thriving, independent, community-driven language it is today. Some of what the PSF does includes producing <a href="https://us.pycon.org" target="_blank">PyCon US</a>, hosting the <a href="http://pypi.org" target="_blank">Python Package Index (PyPI)</a>, supporting <a href="https://www.python.org/psf/developersinresidence/" target="_blank">5 Developers-in-Residence</a>, <a href="https://www.python.org/psf/about/" target="_blank">maintaining critical community infrastructure</a>, and more.<br /><br />Python is for teaching, learning, playing, researching, exploring, creating, working– the list goes on and on and on! Support this year's fundraiser with your donations and memberships to help the PSF, the Python community, and the language stay strong and sustainable. <b>Because Python is for everyone, thanks to you.<br /><br /></b></p><h3 style="text-align: left;">There are two direct ways to join through <a href="http://donate.python.org">donate.python.org</a>:&nbsp;</h3><ul style="text-align: left;"><li><b>Donate directly to the PSF!</b> Your donation is a direct way to support and power the future of the Python programming language and community you love. Every donation makes a difference, and we work hard to make a little go a long way.</li><li><b>Become a PSF Supporting Member!</b> When you sign up as a Supporting Member of the PSF, you become a part of the PSF, are eligible to vote in PSF elections, and help us sustain our mission with your annual support. You can sign up as a Supporting Member at the usual annual rate ($99 USD), or you can take advantage of our sliding scale option (starting at $25 USD)!</li></ul><div style="text-align: center;">&nbsp;</div><h3 style="text-align: center;">&gt;&gt;&gt; <a href="https://donate.python.org/" target="_blank">Donate or Become a Member Today!</a> &lt;&lt;&lt;</h3><div style="text-align: center;">&nbsp;</div><h3 style="text-align: left;">If you already donated and/or you’re already a member, you can:</h3><ul style="text-align: left;"><li><b>Share the fundraiser with your regional and project-based communities:</b> Share this blog post in your Python-related Discords, Slacks, social media accounts- wherever your Python community is! Keep an eye on <a href="https://pyfound.blogspot.com/2025/02/where-is-psf-2025-edition.html" target="_blank">our social media accounts</a> to see the latest stories and news for the campaign.</li><li><b>Share your Python story with a call to action: </b>We invite you to share your personal Python, PyCon, or PSF story. What impact has it made in your life, in your community, in your career? Share your story in a blog post or on your social media platform of choice and add a link to donate.python.org.</li><li><b>Ask your employer to sponsor:</b> If your company is using Python to build its products and services, check to see if they already sponsor the PSF on our <a href="https://www.python.org/psf/sponsors/" target="_blank">Sponsors page</a>. If not, reach out to your organization's internal decision-makers and impress on them just how important it is for us to power the future of Python together, and send them our <a href="https://www.python.org/sponsors/application/" target="_blank">sponsor prospectus</a>.</li></ul><p>&nbsp;</p><h3 style="text-align: left;">Your donations and support:<br /></h3><ul style="text-align: left;"><li>Keep Python thriving&nbsp;</li><li>Support CPython and PyPI progress&nbsp;</li><li>Increase security across the Python ecosystem&nbsp;</li><li>Bring the global Python community together&nbsp;</li><li>Make our community more diverse and robust every year</li></ul><p>&nbsp;</p><h2 style="text-align: left;">Highlights from 2025:</h2><ul style="text-align: left;"><li><b>Producing another wonderful PyCon US:</b> We welcomed 2,225 attendees for <a href="https://pycon.blogspot.com/2025/08/pycon-us-2025-recap-and-recordings.html" target="_blank">PyCon US 2025</a>– 1,404 of whom were newcomers– at the David L. Lawrence Convention Center in beautiful downtown Pittsburgh. PyCon US 2025 was packed with 9 days of content, education, and networking for the Python community, including 6 Keynote Sessions, 91 Talks, including the Charlas Spanish track, 24 Tutorials, 20 Posters, 30+ Sprint Projects, 146 Open Spaces, and 60 Booths!&nbsp;</li><li><b>Continuing to enhance Python and PyPI’s security through Developers-in-Residence:</b> The PSF’s PyPI Safety and Security Engineer, Mike Fiedler, has implemented new safeguards, including automation to detect expiring email domains and prevent impersonation attacks, as well as guidance for maintainers to use more secure authentication methods like WebAuthn and Trusted Publishers. The PSF’s Security Developer-in-Residence, Seth Larson, continues to lead efforts to strengthen Python’s security and transparency. His work on PEP 770 introduces standardized Software Bill-of-Materials (SBOMs) within Python packages, improving visibility into dependencies for stronger supply chain security. A <a href="https://alpha-omega.dev/blog/slippery-zips-and-sticky-tar-pits-security-and-archives-white-paper-by-seth-larson-python-software-foundation/" target="_blank">new white paper co-authored with Alpha-Omega</a> outlines how these improvements enhance trust and measurability across the ecosystem.&nbsp;</li><li><b>Adoption of <a href="http://pypistats.org">pypistats.org</a>:</b> The <a href="https://pyfound.blogspot.com/2025/08/pypistats-org-is-now-operated-by-the-psf.html" target="_blank">PSF infrastructure team has officially adopted the operation of pypistats.org</a>, which had been run by volunteer Christopher Flynn for over six years (thank you, Christopher!). The PSF’s Infrastructure Team now handles the service’s infrastructure, costs, and domain registration– and the service itself remains open source and community-maintained.&nbsp;</li><li><b>Advancing PyPI Organizations:</b> The rollout of <a href="https://docs.pypi.org/organization-accounts/" target="_blank">PyPI Organizations</a> is now well underway, marking a major milestone in improving project management and collaboration across the Python ecosystem. With new Terms of Service finalized and supporting tools in place, the PSF has cleared its backlog of requests and approved thousands of organizations—including 2,409 Community and 4979 Company organizations as of today. Hundreds of these organizations have already begun adding members, transferring projects, and subscribing to the new Company tier, generating sustainable support for the PSF. We’re excited to see how teams are using these new features to better organize and maintain their projects on PyPI.</li><li><b>Empowering the Python community through Fiscal Sponsorship:</b> We are proud to continue supporting our 20 fiscal sponsoree organizations with their initiatives and events all year round. The PSF provides 501(c)(3) tax-exempt status to fiscal sponsorees such as PyLadies and Pallets, and provides back office support so they can focus on their missions. Consider <a href="https://linktr.ee/thepsf" target="_blank">donating to your favorite PSF Fiscal Sponsoree</a> and check out our <a href="https://www.python.org/psf/fiscal-sponsorees/" target="_blank">Fiscal Sponsorees page</a> to learn more about what each of these awesome organizations is all about!</li><li><b>Serving our community with grants:</b> The PSF Grants Program awarded approximately $340K to 86 grantees around the world; supporting local conferences, workshops, and community initiatives that keep Python growing and accessible to all. While we had to make <a href="https://pyfound.blogspot.com/2025/08/the-psf-has-paused-our-grants-program.html" target="_blank">the difficult decision to pause the program early</a> to ensure financial sustainability, we would love to reopen it as soon as possible. Your participation in this year’s fundraiser fuels that effort!</li><li><b>Honoring community leaders:</b> The PSF honored three leaders with Distinguished Service Awards this year. <a href="https://pyfound.blogspot.com/2025/03/psf-dsa-ewa-jodlowska.html" target="_blank">Ewa Jodlowska</a> helped transform the PSF into a professional, globally supportive organization. <a href="https://pyfound.blogspot.com/2025/03/dsa-thomas-wouters.html" target="_blank">Thomas Wouters</a> has contributed decades of leadership, guidance, and institutional knowledge. <a href="https://pyfound.blogspot.com/2025/03/dsa-van-lindberg.html" target="_blank">Van Lindberg</a> provided essential legal expertise that guided the PSF through growth and governance. Their dedication has left a lasting impact on the PSF, Python, and its community.&nbsp;The PSF was also thrilled to recognize <a href="https://pyfound.blogspot.com/2025/10/announcing-psf-community-service-award.html" target="_blank">Katie McLaughlin, Sarah Kuchinsky, and Rodrigo Girão Serrão with Community Service Awards</a>&nbsp;(CSA) for their outstanding contributions to the Python community. Their dedication, creativity, and generosity embody the spirit of Python and strengthen our global community.&nbsp;We recognized Jay Miller with a CSA for his work to improve diversity, inclusion, and equity in the global Python community through founding and sustaining Black Python Devs. We also honored Matt Lebrun and Micaela Reyes with CSA's for their efforts to grow and support the Python community in the Philippines through conferences, meetups, and volunteer programs.</li><li><b>Finding strength in the Python community:</b> When the PSF shared <a href="https://pyfound.blogspot.com/2025/10/NSF-funding-statement.html" target="_blank">the news about turning down a NSF grant</a>, the outpouring of support from the Python community was nothing short of incredible. In just one day, you helped raise over $60K and welcomed 125 new Supporting Members- in the week after, that number jumped to $150K+ and 270+ new Supporting Members! A community-led matching campaign and countless messages of support, solidarity, and encouragement reminded us that while some choices are tough, we never face them alone. The PSF Board &amp; Staff are deeply moved and energized by your words, actions, and continued belief in our shared mission. This moment has set the stage for a record-breaking end-of-year fundraiser, and we are so incredibly grateful to be in community with each of you.&nbsp;</li></ul>Marie Nordinhttp://www.blogger.com/profile/15138793242213676112noreply@blogger.comtag:blogger.com,1999:blog-8520.post-60379222957116275332025-11-04T06:59:00.001-05:002025-11-04T08:36:32.421-05:00Connecting the Dots: Understanding the PSF’s Current Financial Outlook<p>As the PSF heads into our end-of-year fundraiser, we want to share information to help “connect the dots” and show a more complete picture of the PSF’s current financial outlook. You’ve heard from us on subjects related to our financial position from several different angles recently (a list of those posts is below). We’ve prioritized proactive communications, because we believe in transparency, we have trust in our community, and we value keeping you informed— we know how invested in and impacted by our work you are. We now want to pull those threads together in order to create some shared clarity on the big picture, and, hopefully, inspire you to action to support our fundraising efforts.&nbsp;&nbsp;</p><h2 style="text-align: left;">The dots</h2><p>Many groups, organizers, and individuals in the Python community and beyond are experiencing the impacts of the current financial environment, including inflation, reduced sponsorship, economic pressure in the tech sector, and global/local uncertainty and conflict. Unfortunately, the PSF has felt these effects as well, in a number of ways. We’ve been doing our best to share how the current environment impacts our areas of service to the community as the PSF navigates these challenges over the past couple of years:<br /></p><ul style="text-align: left;"><li><a href="https://pyfound.blogspot.com/2024/12/psf-grants-program-charter-updates-tldr.html" target="_blank">PSF Grants Program Changes</a></li><li><a href="https://pycon.blogspot.com/2024/11/important-changes-ahead-commitment-to.html" target="_blank">PyCon US 2025 Financial Transparency</a></li><li><a href="https://pyfound.blogspot.com/2025/08/the-psf-has-paused-our-grants-program.html" target="_blank">PSF Grants Program Pause</a></li><li><a href="https://openssf.org/blog/2025/09/23/open-infrastructure-is-not-free-a-joint-statement-on-sustainable-stewardship/" target="_blank">Open Infrastructure is not Free Joint Statement&nbsp;</a></li><li><a href="https://pyfound.blogspot.com/2025/10/open-infrastructure-is-not-free-pypi.html" target="_blank">Our post on the Open Infrastructure is Not Free</a></li><li><a href="https://pyfound.blogspot.com/2025/10/NSF-funding-statement.html" target="_blank">NSF Grant Application Withdrawal</a></li></ul><p>To briefly summarize, the PSF’s assets and yearly revenue have declined, and costs have increased, while the demand and need for our work has continued to multiply.&nbsp;<br /><br />Historically, PyCon US has been a source of revenue for the PSF, enabling us to fund programs like our currently paused <a href="https://www.python.org/psf/grants/" target="_blank">Grants Program</a>. A PSF-run PyCon US is also an essential program for the PSF to deliver value to our sponsors. Unfortunately, PyCon US has run at a loss for three years—and not from a lack of effort from our staff and volunteers! Everyone has been working very hard to find areas where we can trim costs, but even with those efforts, inflation continues to surge, and changing US and economic conditions have reduced our attendance. Because PyCon US is still a 2000+ person event, we must secure venue contracts for event spaces that can accommodate that number of people, years in advance. Those contracts come with a lot of requirements, such as union labor, required vendors, and many more details (iykyk) that, in the end, amount to a hefty spend.<br /><br />Meanwhile, Python usage has continued to surge (which is wonderful!), but rather than keep pace, corporate investment back into the language and the community has declined overall. The PSF has longstanding sponsors and partners that we are ever grateful for, but signing on new corporate sponsors has slowed. We have been seeking out alternate revenue channels to diversify our income, with some success and some challenges. <a href="https://docs.pypi.org/organization-accounts/pricing-and-payments/" target="_blank">PyPI Organizations offers paid features to companies</a> (PyPI features are always free to community groups) and has begun bringing in monthly income.&nbsp;<br /><br />We’ve also been seeking out grant opportunities where we find good fits with our mission. We made it far along in one large U.S. Government grant process, but <a href="https://pyfound.blogspot.com/2025/10/NSF-funding-statement.html" target="_blank">ultimately decided to withdraw our application because it conflicted with our values and mission</a>. The community's supportive response to that decision has been heartening and brought in an unexpected surge of material support totaling $135K+ USD from 1400+ donors, which includes 270+ new PSF members! The PSF is astounded and deeply appreciative at the outpouring of solidarity in both words and actions. This remarkable show of support reminds the us of the community’s strength, and reinforces our resolve in the decision to withdraw from the grant process, even as the $1.5M gap from the grant remains.<br /><br />Our <a href="https://www.python.org/psf/annual-report/2024/" target="_blank">2024 Annual Impact Report</a> provides a window on the current economic outlook for the PSF, with a loss in net income and a dip in the growth of assets in 2024. Because we have so few expense categories (the vast majority of our spending goes to running PyCon US, the Grants Program, and our small 13-member staff), we have limited “levers to pull” when it comes to budgeting and long-term sustainability. As you can see from the categories mentioned, each of these expense areas leads directly to the services we provide the community. Additionally, we have several sources of assets with donor restrictions (i.e. earmarked funds), meaning we can’t shift those funds to cover other areas of need.&nbsp;</p><p></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiZPIx4i6NVY6f8AVHYRfZ94Tk5-dQRuVfT9G4f7ca2Os8q9d5qVbpdfR362immobVURI1JvV8ivZUpeO8owWUZUJ1TWL7FbS5quiYak-mQwN1UrtyU1U6By56QcKoDAiKHQvkjlvWa1MLXD4KNC0-dr_5aFBiex6DgEubx5FNP98iH3RQcSQ/s1056/PYTHON_annual_report_2024_digital-1.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="816" data-original-width="1056" height="309" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiZPIx4i6NVY6f8AVHYRfZ94Tk5-dQRuVfT9G4f7ca2Os8q9d5qVbpdfR362immobVURI1JvV8ivZUpeO8owWUZUJ1TWL7FbS5quiYak-mQwN1UrtyU1U6By56QcKoDAiKHQvkjlvWa1MLXD4KNC0-dr_5aFBiex6DgEubx5FNP98iH3RQcSQ/w400-h309/PYTHON_annual_report_2024_digital-1.png" width="400" /></a></div><br />&nbsp;<p></p><h2 style="text-align: left;">What does this mean?&nbsp;</h2><p>Overall, the PSF is facing significant financial challenges, but we are actively monitoring the situation and taking action where we can. This post is our way of “raising the flag” early and calling in the community proactively. We currently have more than six months of runway (as opposed to our preferred 12 months+ of runway), so the PSF is not at immediate risk of having to make more dramatic changes, but we are on track to face difficult decisions if the situation doesn’t shift in the next year.&nbsp;</p><h2 style="text-align: left;">What we’re doing</h2>Based on all of this, the PSF has been making changes and working on multiple fronts to combat losses and work to ensure financial sustainability, in order to continue protecting and serving the community in the long term. Some of these changes and efforts include:<br /><ul style="text-align: left;"><li>Pursuing new sponsors, specifically in the AI industry and the security sector</li><li>Increasing sponsorship package pricing to match inflation</li><li>Making adjustments to reduce PyCon US expenses</li><li>Pursuing funding opportunities in the US and Europe</li><li>Working with other organizations to raise awareness</li><li>Strategic planning, to ensure we are maximizing our impact for the community while cultivating mission-aligned revenue channels</li></ul>The PSF’s end-of-year fundraiser effort is usually run by staff based on their capacity, but this year we have assembled a fundraising team that includes Board members to put some more “oomph” behind the campaign. We’ll be doing our regular fundraising activities; we’ll also be creating a unique webpage, piloting temporary and VERY visible pop-ups to python.org and PyPI.org, and telling more stories from our Grants Program recipients.&nbsp;<br /><h2 style="text-align: left;">What you can do</h2><b>So, what can you do to help us gain sponsors to ensure critical infrastructure, our community, and more can stay supported and sustainable?</b><br /><ol style="text-align: left;"><li>If your company is using Python to build its products and services, check to see if they already sponsor the PSF on our <a href="https://www.python.org/psf/sponsors/" target="_blank">Sponsors page</a>.</li><li>If not, reach out to your organization's internal decision-makers and impress on them just how important it is for us to power the future of Python together, and send them <a href="https://www.python.org/psf/prospectus2026/" target="_blank">our sponsor prospectus</a>.</li><li>Point out the various benefits they will receive from sponsoring the PSF. Mention that <a href="https://us.pycon.org/" target="_blank">PyCon US 2026</a> is coming up next spring, where they can connect with the community, recruit, and understand the current direction of the Python language!</li><li>Remind them to reach out to sponsors@python.org if they have any questions or would like a walk-through of our sponsorship program.</li></ol>As the PSF prepares for our end-of-year fundraiser, we want to emphasize the importance of our community's support. Your relentless passion for Python and our community, along with your individual donations, memberships, stories, advocacy, and more, all make a huge impact and keep our tiny-but-mighty PSF team inspired. Keep your eyes on the <a href="https://pyfound.blogspot.com/" target="_blank">PSF Blog</a>, the <a href="https://discuss.python.org/c/python-software-foundation/9" target="_blank">PSF category on Discuss</a>, and <a href="https://pyfound.blogspot.com/2025/02/where-is-psf-2025-edition.html" target="_blank">our social media accounts</a> for updates and information as we kick off the fundraiser this month. Your boosts of our posts and your personal shares of “why I support the PSF” stories will make all the difference in our end-of-year fundraiser.&nbsp;<br /><br />If this post has you all fired up to personally support the future of Python and the PSF <b><i>right now</i></b>, we always welcome new <a href="https://psfmember.org/civicrm/contribute/transact/?reset=1&amp;id=1" target="_blank">PSF Supporting Members</a> and <a href="https://psfmember.org/civicrm/contribute/transact/?reset=1&amp;id=2" target="_blank">donations</a>. If you have questions about the PSF’s current financial outlook, the steps we’re taking, or how you can get involved, we welcome you to join the <a href="https://pyfound.blogspot.com/2025/10/a-new-psf-board-another-year-of-psf.html" target="_blank">PSF Board Office Hours</a>, <a href="https://discuss.python.org/t/connecting-the-dots-a-new-blog-post-from-the-psf/104717" target="_blank">join the conversation on Discuss</a>, or email psf@python.org. As ever, we are incredibly grateful to be in community with each of you, and we’re honored to have your support.&nbsp;Deb Nicholsonhttp://www.blogger.com/profile/06173618710147431813noreply@blogger.comtag:blogger.com,1999:blog-8520.post-19309493696161098812025-10-30T11:04:00.001-04:002025-10-30T11:04:57.156-04:00Improving security and integrity of Python package archives<p>Security and integrity of the Python packaging ecosystem is critical, and the smallest unit of a packaging ecosystem is a "package". Python packages use existing archive formats like ZIP and tar to distribute Python projects to their users. Archives seem simple on the surface, but many ZIP and tar features can be abused to confuse implementations into seeing different contents of the same archive.</p><p>These vulnerabilities affect the "integrity of the ecosystem" if tools can't agree what a package contents actually are. This can cause many downstream issues, such as vulnerability or malware scanners giving different results from the package when installed on disk.</p><p>The Python Software Foundation Security Developer-in-Residence, Seth Larson, <a href="https://alpha-omega.dev/blog/slippery-zips-and-sticky-tar-pits-security-and-archives-white-paper-by-seth-larson-python-software-foundation/">published a new white paper</a> with <a href="https://alpha-omega.dev">Alpha-Omega</a>&nbsp;titled "Slippery ZIPs and Sticky tar-pits: Security &amp; Archives" about work to remediate 10 vulnerabilities affecting common archive format implementations such as ZIP and tar for critical Python projects.</p><p>The white paper highlights how the PSF maintained&nbsp;<a href="https://blog.pypi.org/#preventing-zip-parser-confusion-attacks-on-python-package-installers">Python Package Index</a> (PyPI) can be used to protect insecure implementations of archives preemptively, whether their vulnerability status is known or unknown, by coordinating disclosures with other packaging tools.&nbsp;</p><p>&nbsp;</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7uiJDZclfRKPtofLwbfd89GFQRL3MnbbhNGZ75p6Up0EBZR10s5OjLUmFqPFKyGWQHn1cJuZlrOlmG3Il7iVaCPXa47fcQGDnsoCxRw1r5KM5s9oJC-YlkVT9gHit9gFjQsq9Eg8p3z3xqs2tgAgvnKWdWEoBPuo0L8duCrKhqVD9KILdvQ/s1337/zip-file.png" style="margin-left: 1em; margin-right: 1em;"><img alt="Diagram showing how a file can be prepended to a ZIP archive and be read differently depending on whether the original file or ZIP header is read first." border="0" data-original-height="715" data-original-width="1337" height="214" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7uiJDZclfRKPtofLwbfd89GFQRL3MnbbhNGZ75p6Up0EBZR10s5OjLUmFqPFKyGWQHn1cJuZlrOlmG3Il7iVaCPXa47fcQGDnsoCxRw1r5KM5s9oJC-YlkVT9gHit9gFjQsq9Eg8p3z3xqs2tgAgvnKWdWEoBPuo0L8duCrKhqVD9KILdvQ/w400-h214/zip-file.png" width="400" /></a></div><br /><p></p><p>The white paper details potential future work to shore up the security of ZIP and tar implementations that are in widespread use, such as the zipfile and tarfile module in the Python standard library. The white paper also makes recommendations for packaging ecosystems regarding <a href="https://reproducible-builds.org/">reproducible builds</a> of archives.</p><p>If you rely on PyPI and the Python packaging ecosystem you can directly contribute to further security work done by the PSF by:</p><ul style="text-align: left;"><li><b><a href="https://psfmember.org/civicrm/contribute/transact/?reset=1&amp;id=1" target="_blank">Become a Member</a>:</b> When you sign up as a Supporting Member of the PSF, you become a part of the PSF. You’re eligible to vote in PSF elections, using your voice to guide our future direction, and you help us sustain what we do with your annual support.</li><li><b><a href="https://psfmember.org/civicrm/contribute/transact/?reset=1&amp;id=2" target="_blank">Donate</a>:</b> Your donation makes it possible to continue our work supporting Python and its community, year after year.</li><li><b><a href="https://www.python.org/sponsors/application/" target="_blank">Sponsor</a>:</b> If your company uses Python and isn’t yet a sponsor, send them our <a href="https://www.python.org/sponsors/application/" target="_blank">sponsorship page</a> or reach out to sponsors@python.org today. The PSF is ever grateful for our sponsors, past and current, and we do everything we can to make their sponsorships beneficial and rewarding.</li></ul><p>The Security Developer-in-Residence position is sponsored by <a href="https://alpha-omega.dev">Alpha-Omega</a>. If you'd like to support improving Python at the ecosystem-scale contact <a href="mailto:sponsors@python.org">sponsors@python.org</a> to discuss sponsoring a <a href="https://www.python.org/psf/developersinresidence/">Developer-in-Residence position</a>.&nbsp;</p><p>&nbsp;</p>Seth Michael Larsonhttp://www.blogger.com/profile/16555309043643874359noreply@blogger.comtag:blogger.com,1999:blog-8520.post-49276471532830744492025-10-29T09:07:00.001-04:002025-10-29T09:07:52.064-04:00Open Infrastructure is Not Free: PyPI, the Python Software Foundation, and Sustainability<p>In September, the Python Software Foundation (PSF) co-signed the <a href="https://openssf.org/blog/2025/09/23/open-infrastructure-is-not-free-a-joint-statement-on-sustainable-stewardship/" target="_blank">Open Infrastructure is Not Free: A Joint Statement on Sustainable Stewardship Letter</a> published by the <a href="https://openssf.org" target="_blank">Open Source Security Foundation</a> (OpenSSF) as a steward of the <a href="https://pypi.org" target="_blank">Python Package Index</a> (PyPI). As a follow up, I would like to share a bit more about the concerns expressed in this letter as they relate to our community and the PSF.<br /></p><h2 style="text-align: left;">History and Current Conditions</h2><p>PyPI (and Python) have continued to experience effectively exponential growth in usage over the past decade, from October 2018 to the present. This is clear in our telemetry:&nbsp;</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEikRtqvW0-U1lpe8glltzrF71lqUD-GVjlT-5xf31OOEWT0KnjX0fKlGCCDs4LV1B-gqaSvbZtwSXLdGWquTEotZ57o9Mhfyphd3zLLEViwuZVHBBa_cJg9rxMx8raOIHTMH_l88n1F5a5JKaewAVkgGh-S4nsNuj1x8GRrv6IuN188LCQqRQ/s512/pypi_dailyrequestsovertime.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="191" data-original-width="512" height="149" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEikRtqvW0-U1lpe8glltzrF71lqUD-GVjlT-5xf31OOEWT0KnjX0fKlGCCDs4LV1B-gqaSvbZtwSXLdGWquTEotZ57o9Mhfyphd3zLLEViwuZVHBBa_cJg9rxMx8raOIHTMH_l88n1F5a5JKaewAVkgGh-S4nsNuj1x8GRrv6IuN188LCQqRQ/w400-h149/pypi_dailyrequestsovertime.png" width="400" /></a><i>&nbsp;</i></div><div class="separator" style="clear: both; text-align: center;"><i><span style="font-size: x-small;">Daily requests over time for PyPI's services, showing a trend line starting in 2018 in the millions, reaching 2-3 billion per day at present.</span></i></div><p>This growth has been met with persistent and growing investment by the PSF. Starting with the hire of a full-time Director of Infrastructure in June 2018, as well as ongoing costs associated with operating PyPI and managing relationships, grants, and sponsorships that support it.<br /><br />At present, the PSF employs personnel and pays operational costs to keep PyPI online, reliable, secure, and supported to meet the <a href="https://openssf.org/blog/2025/09/23/open-infrastructure-is-not-free-a-joint-statement-on-sustainable-stewardship/#:~:text=Modern%20Expectations,%20Real%20Infrastructure" target="_blank">modern expectations</a> of the Python community globally. While we are very fortunate to have long-term partnerships with <a href="https://www.fastly.com/fast-forward" target="_blank">Fastly</a>, <a href="https://aws.amazon.com/opensource/" target="_blank">Amazon Web Services</a>, <a href="https://opensource.google" target="_blank">Google Cloud</a>, <a href="https://opensource.datadoghq.com" target="_blank">Datadog</a>, <a href="https://open.sentry.io" target="_blank">Sentry</a>, <a href="https://depot.dev/changelog" target="_blank">depot</a>, and <a href="https://www.pagerduty.com/impact-hub/" target="_blank">PagerDuty</a> that help us to develop, test, host, operate, monitor, and respond to incidents for PyPI, we still pay monthly fees for things like our support inboxes and other infrastructure.<br /><br />The largest cost for the PSF is staffing. The PSF staff who support PyPI include:</p><ul style="text-align: left;"><li>Ee Durbin (myself), Director of Infrastructure</li><li>Jacob Coffee, Infrastructure Engineer</li><li>Maria Ashna, PyPI Support Specialist</li><li>Mike Fiedler, PyPI Safety and Security Engineer</li></ul><p>While our Safety and Security Engineer role is funded via a grant from <a href="https://www.linuxfoundation.org" target="_blank">The Linux Foundation’s</a> <a href="https://alpha-omega.dev/grants/grantrecipients/" target="_blank">Alpha-Omega</a> project, all others are paid for from the PSF’s general fund, which comes from our <a href="https://www.python.org/sponsors/application/" target="_blank">sponsorship program</a> and <a href="https://psfmember.org/civicrm/contribute/transact/?reset=1&amp;id=2" target="_blank">individual contributions</a>.<br /><br />These roles ensure that the expectations of our community are met when it comes to reliability and availability of the infrastructure and systems that run PyPI. They also ensure responsiveness to both critical support concerns, such as account recovery and project ownership, and to security incidents and malware, as well as continuing improvements to PyPI’s security stance overall.<br /><br />We fulfill these roles and operate PyPI as a free resource for Python developers to find, install, and publish their open source projects in pursuit of our mission. This will not change, but we do believe that there are concrete ways that our community can help to support us. We also believe that there are changes that we can make to help guide PyPI and the PSF to long-term sustainability, commensurate with the value and usage of for-profit companies.<br /><br />While we echo the statement from the open letter, “<i>This is not (yet) a crisis.</i>”, we also believe that “<i>it is a critical inflection point</i>” as we look to the future of the sustainability of PyPI and the PSF.<br /></p><h2 style="text-align: left;">What Needs to Change</h2><p>We are aligned with the OpenSSF letter on their three key points, but would like to say more about how they relate to PyPI:<br /></p><h3 style="text-align: left;">Commercial and institutional partnerships</h3><p>In 2024, the PSF and <a href="https://www.fastly.com/fast-forward" target="_blank">Fastly</a> signed and <a href="https://fosstodon.org/@ThePSF/112456715341751673" target="_blank">announced</a> a five-year agreement under Fastly’s <a href="https://www.fastly.com/fast-forward" target="_blank">Fast Forward program</a>. This is a fundamentally different kind of commitment from others that we rely on to operate PyPI (and the rest of the Python Software Foundation infrastructure).<br /><br />We feel very fortunate to have long-term recurring partnerships with other providers, but the annual renewal cycles do come with overhead and risk. While we work incredibly hard to use donated credits and services as efficiently as possible<sup>1</sup>, a critical in-kind sponsor choosing not to renew would require precious engineering resources to prepare for and complete a migration to another provider or cost the PSF tens of thousands of dollars a month during an interim period to pay outright.<br /><br />As an organization, we will seek to establish similar long-term agreements with our infrastructure partners.<br /></p><h3 style="text-align: left;">Value-added capabilities &amp; tiered access models</h3><p>Having users pay for PyPI usage is something we cannot, and will not do. As we stated when we originally <a href="https://blog.pypi.org/posts/2023-04-23-introducing-pypi-organizations/" target="_blank">announced PyPI Organizations</a>, paid features must remain opt-in, and core features for publishing and installing projects will remain free.<br /><br />However, we do recognize that corporate publishers have been a large driver of the growth in the resources needed to serve PyPI. As we continue to develop PyPI Organizations features, providing these publishers with higher quotas will allow for the usage they drive by publishing large files to PyPI to be paid for.<br /><br />In general, our roadmap for PyPI Organizations will focus on value-added features that benefit Companies as well as Community projects alike, while continuing to provide those features to Community organizations at no cost.<br /></p><h2 style="text-align: left;">How You Can Help</h2><p>If you or your team install from PyPI for development, continuous integration testing, or deployment, please take time to review the ways in which your tooling utilizes caching, and implement as much of it as possible when installing from free package repositories. PyPI itself heavily utilizes caching when installing our own dependencies, leveraging <a href="https://github.com/pypi/warehouse/blob/691680fa603cce2375505b3b265fe72c0e5ca451/Dockerfile#L93-L101" target="_blank">Docker cache mounts and pip’s internal caching</a> to reduce usage and increase speed of builds, not only for our Python dependencies but <a href="https://github.com/pypi/warehouse/blob/691680fa603cce2375505b3b265fe72c0e5ca451/Dockerfile#L18-L19" target="_blank">npm</a> and <a href="https://github.com/pypi/warehouse/blob/691680fa603cce2375505b3b265fe72c0e5ca451/Dockerfile#L46-L68" target="_blank">apt</a> as well. This shared responsibility for usage is one that we all should bear, rather than treating package repositories as a limitless resource.<br /><br />Just as we intend to seek longer-term agreements with the providers we rely on to operate PyPI, we ask members of the community in organizations that provide such support to champion for similar long-term agreements with open source foundations and projects that rely on them for operations.<br /><br />If your company publishes projects to PyPI, consider signing up for <a href="https://pypi.org/manage/organizations/" target="_blank">PyPI Organizations</a>. The recurring revenue generated by Organizations is a key way that we hope to build a reliable and sustainable base for PyPI moving forward.<br /><br />Even if any of those do not apply to you or your company, but you rely on PyPI, you can always:</p><ul style="text-align: left;"><li><b><a href="https://psfmember.org/civicrm/contribute/transact/?reset=1&amp;id=1" target="_blank">Become a Member</a>:</b> When you sign up as a Supporting Member of the PSF, you become a part of the PSF. You’re eligible to vote in PSF elections, using your voice to guide our future direction, and you help us sustain what we do with your annual support.</li><li><b><a href="https://psfmember.org/civicrm/contribute/transact/?reset=1&amp;id=2" target="_blank">Donate</a>:</b> Your donation makes it possible to continue our work supporting Python and its community, year after year.</li><li><b><a href="https://www.python.org/sponsors/application/" target="_blank">Sponsor</a>:</b> If your company uses Python and isn’t yet a sponsor, send them our <a href="https://www.python.org/sponsors/application/" target="_blank">sponsorship page</a> or reach out to sponsors@python.org today. The PSF is ever grateful for our sponsors, past and current, and we do everything we can to make their sponsorships beneficial and rewarding.</li></ul><p><sub>1. Fun Fact: The Python Software Foundation’s AWS Open Source Credits usage has only grown 25% over the past 8 years, despite the explosive growth in usage of our services.</sub></p><br />Unknownnoreply@blogger.comtag:blogger.com,1999:blog-8520.post-49372175422465957952025-10-28T12:29:00.000-04:002025-10-28T12:29:21.597-04:00A new PSF Board- Another year of PSF Board Office Hour sessions!<p>Greetings, Pythonistas- thank you so much for supporting the work of the PSF and the Python community! The newest PSF Board has decided to continue investing in connecting with the global Python community by running the PSF Board Office Hour sessions on the <a href="https://discord.gg/4Hm36PPgpG" target="_blank">PSF Discord</a> into 2026.&nbsp;<br /><br />We began running these sessions in September 2024, and they have proven to be a great method for the community to connect with the board and vice versa. The sessions have provided the PSF Board and Staff the opportunity to hear what our community is up to and what challenges they are facing, as well as receive invaluable feedback about how the PSF can continue to improve our service to the Python community.&nbsp;<br /></p><h2 style="text-align: left;">What are the PSF Board Office Hours?</h2><p>During the PSF Board Office Hours, you can participate in a <b>text-based live chat</b> with PSF Board Directors. This is a chance to connect, share, and collaborate with the PSF Board and Staff to improve our community together. Occasionally, we will have dedicated topics such as PyCon US and the PSF Board Elections for the office hour sessions.&nbsp;<br /><br />Here is some of the work that we collaborate with staff and volunteers on:<br /><br /></p><ul style="text-align: left;"><li>Promotion and outreach for the Python programming language</li><li>Supporting local Python communities</li><li>Organizing PyCon US</li><li>Diversity and Inclusion in our community</li><li>Support handling Code of Conduct issues within our communities</li><li>Furthering <a href="https://www.python.org/psf/mission/" target="_blank">the mission of the PSF</a></li></ul><p style="text-align: left;"><br />Unless we have a dedicated topic for a session, you are not limited to talking with us about the above topics, although the discussions should be focused on Python, the PSF, and our community. If you think there’s something we can help with or we should know, we welcome you to come and talk to us!<br /></p><h2 style="text-align: left;">Joining the office hours</h2><p>The office hour sessions will take place on the PSF Discord server in the #psf-board channel. If you are new to Discord, make sure to check out <a href="https://support.discord.com/hc/en-us/articles/360033931551-Getting-Started" target="_blank">a tutorial on how you can download the app and sign up for free</a>– then join us on the <a href="https://discord.gg/4Hm36PPgpG" target="_blank">PSF Discord</a>! To make the office hours more accessible, the office hours will be scheduled at alternating times, so no matter where you are based, you can find a time that is most convenient for you! Here is a list of the dates and times:</p><ul style="text-align: left;"><li>November 4th, 2 pm UTC</li><li>December 9th, 9 pm UTC</li><li>January 13th, 2 pm UTC&nbsp;</li><li>February 10th, 9 pm UTC</li><li>March 10th, 1 pm UTC&nbsp;</li><li>April 14th, 9 pm UTC</li><li>May 12th, 1 pm UTC&nbsp;</li><li>June 9th, 9 pm UTC</li><li>July 14th, 1 pm UTC&nbsp;</li><li>August 11th, 9 pm UTC</li><li>September 8th, 1 pm UTC&nbsp;</li><li>October 13th, 9 pm UTC</li></ul><p><br />Each session lasts for an hour. Sessions after October 2026 will be announced in the future.<br /></p><h2 style="text-align: left;">Who will be at the office hours?</h2><p>Some board members of the PSF will be attending each office hour, as well as members of the PSF Staff. The <a href="https://www.python.org/psf/board/#id33" target="_blank">list of the current PSF Board Directors</a> can be found on our website. We are passionate Python community members who are excited to listen, help, and provide support to you. We are happy to follow up with you if there are any issues we cannot address immediately during the office hour sessions. As always, you can email us at psf-board@python.org with inquiries, feedback, or comments any time.&nbsp;</p>Marie Nordinhttp://www.blogger.com/profile/15138793242213676112noreply@blogger.comtag:blogger.com,1999:blog-8520.post-69877682097244229792025-10-27T08:00:00.003-04:002025-10-27T11:39:42.922-04:00The PSF has withdrawn a $1.5 million proposal to US government grant program<p>In January 2025, the PSF submitted a proposal to the US government National Science Foundation under the <a href="https://www.nsf.gov/funding/opportunities/safe-ose-safety-security-privacy-open-source-ecosystems" target="_blank">Safety, Security, and Privacy of Open Source Ecosystems program</a> to address structural vulnerabilities in Python and PyPI. It was the PSF’s first time applying for government funding, and navigating the intensive process was a steep learning curve for our small team to climb. Seth Larson, PSF Security Developer in Residence, serving as Principal Investigator (PI) with Loren Crary, PSF Deputy Executive Director, as co-PI, led the multi-round proposal writing process as well as the months-long vetting process. We invested our time and effort because we felt the PSF’s work is a strong fit for the program and that the benefit to the community if our proposal were accepted was considerable.&nbsp;&nbsp;</p><div><div>We were honored when, after many months of work, our proposal was recommended for funding, particularly as only <a href="https://www.nsf.gov/funding/overview" target="_blank">36% </a>of new NSF grant applicants are successful on their first attempt. We became concerned, however, when we were presented with the terms and conditions we would be required to agree to if we accepted the grant. These terms included affirming the statement that we “do not, and will not during the term of this financial assistance award, operate any programs that advance or promote DEI, or discriminatory equity ideology in violation of Federal anti-discrimination laws.” This restriction would apply not only to the security work directly funded by the grant, <b>but to any and all activity of the PSF as a whole</b>. Further, violation of this term gave the NSF the right to “claw back” previously approved and transferred funds. This would create a situation where money we’d already spent could be taken back, which would be an enormous, open-ended financial risk.&nbsp; &nbsp;</div></div><div><br /></div><div>Diversity, equity, and inclusion are core to the PSF’s values, as committed to in our <a href="https://www.python.org/psf/mission/" target="_blank">mission statement</a>:&nbsp;</div><div><div></div></div><blockquote><div><div><i>The mission of the Python Software Foundation is to promote, protect, and advance the Python programming language, and to support and facilitate the growth of <b>a diverse and international community</b> of Python programmers.</i></div></div><div></div></blockquote><div><div>Given the value of the grant to the community and the PSF, we did our utmost to get clarity on the terms and to find a way to move forward in concert with our values. We consulted our NSF contacts and reviewed decisions made by other organizations in similar circumstances, particularly <a href="https://carpentries.org/blog/2025/06/announcing-withdrawal-of-nsf-pose-proposal/" target="_blank">The Carpentries</a>.&nbsp;&nbsp;</div></div><div><br /></div><div><div>In the end, however, the PSF simply can’t agree to a statement that we won’t operate any programs that “advance or promote” diversity, equity, and inclusion, as it would be a betrayal of our mission and our community.&nbsp;</div></div><div><br /></div><div><div>We’re disappointed to have been put in the position where we had to make this decision, because we believe our proposed project would offer invaluable advances to the Python and greater open source community, protecting millions of PyPI users from attempted supply-chain attacks. The proposed project would create new tools for automated proactive review of all packages uploaded to PyPI, rather than the current process of reactive-only review. These novel tools would rely on capability analysis, designed based on a dataset of known malware. Beyond just protecting PyPI users, the outputs of this work could be transferable for all open source software package registries, such as NPM and Crates.io, improving security across multiple open source ecosystems.</div></div><div><br /></div><div><div>In addition to the security benefits, the grant funds would have made a big difference to the PSF’s budget. The PSF is a relatively small organization, operating with an annual budget of around $5 million per year, with a staff of just 14. $1.5 million over two years would have been quite a lot of money for us, and easily the largest grant we’d ever received. 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.&nbsp;</div></div><div><br /></div><div><div>Giving up the NSF grant opportunity—along with inflation, lower sponsorship, economic pressure in the tech sector, and global/local uncertainty and conflict—means the PSF needs financial support now more than ever. We are incredibly grateful for any help you can offer. If you're already a PSF member or regular donor, you have our deep appreciation, and we urge you to share your story about why you support the PSF. Your stories make all the difference in spreading awareness about the mission and work of the PSF.&nbsp;</div></div><div><br /></div><div><div>How to support the PSF:</div></div><div><ul style="text-align: left;"><li><a href="https://psfmember.org/civicrm/contribute/transact/?reset=1&amp;id=1">Become a Member</a>: When you sign up as a Supporting Member of the PSF, you become a part of the PSF. You’re eligible to vote in PSF elections, using your voice to guide our future direction, and you help us sustain what we do with your annual support.</li><li><a href="https://psfmember.org/civicrm/contribute/transact/?reset=1&amp;id=2">Donate</a>: Your donation makes it possible to continue our work supporting Python and its community, year after year.</li><li><a href="https://www.python.org/sponsors/application/">Sponsor</a>: If your company uses Python and isn’t yet a sponsor, send them our <a href="https://www.python.org/sponsors/application/">sponsorship page</a> or reach out to sponsors@python.org today. The PSF is ever grateful for our sponsors, past and current, and we do everything we can to make their sponsorships beneficial and rewarding.</li></ul></div><div><br /></div>Loren Craryhttp://www.blogger.com/profile/06125752284896762014noreply@blogger.comtag:blogger.com,1999:blog-8520.post-90502547436585707582025-10-22T11:35:00.003-04:002025-12-11T15:54:45.818-05:00Announcing Python Software Foundation Fellow Members for Q3 2025! 🎉<p><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;">The PSF is pleased to announce its third </span><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;">batch</span><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"> of PSF Fellows for </span><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;">2025</span><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;">! Let us welcome the new PSF Fellows for </span><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;">Q3</span><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;">! The following people continue to do amazing things for the Python community:</span></p><p dir="ltr" style="line-height: 1.38; margin-bottom: 11pt; margin-top: 11pt; text-align: center;"><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 12pt; font-style: normal; font-variant: normal; font-weight: 700; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;">Abhijeet Mote</span></p><p dir="ltr" style="line-height: 1.38; margin-bottom: 11pt; margin-top: 11pt; text-align: center;"><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"><a href="https://www.linkedin.com/in/abhijeet-mote/" target="_blank">LinkedIn</a></span></p><p dir="ltr" style="line-height: 1.38; margin-bottom: 11pt; margin-top: 11pt; text-align: center;"><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 12pt; font-style: normal; font-variant: normal; font-weight: 700; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;">Abigail Afi Gbadago</span></p><p dir="ltr" style="line-height: 1.38; margin-bottom: 11pt; margin-top: 11pt; text-align: center;"><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"><a href="https://www.linkedin.com/in/abigail-afi-gbadago/" target="_blank">LinkedIn</a>, <a href="https://abigailgbadago.vercel.app/about" target="_blank">Website</a></span><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 12pt; font-style: normal; font-variant: normal; font-weight: 700; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;">&nbsp;</span></p><p dir="ltr" style="line-height: 1.38; margin-bottom: 11pt; margin-top: 11pt; text-align: center;"><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 12pt; font-style: normal; font-variant: normal; font-weight: 700; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;">Becky Smith</span></p><p dir="ltr" style="line-height: 1.38; margin-bottom: 11pt; margin-top: 11pt; text-align: center;"><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"><a href="https://www.linkedin.com/in/rebkwok/" target="_blank">LinkedIn</a>, <a href="https://bsky.app/profile/rebkwok.bsky.social" target="_blank">Bluesky</a>, <a href="https://mastodon.scot/@rebkwok" target="_blank">Mastodon</a>, <a href="https://github.com/rebkwok" target="_blank">GitHub</a>&nbsp;</span></p><p dir="ltr" style="line-height: 1.38; margin-bottom: 11pt; margin-top: 11pt; text-align: center;"><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 12pt; font-style: normal; font-variant: normal; font-weight: 700; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;">Christopher Bailey</span></p><p dir="ltr" style="line-height: 1.38; margin-bottom: 11pt; margin-top: 11pt; text-align: center;"><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 12pt; font-style: normal; font-variant: normal; font-weight: 700; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;">Dawn Wages<br /></span></p><p dir="ltr" style="line-height: 1.38; margin-bottom: 11pt; margin-top: 11pt; text-align: center;"><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 12pt; font-style: normal; font-variant: normal; font-weight: 700; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;">Leah Wasser</span></p><p dir="ltr" style="line-height: 1.38; margin-bottom: 11pt; margin-top: 11pt; text-align: center;"><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"><a href="http://leahwasser.com/" target="_blank">Website</a>, <a href="https://bsky.app/profile/leahawasser.bsky.social" target="_blank">Bluesky</a>, <a href="https://fosstodon.org/@leahawasser" target="_blank">Mastodon</a>, <a href="https://www.linkedin.com/in/leahawasser/" target="_blank">LinkedIn</a>, <a href="http://github.com/lwasser" target="_blank">GitHub</a></span></p><p dir="ltr" style="line-height: 1.38; margin-bottom: 11pt; margin-top: 11pt; text-align: center;"><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 12pt; font-style: normal; font-variant: normal; font-weight: 700; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;">Maaya Ishida</span></p><p dir="ltr" style="line-height: 1.38; margin-bottom: 11pt; margin-top: 11pt; text-align: center;"><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"><a href="https://hotchpotchj37.wordpress.com/" target="_blank">Website</a>, <a href="https://github.com/mahya8585" target="_blank">GitHub</a>, <a href="https://www.linkedin.com/in/maaya-ishida-5486b7109/" target="_blank">LinkedIn</a>, <a href="https://x.com/maaya8585" target="_blank">X</a></span></p><p dir="ltr" style="line-height: 1.38; margin-bottom: 11pt; margin-top: 11pt; text-align: center;"><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 12pt; font-style: normal; font-variant: normal; font-weight: 700; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;">Mason Egger</span></p><p dir="ltr" style="line-height: 1.38; margin-bottom: 11pt; margin-top: 11pt; text-align: center;"><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"><a href="https://mason.dev/" target="_blank">Website</a>, <a href="https://twitter.com/masonegger" target="_blank">Twitter</a>, <a href="https://www.linkedin.com/in/mason-egger" target="_blank">LinkedIn</a>, <a href="https://github.com/MasonEgger" target="_blank">GitHub</a></span></p><p dir="ltr" style="line-height: 1.38; margin-bottom: 11pt; margin-top: 11pt; text-align: center;"><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 12pt; font-style: normal; font-variant: normal; font-weight: 700; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;">Miguel Grinberg</span></p><p dir="ltr" style="line-height: 1.38; margin-bottom: 11pt; margin-top: 11pt; text-align: center;"><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"><a href="https://miguelgrinberg.com/" target="_blank">Website</a>, <a href="https://github.com/miguelgrinberg" target="_blank">GitHub</a></span></p><p dir="ltr" style="line-height: 1.38; margin-bottom: 11pt; margin-top: 11pt; text-align: center;"><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 12pt; font-style: normal; font-variant: normal; font-weight: 700; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;">William Vincent</span></p><p dir="ltr" style="line-height: 1.38; margin-bottom: 11pt; margin-top: 11pt; text-align: center;"><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"><a href="https://wsvincent.com/" target="_blank">Website</a>, <a href="https://www.linkedin.com/in/william-s-vincent/" target="_blank">LinkedIn</a>, <a href="https://github.com/wsvincent" target="_blank">GitHub</a></span></p><p dir="ltr" style="line-height: 1.38; margin-bottom: 11pt; margin-top: 11pt; text-align: center;"><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;">&nbsp;</span></p><p dir="ltr" style="line-height: 1.38; margin-bottom: 11pt; margin-top: 11pt;"><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;">Thank you for your continued contributions. We have added you to our <a href="https://www.python.org/psf/fellows-roster/" target="_blank">Fellows Roster</a></span><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;">.</span></p><p dir="ltr" style="line-height: 1.38; margin-bottom: 11pt; margin-top: 11pt; text-align: justify;"><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;">The above members help support the Python ecosystem by being phenomenal leaders, sustaining the growth of the Python scientific community, maintaining virtual Python communities, maintaining Python libraries, creating educational material, organizing Python events and conferences, starting Python communities in local regions, and overall being great mentors in our community. Each of them continues to help make Python more accessible around the world. To learn more about the new Fellow members, check out their links above.</span></p><p dir="ltr" style="line-height: 1.38; margin-bottom: 11pt; margin-top: 11pt;"><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;">Let's continue recognizing Pythonistas all over the world for their impact on our community. The criteria for Fellow members is available on our <a href="https://www.python.org/psf/fellows" target="_blank">PSF Fellow Membership page</a></span><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;">. If you would like to nominate someone to be a PSF Fellow, please send a description of their Python accomplishments and their email address to psf-fellow at python.org. </span><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;">Quarter 4</span><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;"> nominations will be in review soon. We are accepting nominations for </span><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;">Quarter 4 of 2025 through November 20th, 2025</span><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;">.</span></p><p dir="ltr" style="line-height: 1.38; margin-bottom: 11pt; margin-top: 11pt;"><span face="Arial, sans-serif" style="background-color: white; color: black; font-size: 10pt; font-style: normal; font-variant: normal; font-weight: 400; text-decoration: none; vertical-align: baseline; white-space: pre-wrap;">Are you a PSF Fellow and want to help the Work Group review nominations? Contact us at psf-fellow at python.org.</span></p>Marie Nordinhttp://www.blogger.com/profile/15138793242213676112noreply@blogger.comtag:blogger.com,1999:blog-8520.post-15098373043121075872025-10-20T12:39:00.000-04:002025-10-20T12:39:19.231-04:00CPython Core Dev Sprint 2025 at Arm Cambridge: The biggest one yet<p><i>Guest blog post authored by <a href="https://www.linkedin.com/in/diegor" target="_blank">Diego Russo</a>, Python Core Developer and Principal Software Engineer at <a href="https://www.arm.com/" target="_blank">Arm</a>.&nbsp;</i></p><p></p><h2 style="text-align: left;">Sprint overview</h2><p>For one week, <a href="https://www.arm.com/" target="_blank">Arm</a>’s Cambridge headquarters became the heart of Python development. Contributors from around the world came together for the CPython Core Developer Sprint. It was the largest gathering in the project’s history, with 35 core developers and 13 invited guests collaborating in person.&nbsp;<br /></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhwbdL1M7vONMEs9F5EKnDZbcw2OHl5KG1krLfJ27XJcasncqct5PlAp04iXcNSGsPEoW1Q_EuphwQ1b2v_e4D5-m7BAow2NcgzfSpk0T6DxyFQfE-OVF3W_J0B93AVrY2JS3sMHO1ApY9EiV92JfX8baSB_IzwxIIhLvTnWAPA5daxbF7ReA/s5712/IMG_6658.jpeg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="3899" data-original-width="5712" height="272" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhwbdL1M7vONMEs9F5EKnDZbcw2OHl5KG1krLfJ27XJcasncqct5PlAp04iXcNSGsPEoW1Q_EuphwQ1b2v_e4D5-m7BAow2NcgzfSpk0T6DxyFQfE-OVF3W_J0B93AVrY2JS3sMHO1ApY9EiV92JfX8baSB_IzwxIIhLvTnWAPA5daxbF7ReA/w400-h272/IMG_6658.jpeg" width="400" /></a></div><p>Unlike a conference, the sprint is a working retreat. There are no spectators or formal keynotes, just space for deep technical debate, design, coding, and consensus-building.&nbsp;</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiLUa9U6yipn5w8t-cnK-03uXw6O4cLkP7y-6c1CHQFUoDS_x-aifjrRIP8CjJ8ZNa4WDuo9EJfJFQckBwnE3aQpGeaEhVWgD6UZtn97GqsYM6JvhF2OOiT8jX0FY0Vu6IJ0DkYV8xUxgIu_We_ulh1HAlRMiq8oUxmijfCGh7Z4L91gmkKmw/s5712/IMG_6628.jpeg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="4284" data-original-width="5712" height="300" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiLUa9U6yipn5w8t-cnK-03uXw6O4cLkP7y-6c1CHQFUoDS_x-aifjrRIP8CjJ8ZNa4WDuo9EJfJFQckBwnE3aQpGeaEhVWgD6UZtn97GqsYM6JvhF2OOiT8jX0FY0Vu6IJ0DkYV8xUxgIu_We_ulh1HAlRMiq8oUxmijfCGh7Z4L91gmkKmw/w400-h300/IMG_6628.jpeg" width="400" /></a></div><p>The sprint offers a rare chance for real-time dialogue. Ideas can be sketched on whiteboards, trade-offs debated face-to-face, and tricky issues given momentum.</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjsZQuzdZEOSukwTQEIirtLEcE5Zjm0EsO0XfQGgVRYlrgC1OWq45X9z5J_vfMZphhSu-EZRmA5QaA-VZRzVvP9GwqzBeov27bcjHcsaGZzVKfYvecD9OurKvqZtmuTK3agiOswtT0u2Ew9U8tm-TanotzAj0E2WdhyLGAMc1Rf5vsLVbbvPQ/s5712/IMG_6642.jpeg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="4284" data-original-width="5712" height="300" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjsZQuzdZEOSukwTQEIirtLEcE5Zjm0EsO0XfQGgVRYlrgC1OWq45X9z5J_vfMZphhSu-EZRmA5QaA-VZRzVvP9GwqzBeov27bcjHcsaGZzVKfYvecD9OurKvqZtmuTK3agiOswtT0u2Ew9U8tm-TanotzAj0E2WdhyLGAMc1Rf5vsLVbbvPQ/w400-h300/IMG_6642.jpeg" width="400" /></a></div><br /><h2 style="text-align: left;">What happened</h2><p>The week included technical presentations, collaborative work, and community events. Talks and presentations were grouped around key themes:</p><ul style="text-align: left;"><li>JIT and performance</li><ul><li>Ken Jin Ooi – Building a Community Around the JIT Compiler and demo of the new C API</li><li>Antonio Cuni – Tracing JITs in the Real World, highlighting challenges such as trace blockers, control flow, and async behavior</li></ul></ul><ul style="text-align: left;"><li>Packaging and distribution</li><ul><li>Russell Keith-Magee – Managing Cross-Platform Wheel Builds</li><li>Brett Cannon – Precompiled Binaries from python.org</li></ul></ul><ul style="text-align: left;"><li>Language design and standards</li><ul><li>Steering Council – PEP 793 and abi3/abi3t/abi4</li><li>Matthew Parkinson – Designing Deep Immutability</li></ul></ul><ul style="text-align: left;"><li>Ecosystem and infrastructure</li><ul><li>Brett Cannon – WASI Update</li><li>Hood Chatham – Upstreaming the Pyodide FFI</li><li>Gregory P. Smith – Claude Code and Agents for Good in OSS</li></ul></ul><ul style="text-align: left;"><li>Lightning talks</li><ul><li>Guido van Rossum – A New Python History Project</li><li>Ee Durbin – PSF Infrastructure Next Gen</li><li>Steve Dower – Python Install Manager</li><li>Larry Hastings – A Missing Fundamental Data Structure</li><li>Adam Turner – Bring Out Yer Dead (Issues)</li><li>Greg Smith – Async Exception Group Tracebacks</li></ul></ul><ul style="text-align: left;"><li>Arm contributions</li><ul><li>James Greenhalgh – Arm Neoverse: Overview</li><li>Martin Weidmann – A Brief History of the Arm Architecture</li><li>Peter Smith – Compilers, ABI, and Optimizations</li></ul></ul><p>The program also included a Q&amp;A with the Steering Council, where Barry Warsaw and Emily Morehouse joined remotely. It also featured a mentorship discussion led by Tania Allard on how to welcome and support new contributors.</p><p></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg9y4eFNIeESejm4GM368lDA0zLopP5idYtFD70Jx7ZsagJwoK7P8JIrsEtLNnewzHmqmxKE2RZiD2iEsiIP5K-BJk4EY3qzYPSYj6OMp3gkat3c_JcWJZO4UiDTvASubrk6iI1iAvZAcFCgCPgBhifY2gVjUAGKbqLtoeDTZXNJc4Zm_T8dQ/s5374/IMG_6723.jpeg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="4031" data-original-width="5374" height="300" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg9y4eFNIeESejm4GM368lDA0zLopP5idYtFD70Jx7ZsagJwoK7P8JIrsEtLNnewzHmqmxKE2RZiD2iEsiIP5K-BJk4EY3qzYPSYj6OMp3gkat3c_JcWJZO4UiDTvASubrk6iI1iAvZAcFCgCPgBhifY2gVjUAGKbqLtoeDTZXNJc4Zm_T8dQ/w400-h300/IMG_6723.jpeg" width="400" /></a>&nbsp;</div><p></p><p>Beyond presentations, the sprint fostered hands-on collaboration. Developers had advanced JIT planning, explored progress on free threading, and discussed improvements to documentation and translations. They also strengthened testing and CI across platforms, and refined governance and contributor onboarding processes.</p><p>Antonio Cuni highlighted real-world JIT pitfalls, which informed many of these discussions.</p><p></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh68dNdZn6kd94YCSfgPyzS8oidQ__SkQgdU39gh97LleGUPqzt1ybETTkce2_R8z8prayZ9iA9cMWYcwEVyhwBxMGoreuUXg5vz-IinzkU14kl1jVyoFQUzj5eEtkto5ujID-0KAZYwLbx252Qf_Ts-U5GpodnEMRR1dKPywiuEd4qcfZfyg/s5712/IMG_6728.jpeg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="4284" data-original-width="5712" height="300" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh68dNdZn6kd94YCSfgPyzS8oidQ__SkQgdU39gh97LleGUPqzt1ybETTkce2_R8z8prayZ9iA9cMWYcwEVyhwBxMGoreuUXg5vz-IinzkU14kl1jVyoFQUzj5eEtkto5ujID-0KAZYwLbx252Qf_Ts-U5GpodnEMRR1dKPywiuEd4qcfZfyg/w400-h300/IMG_6728.jpeg" width="400" /></a></div><br />Finally, the sprint included community activities that helped balance the technical intensity with moments of connection. The Python Guild at Arm hosted an Ask Me Anything (AMA) session, giving local engineers the chance to interact with core developers.<p></p><p></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhhuNpALITqPzTqyvv3DN_hAkSadjR_b22IyekwRlGEH4q6gnVBQ-tlSikh1Jc6DoMWBz_OaIhqtyK5G-lM90m1SNxENGxKKoi41nYeHXRqomyXiJM46QSsKQiswO92cqBpgAXrFCwuWhiIZIlnLxmwDcaB16e-stku5XOWfzOBBQySBEiiIQ/s4646/IMG_76311.jpeg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="3316" data-original-width="4646" height="285" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhhuNpALITqPzTqyvv3DN_hAkSadjR_b22IyekwRlGEH4q6gnVBQ-tlSikh1Jc6DoMWBz_OaIhqtyK5G-lM90m1SNxENGxKKoi41nYeHXRqomyXiJM46QSsKQiswO92cqBpgAXrFCwuWhiIZIlnLxmwDcaB16e-stku5XOWfzOBBQySBEiiIQ/w400-h285/IMG_76311.jpeg" width="400" /></a></div><br />A formal dinner at Jesus College reflected Cambridge traditions, while a punting trip on the River Cam offered a relaxed opportunity to connect outside of work.<p></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgWaI9ejEC00j0yNeLS_1e0tX6xrRO6bMZVEd99btG8ibV0wgzhmQ8QNo20hcOfhCRAQY-6bn8T40mkzc8dGF2PyUBbnpwzIyTqpm5NJvSgIdBcAfgA4twd4jXyoIhenNiu6jcP72EYv4wpVjmpWWhQXoyuiDDLP2MmFTwyUakL5Ly82aVegQ/s5516/IMG_6700.jpeg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="3986" data-original-width="5516" height="289" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgWaI9ejEC00j0yNeLS_1e0tX6xrRO6bMZVEd99btG8ibV0wgzhmQ8QNo20hcOfhCRAQY-6bn8T40mkzc8dGF2PyUBbnpwzIyTqpm5NJvSgIdBcAfgA4twd4jXyoIhenNiu6jcP72EYv4wpVjmpWWhQXoyuiDDLP2MmFTwyUakL5Ly82aVegQ/w400-h289/IMG_6700.jpeg" width="400" /></a></div><br /><h2 style="text-align: left;">A Team Effort</h2><p>The Python Software Foundation coordinated the event, making the sprint possible. We thank Phyllis Dobbs for managing the RSVP process and the travel grants that enabled many contributors to join us in Cambridge.</p><p>Hosting the CPython Sprint at Arm’s Cambridge offices shows a shared commitment and we send huge thanks to everyone at Arm who made the sprint possible. Arm shares,&nbsp;<br /></p><blockquote><i>“Hosting the latest CPython sprint was more than providing a venue. It was an investment in strengthening one of the most influential open-source communities. Python’s reach is vast, and ensuring its modern components run smoothly on Arm platforms helps the language stay inclusive and performant across architectures. Hosting the sprint gave Arm a way to give back, reinforce bonds with the core team, and invest in Python’s future.”</i></blockquote>The Arm Software Communities team led the effort from start to finish, handling logistics, sponsorship, and every detail that kept things running smoothly. Their support, along with the help of Central Engineering, Facilities, Workplace, People, IT, Developer Marketing, and the Python Guild organizers, ensured a successful and well-organized week for all participants.&nbsp;<p></p><p></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhFP_CiYxoHCWgaZ41foj7-gaL0kS2zB4DdSQiaOdV5Y6I6OuhXr6zte78R8a44TWg_qlSR3HEpnr7-X3dn6DVjhWb9H8BDTpqreGLOmKaqNO3LjQOXxTRn8qVIRnQed0tiI6cu0euG2awp5NJFMe1hBgPMc6nR_9UPq6ne_G2Ebw9MYFc_HQ/s4032/IMG_6754.jpeg" style="margin-left: 1em; margin-right: 1em;"></a><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhFP_CiYxoHCWgaZ41foj7-gaL0kS2zB4DdSQiaOdV5Y6I6OuhXr6zte78R8a44TWg_qlSR3HEpnr7-X3dn6DVjhWb9H8BDTpqreGLOmKaqNO3LjQOXxTRn8qVIRnQed0tiI6cu0euG2awp5NJFMe1hBgPMc6nR_9UPq6ne_G2Ebw9MYFc_HQ/s4032/IMG_6754.jpeg" style="margin-left: 1em; margin-right: 1em;"></a><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhKNsOU9QkbfWZ8tAd0WwY6_kBtfwWqMnhuwyvDgn2Zdvc-Fuio4eMEJ2D70QDplsiyp4wEaJT292ypwDvoQhgjAgZdhyphenhyphenOEs1MHcAwX7XCWh-b9vCww8oATXETa5CXSzs8C4k-m3LdlBLdU3_0KImFOaV88ARQPEdjubFEnmcQalwo8s-9cHQ/s5712/IMG_9026.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="3024" data-original-width="4032" height="300" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhFP_CiYxoHCWgaZ41foj7-gaL0kS2zB4DdSQiaOdV5Y6I6OuhXr6zte78R8a44TWg_qlSR3HEpnr7-X3dn6DVjhWb9H8BDTpqreGLOmKaqNO3LjQOXxTRn8qVIRnQed0tiI6cu0euG2awp5NJFMe1hBgPMc6nR_9UPq6ne_G2Ebw9MYFc_HQ/w400-h300/IMG_6754.jpeg" width="400" /><img border="0" data-original-height="5712" data-original-width="4284" height="400" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhKNsOU9QkbfWZ8tAd0WwY6_kBtfwWqMnhuwyvDgn2Zdvc-Fuio4eMEJ2D70QDplsiyp4wEaJT292ypwDvoQhgjAgZdhyphenhyphenOEs1MHcAwX7XCWh-b9vCww8oATXETa5CXSzs8C4k-m3LdlBLdU3_0KImFOaV88ARQPEdjubFEnmcQalwo8s-9cHQ/w300-h400/IMG_9026.jpg" width="300" /></a></div></div>Finally, a huge thank you to all the attendees who traveled from across the world to spend a week in Cambridge. Some came from nearby in the UK and neighboring countries. Many others journeyed across Europe, several crossed the Atlantic, and a few took long-haul and even ultra-long-haul flights of more than 10,000 km. That dedication and commitment to the Python community is what truly made this sprint special.<p></p><p></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh41GONKt-5VAvyO9SoLKDxGB8rnV9QRepkG8vVt9WVI3D5HuMZD8ePqlChqEmXp6phGtW_CSjIdlHX_qIhkiWXRUfUHEXPnzeLsBA-eqfFhbP_em56YGqXg4CZaeMcE8o5-iXpBt5AgUdkhp5dq9Q5M_0D5hf9Aoi5yJb8Owhc4HGA5JvKGQ/s5134/IMG_6666.jpeg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="3461" data-original-width="5134" height="270" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh41GONKt-5VAvyO9SoLKDxGB8rnV9QRepkG8vVt9WVI3D5HuMZD8ePqlChqEmXp6phGtW_CSjIdlHX_qIhkiWXRUfUHEXPnzeLsBA-eqfFhbP_em56YGqXg4CZaeMcE8o5-iXpBt5AgUdkhp5dq9Q5M_0D5hf9Aoi5yJb8Owhc4HGA5JvKGQ/w400-h270/IMG_6666.jpeg" width="400" /></a></div><p></p><p>Organizing a sprint of this scale takes many hands. From sponsors to volunteers, organizers to attendees, everyone contributed in their own way. This sprint was a reminder that Python is more than a programming language. It is a community that works together, supports one another, and achieves more as a team than any individual could alone.</p><p></p><h2 style="text-align: left;">Conclusion</h2><p>The sprint was widely regarded as a success. Attendees described it as productive, well-organized, and an excellent community experience. Even so, some aspects could have been improved, and these are valuable lessons to take forward for future events.&nbsp;<br />Sessions such as the Steering Council Q&amp;A, the mentorship discussion led by Tania Allard, and the lightning talks stood out as highlights. They reinforced the value of bringing the community together in person.</p><p>Python is undergoing important technical transitions. Sprints like this accelerate evolution, resolve difficult challenges, and align the community. The concentration of expertise enabled focused, collaborative progress. The ripple effects of this sprint will shape code, discussion, and design decisions for months to come. We look forward to coming together again as a community.<br /><br /></p>Marie Nordinhttp://www.blogger.com/profile/15138793242213676112noreply@blogger.comtag:blogger.com,1999:blog-8520.post-22940375243023125862025-10-15T09:52:00.000-04:002025-10-15T09:52:05.516-04:00Announcing PSF Community Service Award Recipients! <p>The PSF Community Service Awards (CSA’s) are a formal way for the PSF Board of Directors to offer recognition of work which, in its opinion, significantly improves the Foundation's fulfillment of its mission and benefits the broader Python community. These awards shine a light on the incredible people who are the heart and soul of our community– those whose dedication, creativity, and generosity help the PSF fulfill its mission. The PSF CSAs celebrate individuals who have been truly invaluable, inspiring others through their example, and demonstrates that service to the Python community leads to recognition and reward. If you know of someone in the Python community deserving of a PSF CSA award, please submit them to the PSF Board via psf@python.org at any time. You can read more about <a href="https://www.python.org/community/awards/psf-awards/" target="_blank">PSF CSAs on our website</a>.&nbsp;<br /><br />The PSF Board is excited to announce three new CSAs, awarded to Katie McLaughlin, Sarah Kuchinsky, and Rodrigo Girão Serrão, for their contributions to the Python community. Read more about their contributions and impact below.&nbsp;</p><h2 style="text-align: left;">Katie McLaughlin</h2><p>Katie has been a tireless and dedicated member of the Python and Django communities for many years. They have served on the boards of both the DSF and PSF, including as PSF Communications Officer, and was named a PSF Fellow in 2018. Katie has played a big role in the Australian conference community– chairing DjangoCon AU 2017, PyCon AU in 2018 and 2019, and co-chairing PyCon AU 2021– and continues to support PyCon AU as an advisor.</p><p>A frequent speaker and keynote presenter at PyCons and DjangoCons around the world, Katie has worked to demystify Python website deployment, highlight the value of all kinds of open source contributions, and call out the impact of contempt culture on developer communities. They are also a regular at sprints, helping new contributors get started and improving onboarding through code and documentation.&nbsp;</p><h2 style="text-align: left;">Sarah Kuchinsky</h2><p>Sarah has been the driving force behind PyCon tutorials for many years, shaping them into the strong program they are today. She has brought skill, care, and consistency to the difficult work of selecting, organizing, and running tutorials, ensuring they provide meaningful learning experiences for attendees.</p><p>Beyond logistics, Sarah has a gift for spotting and nurturing talent. She has encouraged new volunteers to grow into leadership roles, building a resilient, collaborative committee that sustains itself year after year. Her outreach has kept reviewers engaged while also welcoming fresh voices, strengthening both the program and the community behind it.</p><p>The impact of Sarah’s work is felt by every instructor, attendee, and volunteer who has benefitted from PyCon tutorials, and the community is deeply grateful for her many years of leadership and care. Sarah was also the lead organizer for PyLadies Silicon Valley for over 5 years, is a SoCal Python Co-Organizer, and has contributed to a variety of open source projects.</p><h2 style="text-align: left;">Rodrigo Girão Serrão</h2><p>Rodrigo Girão Serrão has made lasting contributions to the international Python community through his leadership, teaching, and generosity. He has helped organize PyCons in Portugal, supported the Python community across Europe, and spoken regularly at PyCons worldwide, making complex topics like descriptors clear and approachable.</p><p>Through his website mathspp.com, bootcamps, and self-published books, including the freely available Pydon’ts book, Rodrigo has worked to make Python more accessible and welcoming. His dedication to sharing knowledge and supporting others has had a wide-reaching impact, and the community is grateful for his many contributions.<br /><br /></p>Marie Nordinhttp://www.blogger.com/profile/15138793242213676112noreply@blogger.comtag:blogger.com,1999:blog-8520.post-17104465684829601762025-09-16T13:11:00.000-04:002025-09-16T13:11:44.962-04:00Announcing the 2025 PSF Board Election Results!<p>The 2025 election for the PSF Board created an opportunity for conversations about the PSF's work to serve the global Python community. We appreciate community members' perspectives, passion, and engagement in the election process this year.&nbsp;</p><p>We want to send a big thanks to everyone who ran and was willing to serve on the PSF Board. Even if you were not elected, we appreciate all the time and effort you put into thinking about how to improve the PSF and represent the parts of the community you participate in. We hope that you will continue to think about these issues, share your ideas, and join a PSF Work Group or PSF initiative if you feel called to do so.</p><h2 style="text-align: left;">Board Members Elect</h2><p>Congratulations to our two new and two returning Board members who have been elected!&nbsp;<br /></p><ul style="text-align: left;"><li>Abigail Dogbe</li><li>Jannis Leidel</li><li>Sheena O’Connell</li><li>Simon Willison</li></ul><p>We’ll be in touch with all the elected candidates shortly to schedule onboarding. Newly elected PSF Board members are provided orientation for their service and will be joining the upcoming board meeting.&nbsp;</p><h2 style="text-align: left;">Thank you!</h2><p>We’d like to take this opportunity to thank our outgoing board members. Kushal Das has been serving on the PSF Board for over ten years– WOW! Kushal has been a part of change after change for the PSF and Python community, serving in PSF Board officer positions, and we are incredibly grateful for his contributions. Dawn Wages quickly became an integral part of the Board during her tenure, stepping up as Treasurer and then Board Chair. Dawn helped guide us through a period of major change– navigating a difficult economy, adapting to the rise of AI, and supporting important shifts in our programs. Thank you, Kushal and Dawn, for your leadership and dedication to the PSF and the Python community. You will be missed and are deeply appreciated!&nbsp;</p><p>Our heartfelt thanks go out to each of you who took the time to review the candidates and submit your votes. Your participation helps the PSF represent our community. We received 683 total ballots, easily reaching quorum–1/3 of affirmed voting members (929). We’re especially grateful for your patience with continuing to navigate the changes to the election processes and schedule, which allows for a valid election and a more sustainable election system.<br /><br />We also want to thank everyone who helped promote this year’s board election, especially Board Members Cristián Maureira-Fredes and Georgi Ker, who took the initiative to cover this year’s election and produced informational videos for our candidates. This promotional effort was inspired by the work of <a href="https://pythoncommunitynews.com/" target="_blank">Python Community News</a> in 2023. We also want to highlight the PSF staff members and PSF Board members who put in tons of effort each year as we work to continually improve the PSF elections.<br /></p><h2 style="text-align: left;">What’s next?</h2><p>If you’re interested in the complete tally, make sure to check the <a href="https://opavote.com/results/6226848987480064" target="_blank">Python Software Foundation Board of Directors Election 2025 Results page</a>. <i>These results will be available until Nov 11, 2025.</i></p><p>The PSF Election team will conduct a retrospective of this year’s election process to ensure we are improving year over year. We received valuable feedback about the process and tooling. We hope to be able to implement more changes for next year to ensure a smooth and accessible election process for everyone in our community.</p><p>Finally, it might feel a little early to mention this, but we will have at least 3 seats open again next year. If you're interested in running or learning more, we encourage you to contact a current PSF Board member or two this year and ask them about their experience serving on the board.<br /><br /></p>Marie Nordinhttp://www.blogger.com/profile/15138793242213676112noreply@blogger.comtag:blogger.com,1999:blog-8520.post-114811442592517362025-09-10T06:30:00.002-04:002025-09-10T09:30:35.906-04:00Sprints are the best part of a conference<span id="docs-internal-guid-eb54691c-7fff-d1e5-10e8-feb3668e2453"><p dir="ltr" style="line-height: 1.96364; margin-bottom: 12pt; margin-top: 0pt;"><span face="Arial, sans-serif" style="color: #333333; font-size: 12pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">When I first started attending Python conferences, my focus was entirely on the talks on the schedule. That's not surprising, there's no conference without talks! Over the years, though, I came to appreciate the so-called hallway track and the usual post-conference sprints that many events include. These days, I mostly come for those. Let's talk about why.</span></p></span><h2 style="text-align: left;">Raw numbers</h2><span><p dir="ltr" style="line-height: 1.96364; margin-bottom: 12pt; margin-top: 0pt;"><span face="Arial, sans-serif" style="color: #333333; font-size: 12pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">Before we get into subjective and soft reasons why sprints are great, just consider how productive they are for Python. To give you an idea, let's focus on three Python conferences of different sizes on three continents.</span></p><p dir="ltr" style="line-height: 1.96364; margin-bottom: 12pt; margin-top: 0pt;"><span face="Arial, sans-serif" style="color: #333333; font-size: 12pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">At PyCon US 2025, 370 new PRs were open to the Python organization during, 286 to the </span><span style="background-color: #f8f8f8; color: #333333; font-family: &quot;Courier New&quot;, monospace; font-size: 12pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">cpython</span><span face="Arial, sans-serif" style="color: #333333; font-size: 12pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> repository alone. Close to 300 PRs were merged into the Python GitHub organization during that time. That's for four days of sprints. This is over 2X the number of PRs handled during the same period when there's no sprint happening.</span></p><p dir="ltr" style="line-height: 1.96364; margin-bottom: 12pt; margin-top: 0pt;"><span face="Arial, sans-serif" style="color: #333333; font-size: 12pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">There's been two days of sprints at EuroPython in Prague this year, but they didn't disappoint either: 122 new PRs open to the Python organization, including 99 to the </span><span style="background-color: #f8f8f8; color: #333333; font-family: &quot;Courier New&quot;, monospace; font-size: 12pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">cpython</span><span face="Arial, sans-serif" style="color: #333333; font-size: 12pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> repository. 79 PRs were merged into the Python GitHub organization during this time. This is 1.75X the number of PRs handled during a typical weekend.</span></p><p dir="ltr" style="line-height: 1.96364; margin-bottom: 12pt; margin-top: 0pt;"><span face="Arial, sans-serif" style="color: #333333; font-size: 12pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">Even single-day sprint days at conferences are pretty productive. At PyCon Korea earlier this August the attendees managed to open 59 new PRs to the Python organization, including 35 PRs to the </span><span style="background-color: #f8f8f8; color: #333333; font-family: &quot;Courier New&quot;, monospace; font-size: 12pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">cpython</span><span face="Arial, sans-serif" style="color: #333333; font-size: 12pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> repository. Over 40 PRs were merged into the Python organization that day. Still 1.7X the typical velocity.</span></p><p dir="ltr" style="line-height: 1.96364; margin-bottom: 12pt; margin-top: 0pt;"><span face="Arial, sans-serif" style="color: #333333; font-size: 12pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">Hopefully, you're seeing what I'm seeing: sprints can provide a measurable boost to an open-source project. The longer the sprints are, the bigger this boost is. This is because many contributions need more than a day to bake, some bugs can be pretty stubborn, and many features uncover surprising depth once you start implementing them.</span></p></span><h2 style="text-align: left;">Momentum</h2><span><p dir="ltr" style="line-height: 1.96364; margin-bottom: 12pt; margin-top: 0pt;"><span face="Arial, sans-serif" style="color: #333333; font-size: 12pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">There's something magical about a large group of people banding together to attack problems. While this is what open source is in general, adding together physical presence in the same physical space at the same time is the secret sauce. Real-time coordination really is more efficient. We can guess at reasons for this, but we can safely assume a big part is simply that humans are social animals. It's easier to empathize with a person when they're in the same room with you. In my experience, pointing at a screen still beats Internet communication.</span></p><p dir="ltr" style="line-height: 1.96364; margin-bottom: 12pt; margin-top: 0pt;"><span face="Arial, sans-serif" style="color: #333333; font-size: 12pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">Part of what makes sprints so productive is that it is a time-boxed period of uninterrupted time away from your usual work environment. And that's true for everyone, so people have the ability to focus on a specific project or problem for an extended period of time. But since there's a time limit to how long the sprints are, there's also some productive pressure to ship something concrete by the end of your stay. So, it's rare to see people playing games or doomscrolling during sprints. Instead, they want to ship something, even if it's a humble small first contribution.</span></p><p dir="ltr" style="line-height: 1.96364; margin-bottom: 12pt; margin-top: 0pt;"><span face="Arial, sans-serif" style="color: #333333; font-size: 12pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">Better yet, after you spend some time with a person in real life, even online interactions with them afterwards change. My brain does this thing where it reads GitHub comments of people I know in their voice. This little thing additionally humanizes the pixels on screen and makes the interaction smoother. When you come to sprints, you build more lasting connections, because you don't only talk about stuff in the hallway, you're solving problems together.</span></p></span><h2 style="text-align: left;">You're getting for free what you wouldn't be able to buy if you tried</h2><span><p dir="ltr" style="line-height: 1.96364; margin-bottom: 12pt; margin-top: 0pt;"><span face="Arial, sans-serif" style="color: #333333; font-size: 12pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">You're solving problems together alongside developers from different companies, backgrounds and specialties. Some of them are maintainers of the projects you're contributing to, with a wealth of expertise they're sharing freely. You get immediate feedback, you can learn at a rate that is impossible to match online. You learn not only by doing and asking questions, but even just by watching others work. You discover better tools or ways to use them you didn't know existed.</span></p><p dir="ltr" style="line-height: 1.96364; margin-bottom: 12pt; margin-top: 0pt;"><span face="Arial, sans-serif" style="color: #333333; font-size: 12pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">To put it bluntly, the experts you work with during sprints would be impossible to hire as tutors, and here you get to work with them free of charge. Think about it, that alone makes it worth staying for sprints. And don't get cold feet, either, because...</span></p></span><h2 style="text-align: left;">You belong</h2><span><p dir="ltr" style="line-height: 1.96364; margin-bottom: 12pt; margin-top: 0pt;"><span face="Arial, sans-serif" style="color: #333333; font-size: 12pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">I've heard some newcomers are worried that maybe the expected experience level is too high. I say you will definitely find something productive to do. I even blogged about this specifically for PyCon US this year, so you can read "</span><a href="https://pycon.blogspot.com/2025/04/pyconus-sprints.html" style="text-decoration-line: none; text-decoration: none;"><span face="Arial, sans-serif" style="color: #4078c0; font-size: 12pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">What to Expect at PyCon US Sprints</span></a><span face="Arial, sans-serif" style="color: #333333; font-size: 12pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">" to get an idea about how to make your experience great. The PyCon Korea sprint organizer and Steering Council member Donghee Na says: "I notice that the participants who had a good experience at last year's sprint tend to rejoin the sprint this year. I hope that many of them come back next year too." I'm seeing the same thing, and want to see even more of it. We do care about your experience.</span></p><p dir="ltr" style="line-height: 1.96364; margin-bottom: 12pt; margin-top: 0pt;"><span face="Arial, sans-serif" style="color: #333333; font-size: 12pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">Specifically at PyCon US, this year we tried something new. We split the CPython sprint room into two rooms: one dedicated to first-time contributors, and one to seasoned developers that needed to focus on some feature or bugfix they really wanted to ship before leaving Pittsburgh. It turned out great. Talking to attendees on both ends, I think both rooms enjoyed this setup and we will be repeating that for next year. While I was coordinating the first-time contributor room, I was heartened to see that quite a few veteran core developers joined me in the room. It was fun all four days!</span></p><p dir="ltr" style="line-height: 1.96364; margin-bottom: 12pt; margin-top: 0pt;"><span face="Arial, sans-serif" style="color: #333333; font-size: 12pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">At EuroPython, the setup this year was such that Petr Viktorin and I were coordinating the CPython sprint... or so we thought! In parallel, Adam Turner was leading the CPython documentation sprint, but attendees responded so well to him that he quickly organically became the de facto leader of the entire CPython sprint. Kudos, Adam, you did great!</span></p></span><h2 style="text-align: left;">Dedicated sprint events</h2><span><p dir="ltr" style="line-height: 1.96364; margin-bottom: 12pt; margin-top: 0pt;"><span face="Arial, sans-serif" style="color: #333333; font-size: 12pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">It's not all roses with sprints that are attached to conferences. After an intense few days of the larger event, people tend to get tired. Introverts run out of steam. Key people that you could use talking to don't stay or are only available on the first day. If only there could be an event where core developers gather for a week just to sprint. No distracting talks and hallway tracks!</span></p><p dir="ltr" style="line-height: 1.96364; margin-bottom: 12pt; margin-top: 0pt;"><span face="Arial, sans-serif" style="color: #333333; font-size: 12pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">CPython actually does this annually </span><a href="https://blog.python.org/2016/09/python-core-development-sprint-2016-36.html" style="text-decoration-line: none; text-decoration: none;"><span face="Arial, sans-serif" style="color: #4078c0; font-size: 12pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">since 2016</span></a><span face="Arial, sans-serif" style="color: #333333; font-size: 12pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> with the obvious online-only hiccup of 2020 and 2021. We do love those sprints as they are both productive and fun. Last year we </span><a href="https://hugovk.dev/blog/2024/python-core-developer-sprint-2024/" style="text-decoration-line: none; text-decoration: none;"><span face="Arial, sans-serif" style="color: #4078c0; font-size: 12pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">returned to Meta</span></a><span face="Arial, sans-serif" style="color: #333333; font-size: 12pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;"> while this year </span><a href="https://discuss.python.org/t/2025-core-dev-sprint-15th-19th-september-at-arm-ltd-in-cambridge-uk/71909" style="text-decoration-line: none; text-decoration: none;"><span face="Arial, sans-serif" style="color: #4078c0; font-size: 12pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">we will be sprinting at Arm Ltd in Cambridge UK</span></a><span face="Arial, sans-serif" style="color: #333333; font-size: 12pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">. Unlike the conference sprints, this is an invite-only event for core developers where we can focus on making the next version of Python shinier than it would otherwise be.</span></p><p dir="ltr" style="line-height: 1.96364; margin-bottom: 12pt; margin-top: 0pt;"><span face="Arial, sans-serif" style="color: #333333; font-size: 12pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">But maybe organizing sprint-first events makes sense in general? It seems to me like that could be pretty helpful. Or maybe this is already a thing? Let us know if you know of sprint-first events in your area.</span></p><p dir="ltr" style="line-height: 1.96364; margin-bottom: 0pt; margin-top: 0pt;"><span face="Arial, sans-serif" style="color: #333333; font-size: 12pt; font-variant-alternates: normal; font-variant-east-asian: normal; font-variant-emoji: normal; font-variant-numeric: normal; font-variant-position: normal; vertical-align: baseline; white-space-collapse: preserve;">And in the meantime, consider staying for sprints at the next conference you're attending. It's well worth it!</span></p><br /></span><p>&nbsp;</p>Unknownnoreply@blogger.comtag:blogger.com,1999:blog-8520.post-1721705024865874612025-09-02T10:02:00.000-04:002025-09-02T10:02:33.634-04:00The 2025 PSF Board Election is Open!<p>It’s time to cast your vote! Voting for the 2025 PSF Board Election is open starting today Tuesday, September 2nd, 2:00 pm UTC, through Tuesday, September 16th, 2:00 pm UTC.&nbsp;<br /></p><h2 style="text-align: left;">How to Vote</h2><p>If you are a voting member of the PSF who <a href="https://pyfound.blogspot.com/2025/07/affirm-your-psf-membership-voting-status.html" target="_blank">affirmed your intention to participate</a> in this year’s election or you voted in last year’s election, you will receive an email today from “OpaVote Voting Link &lt;noreply@opavote.com&gt;” with a link to your ballot. The subject line will read “Python Software Foundation Board of Directors Election 2025”. If you haven’t seen your ballot by Wednesday, please first check your spam folder for a message from “noreply@opavote.com”. If you can’t find the ballot email from OpaVote please get in touch by emailing psf-elections@pyfound.org so we can look into your account and make sure we have the most up-to-date email for you.</p><p>Four seats on the board are open, but you can vote to approve as many of the 13 candidates as you like. We’re delighted by how many of you are willing to contribute to the Python community by serving on the PSF Board! Make sure you take some time to look at all <a href="https://www.python.org/nominations/elections/2025-python-software-foundation-board/nominees/" target="_blank">the nominee statements</a> and choose your candidates carefully.&nbsp;</p><p><b>ATTN:</b> Choose carefully before you press the <b><span style="color: #38761d;">big green vote button</span></b>. Once your vote is cast, it cannot be changed.<br /></p><h2 style="text-align: left;">Who can vote?&nbsp;</h2><p>You need to be a Contributing, Supporting, or Fellow member and have affirmed your voting intention by August 26th, 2:00 pm UTC, to vote in this election. Per last year’s Bylaw change that allows for <a href="https://github.com/python/psf-bylaws/compare/a35a6071de181adbb7a160d5d1447e7b0272359c...6bac449" target="_blank">simplifying the voter affirmation process by treating past voting activity as intent to continue voting</a>, if you voted last year, you have been automatically added to the 2025 voter roll. <i>Please note: If you removed or changed your email on psfmember.org, you may not automatically be added to this year's voter roll.</i>&nbsp;</p><p>Reminder that if you were formerly a Managing member, your membership has been updated to Contributing as of June 25th, 2025, per last year’s <a href="https://github.com/psf/bylaws/compare/a35a6071de181adbb7a160d5d1447e7b0272359c...359cbc540f2f6bf00bc46b9dbe3e00a950612c27" target="_blank">Bylaw change that merged Managing and Contributing memberships</a>.&nbsp;</p><p>If you’d like to learn more or sign up as a PSF Member, check out our <a href="https://www.python.org/psf/membership/" target="_blank">membership types</a>. You can check your membership status on your <a href="https://psfmember.org/user-information/" target="_blank">User Information page</a> on psfmember.org (you will need to be logged in). If you have questions about your membership or the election please email psf-elections@pyfound.org</p>Marie Nordinhttp://www.blogger.com/profile/15138793242213676112noreply@blogger.com