Sparkfun's Pocket AVR programmer, it is an easy to use (USB) programmer
Be warned that these modules have a known problem where the Power Target switch is not really functionion, if you are powering up your microcontroller externally, do NOT connect Vcc from this module. Otherwise, and although not advisable you could use upto 500mA from the programmer to power up your circuit.
This programmer is compatible with ATmega328P that we carry
In the make file, choose the programmer as "usbtiny"
Sparkfun product page: https://www.sparkfun.com/products/9825
Pinout: See pictures