When I started learning microcontrollers (I started with a loaned PIC16F877A), to avoid program loading errors due to loose connections or even damaging my microcontroller during programming I designed my a board where the microcontroller (PIC16F877A), the programmer (SerCon2) and the voltage regulator (7805) can be soldered and I wont need to plug, detach and re-plug it again when programming. It did great on the first project but when the second project came I couldn’t any of it with out removing solder and soldering stuff back to the new project. Guys who started with Arduino also faces a similar dilemma - you cant just rip an arduino board off a project!
Here’s a solution from ladyada.net – what about giving each project a separate microcontroller without the development board? How to do it (such that it is still compatible with the Arduino system)? Use an Arduino!
This is a tutorial that would walk you through the process of building a custom bootloader burner shield using a protoshield, a ZIF (zero insertion force) socket and a bunch of wires. Oh by the way you will also need the Arduino IDE to load the bootloader to the chip – you can load a number of bootloaders – Uno, Duemilanove, Lilypad, Diecimilia, ect. – which basically depends on your applications needs.