I’ve written a fair bunch of software related to my research:
Active projects related to scientific computing
Most of my software these days has to do with research:

PyOpenCL makes the industrystandard OpenCL compute abstraction accessible from Python. It features automatic cleanup functionality and tight integration with Numpy. In the same spirit as PyCUDA, rather than being merely a nice interface, it aims to enable a new, generative style of programming. Available under the terms of the MIT license.

PyCUDA makes the Nvidia CUDA compute abstraction accessible from Python. It features automatic cleanup functionality and tight integration with Numpy. But rather than merely a nice interface to CUDA, it aims to enable a new, generative style of GPU programming. It further contains a GPUbased array package and building blocks for common vectorial and reductive operations. Available under the terms of the MIT license.

Loo.py is a code generator for arraybased number crunching code on CPUs and GPUs, using OpenCL Available under the terms of the MIT license.

ModePy provides interpolation, differentiation and many other ‘spectralelement’like tools for unstructured highorder discretizations. Available under the terms of the MIT license.

MeshPy allows you to generate quality triangular and tetrahedral finite element meshes directly in Python. (MeshPy itself is MITlicensed, but the mesh generators have more restrictive licenses that prohibit commercial use.)

PyVisFile allows writing large files of visualization data in the Vtk and silo formats. Pyvisfile is under the MIT license.

hedge is an unstructured, highorder, parallel Discontinuous Galerkin (DG) code. Its design is focused on two things: being fast and easy to use. While computational efficiency dictates implementation in a low level language, these same lowlevel languages become quite cumbersome at a higher level of abstraction. This is where the “h” in hedge comes from; it takes a hybrid approach. It allows the user to specify a DG operator in a highlevel, mathematically oriented language and then worries about the details of applying this operator in a matrixfree fashion across a wide array of execution environments, including CPUs, GPUs, and MPIbased clusters of CPUs and GPUs. Available under the terms of the MIT license.

islpy binds Sven Verdoolaege’s integer set library to Python. islpy is under the MIT license, but it depends on the
isl
, which is under the LGPL. 
CGen allows syntaxtreebased generation of C/C++/OpenCL/CUDA source code. Available under the terms of the MIT license.

CodePy is a CPU metaprogramming toolkit that supports compilation of C code at runtime and enables dynamic linking of generated code into a running Python instance. Available under the terms of the MIT license.

PyMetis allows you to partition graphs into controllablesize lumps, or, as an application of that, partition finiteelement meshes for use on parallel computers. (PyMetis itself is MIT, but Metis is nonfree as defined by the DFSG.)

PyUblas allows seamless interoperability between Numpy and Boost Ublas. Available under the terms of the MIT license.
Small “tool” packages

Pymbolic is a lightweight library to perform symbolic calculations in Python. If you need to take derivatives, expand polynomials or simplify expressions, Pymbolic is for you. If you neeed heavylifting procedures such as limits and integration, you might want to look elsewhere, as I’m not sure these will ever get implemented. Available under the terms of the MIT license.

Pytools is a mixed bag of Python usefulness. Most of my other Python hacks need this to work. Available under the terms of the MIT license.
Projects not related to scientific computing (but still fun)

PuDB is a sourcelevel debugger for Python. It runs in a terminal and is based on Ian Ward’s Urwid library. Available under the terms of the MIT license. (but depends on a GPL library)

synoptic helps me keep my notes in order—research or otherwise. Available under the terms of the MIT license.

tagpy is a set of Python bindings for the media tagging library TagLib. Available under the terms of the MIT license. (but depends on an LGPL library)

A Linux/LIRC interface for the Intervideo XPCRC01 remote. Available under the terms of the MIT license.

A Python/PyGame clone of the PopCap game Bejeweled.

The Unicode Input Helper, a unicode character map program with a bias towards typing math.
Inactive projects
 Pyrticle is an experimental hybrid ParticleinCell solver based on hedge. It forms the testbed for our research into combining discontinuous Galerkin Maxwell field solvers with particlebased solvers for the Vlasov equation. Licensed under the copyleft GPL3.
 Clockwork is a small time tracking script.
 FemPy is a small finite element package in and for Python.
 PyLinear is a (sparse and dense) matrix computation package for Python.
 SDLucid is a multimedia wrapper library.
 ixlib is a (mostly deprecated) tool library for C++.
 WAM is a jumpnrunnshoot game about a mole. Incomplete.
 Orbit C++ is a CORBA language binding which I helped create. It lives on in ORBit, Gnome’s CORBA ORB.
 MiniIDE is a tool for your editcompiledebug cycle. Pretty old, but it does work.
 madman is like iTunes, only better. :) And for Linux. Licensed under the copyleft GPL2.