DIY AVR programmers

Anyone got the layout for a AVR programmer suitable for the 3 arduino chips that utilises the printer port like this one?

or one that can be hooked upto a breadboard for multiple AVRs

E2A:
Really like this design as it seems so flexible and can be modded easily for a multiple AVR programming bank, right though to ISP for the BBB, RBB, duemilanove, strpduino and so on.
http://electronics-diy.com/avr_programmer.php

But am wondering if i could use any general purpose NPN transistors to replace the BC549?

could use any general purpose NPN transistors to replace the BC549?

Yes no problem.

Thanks mike, any chance you could explain to me why a NPN wolud be needed at all in this?

The NPN is used to pull the RESET pin low… but the signal being supplied by the pin is a) not 5V compatible b) going positive when triggered, so it’s an Inverter as well as a guarantee that the pin get’s clearly pulled to correct low logic level relative to the CHIP. The Zener diodes provide a similar guarantee that the chip sees a TTL 5Volt logic level but the related CHIP pins do not need logic “inversion”.

Thank you or taking the time to explain it to me pwillard, sincerely appreciate.