Arduino Mini 05
Arduino is an open-source physical computing platform based on a simple i/o board and a development environment that implements the Processing/Wiring language. Arduino can be used to develop stand-alone interactive objects or can be connected to software on your computer (e.g. Flash, Processing, MaxMSP). The open-source IDE can be downloaded for free (currently for Mac OS X, Windows, and Linux).
This is the new, smaller, Arduino Mini 05 with ATmega328. The latest version of this board is built around a smaller ATmega328 package, allowing all of the parts to be populated on the top side of the board. Of course, it still requires an external serial connection for programming.
The Arduino Mini 05 is a great development module for building compact devices that need to interact with the world around them.
Note: There is not USB-Serial on board, so to program it you'll need the FTDI Breakout 5v.