Richard Swinbank
banner
richardswinbank.net
Richard Swinbank
@richardswinbank.net
Data Engineering, DataOps, Business Intelligence | Data Engineer | Author | CompSci PhD | He/him
Reposted by Richard Swinbank
More integrity than all of big tech combined
The PSF has withdrawn $1.5 million proposal to US government grant program
In January 2025, the PSF submitted a proposal to the US government National Science Foundation under the Safety, Security, and Privacy of Open Source Ecosystems program 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. We were honored when, after many months of work, our proposal was recommended for funding, particularly as only 36% 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, **but to any and all activity of the PSF as a whole**. 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. Diversity, equity, and inclusion are core to the PSF’s values, as committed to in our mission statement: > _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**a diverse and international community** of Python programmers._ 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 The Carpentries. 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. 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. 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. 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. How to support the PSF: * Become a Member: 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. * Donate: Your donation makes it possible to continue our work supporting Python and its community, year after year. * Sponsor: If your company uses Python and isn’t yet a sponsor, send them our sponsorship page or reach out to [email protected] 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.
pyfound.blogspot.com
October 30, 2025 at 6:13 AM
Reposted by Richard Swinbank
This whole thread is a journey you might want to consider taking…
reposting with alt text because this feels incredibly significant. the right-wing disinfo machine means a lot of the people grieving Charlie Kirk never heard any of the things he said that would have tarnished his brand as Guy Who Just Wants to Have Dialogue Across the Aisle
September 14, 2025 at 12:31 PM
Reposted by Richard Swinbank
Hey friends! I did a TEDx talk and it's now up on the TED Conferences YouTube. It's possibly the best and most important talk I've ever done.

I would ask that you watch it, and please SHARE it broadly and widely. Thank you! youtu.be/dVG8W-0p6vg #AI #Tech #TED
Tech Promised Everything. Did it deliver? | Scott Hanselman | TEDxPortland
YouTube video by TEDx Talks
youtu.be
July 17, 2025 at 5:37 PM
Just noticed that the SQL Database Projects extension for #vscode appears to insert new objects in the .sqlproj file by alphanumeric name ordering instead of just “at the end” (à la #ssdt). Anyone know if that’s true (maybe @drewsk.bsky.social)? Really reduces merge conflicts, thanks #microsoft 😊
June 23, 2025 at 4:52 PM
Reposted by Richard Swinbank
June 20, 2025 at 7:42 AM
Reposted by Richard Swinbank
Seen on Reddit with the caption
“explainTechDebtToMeLikeImFive”. 12/10 no notes.
April 19, 2025 at 10:12 AM
Why, thank you #Microsoft, thank you @justrie.bsky.social! #mvpbuzz
April 16, 2025 at 5:43 PM
Here's a new blog post on rolling your own CDM connector for #Synapse #Spark richardswinbank.net/synapse/com_... ... making a virtue of necessity after discovering belatedly that #Microsoft's connector is no longer supported in v3.4 😕.
com.microsoft.cdm for Synapse Spark v3.4 [RichardSwinbank.net]
richardswinbank.net
April 9, 2025 at 11:14 AM
Looking at some #datafactory pipelines last week I discovered something unexpected - if you're using non-deterministic functions in pipeline expressions, the result of your activity may be different from what's in the log! buff.ly/2Gge9rc #fabric #synapse #adf
Unreliable logging in data factory pipelines [RichardSwinbank.net]
fabric synapse adf blog pipelines
buff.ly
March 3, 2025 at 10:15 AM
Reposted by Richard Swinbank
February 28, 2025 at 8:32 PM
How Spark pushed me down a well 😄 - my contribution to this month's #tsql2sday: https://richardswinbank.net/spark/two-aggregate-pivot
February 17, 2025 at 9:33 PM
Scraping under the wire for this month's #tsql2sday (in the UK at least...😀). Thanks for hosting @sqlmal! https://richardswinbank.net/blog/sql-database-devops
February 17, 2025 at 9:33 PM
Excited, delighted,... ignited(?) – I'm so happy to have been renewed for another year as a Microsoft Data Platform MVP that I'm running out of adjectives! Super-pleased to remain in the company of some very skilled people. Thank you @Microsoft, MVP Program & @IrishSQL! #MVPBuzz
February 17, 2025 at 9:33 PM
Excited, delighted,... ignited(?) – I'm so happy to have been renewed for another year as a Microsoft Data Platform MVP that I'm running out of adjectives! Super-pleased to remain in the company of some very skilled people. Thank you @Microsoft, MVP Program & @IrishSQL! #MVPBuzz
February 17, 2025 at 9:33 PM
Super-excited to announce that the second edition of my book "Azure DataFactory by Example" is now available! 🎉 You can find it at https://buff.ly/490TwYJ (US) or https://buff.ly/43IEmWA (UK) and probably some other places too 😊 #Azure #DataFactory @AzDataFactory
February 17, 2025 at 9:33 PM
Delighted to receive this box of swag from @microsoft after being unable to attend #MVPSummit in person -- thank you 😊. Pablo says thanks for the box! #mvpbuzz
February 17, 2025 at 9:33 PM
Day 3 at this year’s aviation-themed #sqlbits! Sun’s out, (top) guns out 😎
February 17, 2025 at 9:33 PM
When logging into a virtual machine, avoid DM'img your password to co-workers by making sure that your VM client has focus instead of MS Teams 🤦‍♂️ #modernworkplace #toptips
February 17, 2025 at 9:33 PM
I'm delighted to announce that the 2nd edition of my book Azure Data Factory by Example will be released on April 7th 2024 😊. Available for pre-order right now at https://buff.ly/490TwYJ (https://buff.ly/4914Xjb in the UK), perfect for those (very) late Christmas presents... 🎅
February 17, 2025 at 9:33 PM
Hey @PenguinBooks I’m racing through @richardosman’s Thursday Murder Club, even without your unexpected assistance! Can you help?
February 17, 2025 at 9:33 PM
OK, so *apart* from the chance to network with great people, eat a free lunch, meet the experts and get a whole day of free #Microsoft #DataPlatform training... what has @DataRelay_uk ever done for us?!
February 17, 2025 at 9:38 PM
Time for more @MSPowerBI deployment! In this post, I accelerate creation of new reports by building their deployment pipelines automatically 🚀. Create your report, push it to Git, see it appear in #PowerBI 😀 https://buff.ly/3PYJBwt
February 17, 2025 at 9:38 PM
Super-excited to report that I've been awarded #Microsoft #DataPlatform #MVP for 2023/4 🎉. Working in this community with so many skilled, committed colleagues is a privilege I'm abundantly grateful for, and this is the icing on that large, delicious cake 😊🎂 @MVPAward #MVPBuzz
February 17, 2025 at 9:38 PM
Communicating technical complexity to non-technical colleagues can be tough -- but it's essential if you want to explain why you're going to need 6 months to build a report 😂. Feel free to use my one-slide explainer if it helps! https://buff.ly/46iMH4f
February 17, 2025 at 9:38 PM
I can't find a comprehensive list of UK #Microsoft #DataPlatform user groups – so I created this one https://buff.ly/3qBZa2l! Can #SQLFamily or others help me add missing groups (or find me a better list 😜)?
February 17, 2025 at 9:38 PM