Submit a post
We welcome contributions from all community members.
Volunteer to review
Learn how you can help the community grow and become a member of the team.
Best Practices for Using NumPy's Random Number Generators
Given the practical challenges of achieving true randomness, deterministic algorithms, known as Pseudo Random Number Generators (RNGs), are employed in science to create sequences that mimic randomness. These generators are used for simulations, experiments, and analysis where it is essential to have numbers that appear unpredictable. I want to share here what I have learned about best practices with pseudo RNGs and especially the ones available in NumPy. A pseudo RNG works by updating an internal state through a deterministic algorithm. Read more...
The Scientific Python Development Guide
Henry Schreiner presenting the Development Guide and cookie project
template at the first Scientific Python Developer Summit.

One outcome of the 2023 Scientific Python Developer Summit was the Scientific Python Development Guide, a comprehensive guide to modern Python package development, complete with a new project template supporting 10+ build backends and a WebAssembly-powered checker with checks linked to the guide. The guide covers topics like modern, compiled, and classic packaging, style checks, type checking, docs, task runners, CI, tests, and much more! There also are sections of tutorials, principles, and some common patterns.

Read more...
Your Code Could Go To Space
In mid-2018 I started learning Python by reading textbooks and watching online tutorials. I had absolutely zero background in computer science, but it seemed interesting so I continued to try. At some point, I decided I wanted to do a master’s degree in statistics, so I began to work on more statistics-based programming. That’s when I found SciPy. I became (and still am) fascinated by the idea of open-source software that is completely free to use and supported by a community of diligent programmers. Read more...
Developer Summit 1
Group picture of summit attendees. The first Scientific Python Developer Summit (May 22-26, 2023) brought together 34 developers at the eScience Institute at the University of Washington to develop shared infrastructure, documentation, tools, and recommendations for libraries in the Scientific Python ecosystem. Pre-summit planning# Prior to the summit we held several hour-long planning meetings: General (2023-02-27) May 15, Package metrics, DevStats May 15, SPECs May 18, Community & Documentation May 19, Build Systems & CI Infrastructure May 19, PyTest plugins & Sphinx extensions Summit execution# At the summit, we had a brief check-in and then split into several groups based on each developers time and interests. Read more...
Developer Summit 1: Sparse Arrays
Scientific-Python Developer Summit# (May 22-26, 2023, Seattle WA) – The first Scientific Python Developer Summit provided an opportunity for core developers from the scientific Python ecosystem to come together to: improve joint infrastructure better coordinate core projects work on a shared strategic plan Related notes/sites: Worklog. Planning Meeting Notes and Info. One of the focuses of the summit was Sparse Arrays, and specifically their implementation in SciPy. This post attempts to recap what happened with “sparse” at the summit and a glimpse of plans for our continuing work. Read more...
Outreachy Part II: Internship Guide
This is the second part of a blog series where I talk about my experience during my Outreachy internship at NetworkX. If you haven’t read the first part you can find it here. As you advance through the contribution phase you may wonder how your internship is gonna be in case you get selected. Here is my experience as a NetworkX intern and some tips that could help you through the internship. Read more...
Outreachy Part I: My experience as a first-time contributor in Open-Source
Outreachy logo What’s Outreachy?# Outreachy is a paid remote internship program for underrepresented groups in tech. All internships are in Open Source and Open Science. To be selected as an intern first you need to : Fill out an initial application: You’ll need to answer some questions about how you are affected by the systemic bias, and how being underrepresented in your local tech industry impacted your development. Maybe you don’t know how to answer some of these questions, especially if you are still not looking for a job, but it’s important to do some research first. Read more...
NumPy's first Developer in Residence: Sayed Adel
The NumPy team is excited to announce the launch of the NumPy Fellowship Program and the appointment of Sayed Adel (@seiko2plus) as the first NumPy Developer in Residence. This is a significant milestone in the history of the project: for the first time, NumPy is in a position to use its project funds to pay for a full year of maintainer time. We believe that this will be an impactful program that will contribute to NumPy’s long-term sustainability as a community-driven open source project. Read more...