Programming uC with Arduino trouble!

So I have an arduino, well not quite. It's an arduino compatible board. It's called Visduino. It works alright but there's one problem. The ATmega328 controller in it is SMD. I can't remove it.
Now I want to program a standalone through-hole ATmega328p with my Visduino board. The tutorial on the website has a step where you have to remove the uC from the arduino board in order to use it as an ISP programmer. Obviously I can't do that.

Does anyone know if I can just do that step without removing anything. Or upload my code to a standalone uC some other way? Can it be done?

Breadboard circuit at the bottom.

Regarding the inclusion of the 10 uF capacitor between Reset and Ground in the above tutorial: What makes the Uno need to extra capacitor and not earlier Arduino's?

The reason I ask is because I am currently using the following:
Arduino Duemilanove,
Atmega168P replaced with an Atmega328P on the Duemilanove.

I wired up the target chip essentially the same as in the tutorial. The difference is that there are LED's with series resistors connected to pins 7, 8, and 9 as per instructions found in Make: AVR Programming, by Elliot Williams. LED on Pin 9 while ArduinoISP is waiting for input. LED on Pin 8 will light when code is being transferred to the target IC. LED on Pin 7 will light when there is an error. This must be in the ArduinoISP code found in the IDE as that is what is uploaded to make it the ArduinoISP - those extra LED's are not presented in tutorial.

Anyway, the question is about the capacitor.

Different reset circuit.

The infromation written below still stands but I see that 1) It is not such an important issue, and 2) I am just curious about this situation as I am using a Duemilanove for an ArduinoISP and not an Uno.
So I am Googling the topic, of which below is one result:


Clarification:
The Arduino Duemilanove has had the Atmega168P chip replaced with an Atmega328P.
I have set up the Arduino Duemilanove as an ArduinoISP.
The ArduinoISP will not work without the 10 uF capacitor between Reset and Ground.

In the instructions on this page: https://www.arduino.cc/en/Tutorial/ArduinoISP
It states in step 5 of Instructions that you will need to place a 10 uF capacitor between Reset and Ground if you have an Arduino Uno. I am not using an Uno.

Why do I need the 10 uF capacitor when I am using a Duemilanove board as the ArduinoISP?

According to the schematic, the duemilanove has autoreset, so you have to use the cap to disable it http://www.arduino.cc/en/uploads/Main/arduino-duemilanove-schematic.pdf

playinmyblues:
Why do I need the 10 uF capacitor when I am using a Duemilanove board as the ArduinoISP?

For older boards you use a 120 ohm resistor...
http://playground.arduino.cc/Main/DisablingAutoResetOnSerialConnection

In any case, you have to disable auto-reset.

DrAzzy:
According to the schematic, the duemilanove has autoreset, so you have to use the cap to disable it http://www.arduino.cc/en/uploads/Main/arduino-duemilanove-schematic.pdf

Page in question: http://www.arduino.cc/en/Tutorial/ArduinoISP
For the sake of clarity, should the instructions on that page not reflect what is needed? I keep reading the page and get see only the Uno as needing the capacitor.

I think it would be great if the tutorial could be updated. I believe a capacitor between Reset and GND will disable auto reset on any board that has a similar reset circuit (reset circuit with a 0.1uF cap between DTR and Reset). In that tutorial, the Uno should not have been specifically mentioned. It was probably written by somebody who had only NG and Uno boards on hand. There are numerous things on that tutorial that could be improved.

What makes the Uno need to extra capacitor and not earlier Arduino's?

Actually, this was due to the new bootloader (optiboot.) The old bootloader would abort and run the app if it got invalid commands on the serial port (which happens when the bootloader runs at a different speed (57600?) than the arduinoISP sketch (19200)) So if you start an avrdude command to ArduinoISP, the bootloader gives up and starts arduinoISP pretty quickly, even if autoreset DOES occur.
In order to save space, optiboot is a lot dumber about detecting invalid commands, so it would stay in the bootloader as long as there was ANY serial traffic. I supposedly fixed this quite some time ago (version 4.3) by detecting actually reception "framing errors" (easier than detecting illegal commands, but not as "accurate"), and current arduinos SHOULD have this change, but it's still much more reliable to prevent the auto-reset from occurring in the first place.

westfw:
I supposedly fixed this quite some time ago (version 4.3)

Do you think this is now just extra unnecessary step to give in a tutorial and when giving guidance about using ArduinoISP sketch, and it may be best to discontinue mentioning disable of reset? I’ll bet most if not all Uno’s come with Optiboot 4.4.

Well, I still disable RESET when I use ArduinoISP... (actually, I have some pre-autoReset boards that I use, so it's pretty easy for me...)