Saturday, March 28, 2009

NumPy 1.3 coming soon!

David Cournapeau just announced the first release candidate for NumPy 1.3. This release comes just over 6 months since the last minor release. It includes numerous bug-fixes, documentation improvements, improved Windows support, major code cleanups and refactoring, as well as several new features. NumPy 1.3 provides Python 2.6 compatibility on all supported platforms, an important first step in migrating to Python 3. This release also provides experimental Windows 64 bit support.

An important highlight of this release, is the addition of generalized universal functions. In NumPy, a universal function (or ufunc) is a wrapper that provides a common interface to mathematical functions, which operate on scalars and can be made to operate on ndarrays in an element-by-element fashion. NumPy provides a number of built-in ufuncs for mathematical operations, trigonometric functions, bit-twiddling, comparisons, etc. For example, add is a ufunc that wraps scalar addition to provide addition of ndarrays. Ufuncs support array broadcasting, type casting, as well as several other features. Generalized ufuncs extend this idea to functions on ndarrays. In other words, while ufuncs are limited to wrapping element-by-element functions, generalized ufuncs support ndarray-by-ndarray operations. There is similar functionality and terminology in PDL, the Perl vector library. There is all ready some documentation for this powerful new feature, but as always we need help improving it, which anyone can do by simply clicking here. In particular, a few examples would be very helpful.

Finally, as the 1.3 release manager, David focused a lot of attention on improving our release infrastructure (in addition to his numerous efforts with every aspect of the project). In particular, he made great progress in automating the release process. This effort should provide immediate pay off by reducing the time and effort needed to make future NumPy and (potentially) SciPy releases. In turn this will help increase the frequency with which we are able to get bug-fixes, improved documentation, speed optimizations, and new features out to the wider community.

Friday, March 27, 2009

SciPy 2009 Conference (August 18-23, 2009)

I am pleased to announce that the 8th Annual Python in Science Conference will be held August 18-23, 2009 at Caltech in Pasadena, CA.
  • Tutorials (Tuesday, August 18 - Wednesday, August 19)
  • Conference (Thursday, August 20 - Friday, August 21)
  • Sprints (Saturday, August 22 - Sunday, August 23)
This conference provides a unique opportunity to learn and affect what is happening in the realm of scientific computing with Python. Attendees have the opportunity to review the available tools and how they apply to specific problems. By providing a forum for developers to share their Python expertise with the wider commercial, academic, and research communities, this conference fosters collaboration and facilitates the sharing of software components, techniques and a vision for high level language use in scientific computing.

Wednesday, March 25, 2009

SciPy and Summer of Code 2009

Google is once again sponsoring a Summer of Code (SoC). For the past several years, the SciPy community has participated in the SoC program through the Python Software Foundation (PSF). Past projects have included a new testing framework, numerical optimization code, machine learning code, and improved support for NumPy in Cython. Most students have remained very active in the community and continue to be major contributors to the SciPy community.

To see a list of possible project ideas please see the PSF's SoC wiki. A number of students have all ready expressed interest in working on a SciPy-related project this year. If you are interested, the best place to discuss ideas is on the NumPy and SciPy developer mailing lists.