The parallel programmer (any of the four types) is very easy to assemble, and very inexpensive. For someone on a limited budget that has a PC/laptop with a parallel port, this is a great way to get into microcontrollers. About $5 (or less) for a programmer, and about $5 (or less) for an AVR.
Great way to start learning about microcontrollers.