If you are working with data using the Python programming language, you probably rely on an open source software library called NumPy which provides tools to store large multidimensional arrays and matrices, algorithms for their analysis and manipulation, and means to move them from one software package to another. Without NumPy, scientific computing in Python would be slower, more cumbersome, and more error-prone.
Initially released in 2005, NumPy’s core code has built up a substantial “technical debt,” which not only constrains the future development of the platform but also creates a high barrier to entry into its open source developer community.
This grant supports an ambitious project led by NumPy core developer Nathaniel Smith to discharge this technical debt and set in place standards and architecture to encourage more sustainable development going forward. Using this funding, Smith and a team of developers will develop new modular systems for creating data types and arrays of data within NumPy; conduct a wholesale clean-up of the NumPy codebase; and launch a new community engagement process that includes face-to-face meetings, the onboarding of new contributors, and processes for proposing and evaluating larger architectural changes to the platform.