Jordan Kasper
banner
jordankasper.com
Jordan Kasper
@jordankasper.com
53 followers 48 following 140 posts
Technologist, board gamer, nerd.
Posts Media Videos Starter Packs
Honestly? This paper says very little about what they're actually doing to ensure digital sovereignty, imo.
Reposted by Jordan Kasper
IMO, the PSF has always been the ideal any software foundation should aspire to be. I’m so happy to see them make this decision.

https://pyfound.blogspot.com/2025/10/NSF-funding-statement.html

#python #psf
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
Reposted by Jordan Kasper
We're officially announcing our speakers DistrictCon Year 1! Check out our incredible lineup: www.districtcon.org/speakers

This also includes our Day 1 & Day 2 Keynotes from Ian Levy and Dan Ridge.

And don't forget, GA tickets go on sale November 16! See you in January! 🪩
I'll be speaking @confooca.bsky.social in Montreal this February! Anyone out there going? If you're looking for a polyglot #tech #conference with something for everyone, consider coming!

I'll be giving talks on regular expressions and git. Both will start easy, but ramp up quickly.
Shocked. Shocked I tell you.
ChatGPT’s new Atlas browser doesn’t just see what you read — it remembers it.

@eff.org’s Lena Cohen showed me it even logged “memories” of her looking for *abortion care* and her doctor’s name. Out-surveils even Chrome.

My @washingtonpost.com column: wapo.st/49bOcVC
Column | ChatGPT just came out with its own web browser. Use it with caution.
OpenAI’s Atlas promises AI-powered convenience. The price? Letting ChatGPT track and store “memories” of what you do online.
wapo.st
At an international laundromat and have had two different (non-English speaking) people ask ME for help... What about me says "yes I know what I'm doing and am willing to help you." ???
Reposted by Jordan Kasper
Junkyard closes on Friday, Oct 24 at Midnight!!!
Submit here: www.districtcon.org/junkyard
Reposted by Jordan Kasper
Good lord police you're looking for someone who robbed an art museum the guy is RIGHT THERE
And if you click on "Configuration and Usage" on that page, it takes you to a sub-page under "Project Configuration" - but it gets worse, because _that_ page isn't for configuration either! 😑 It has some basic usage stats. At the bottom there's yet another link to take you to the real config area.
Took a look at my dashboard, it was the other way around! When on a project, in the sidebar, there's no top-level item for "Functions", but if you go to the "Logs" sidebar item and expand it, there you have "Functions" - which has both the logs AND config...
I might be dense, but where are the docs for an API to update the function configuration to add an IP to the block list?
Example: serverless function logs. They're buried within the function stuff, but since there are logs for other things, I would expect all of those to be accessible from the same place. (They are not.)
I'm traveling for a bit, so a call isn't likely soon. I think it's info arch, but maybe could solved with some nav? Basically: I look for things where I think they should be, but they aren't there, so I have to go spelunking.
Oh my yes. That UI needs a bit of an overhaul. Difficulty to find what you want/need.
I built a new #game that I'm curious to get feedback on. It's a star/constellation themed logic #puzzle. I definitely don't have the kinks worked out, but I'd love to hear what people think!

jordankasper.com/constellation/
Constellation
jordankasper.com
Yes, I'm aware. Just trying to reduce the load on me (the developer) for some basic checks. Question: can a netlify function programmatically block an IP address ad hoc? Then the function could check for possible malicious use and auto block.
What if Netlify put something in front of my function to check the origin header and reject anything that isn't same-origin? (I assume via a config option since this would break existing cross origin functions.)

Doesn't prevent truly malicious actors, but prevents basic curl scripts, etc.
Since this is a static site with no user authentication, I'm not sure any CSRF token implementation would be possible, right?

As for CORS, I can set that header, sure... but the request would already have hit the server and thus be executed by the function.
From those docs it looks like a default rate limit already exists per request IP, is that right? That certainly would help. Blocking is obviously an affirmative action and I'm looking for passive things. Does Netlify enforce the same-origin policy?
Host-restricted serverless functions. Basically I want to be able to send a serverless function a request and know it came from my static site. I'm sure there are various ways to implement this, I'm open!

For context, this is what I use them for:
jordankasper.com/building-a-s...
Jordan Kasper - Building a Simple Analytics Replacement
So long and thanks for all the fish.
jordankasper.com
w00t! This playlist includes my #DEFCON talk on the State of #OpenSource in the Federal Government! Sadly, the slides didn't work during the presentation, but they're up at the second link below!

youtu.be/S_Ly_eXY65k?...

jordankasper.com/oss-in-gov
I find that game either impossible or far too simple... nothing in between.