The JDM PIC programmer by Jens D. Madsen is a "high voltage serial programmer" or HVPP. It is basically same as Ludipipo, Ludi's Pic Programmer, by Ludwig Catta.
It is intended to have a socket where you place the MCU to be programmed, it is not intended for having external connections for programming MCUs on PCBs, at least unless the PCB power supply is floating in respect to the PC so they don't share a ground.
The programmer uses the PC RS232 port which typically at the time used +/- 12V signaling for the data and handshake wires.
The PC GND is used as a positive MCU supply, as the RTS pin is set to negative to charge up C2 so the zener limits the MCU positive supply to about 5V. RTS will be clamped to about -6V by zener and diode. Toggling RTS between +/- 12V will pump up voltage to C1 which is the programming voltage reservoir cap, which will be limited to about 8V above MCU positive supply, or about 13V above MCU ground.
So the voltages are all relative. PC 0V is used as MCU positive 5.1V supply, to use PC negative -12V output as MCU 0V supply, which allows the PC positive +12V output to be used as the high voltage programming supply, about 13V above MCU 0V.
As the RS232 serial port outputs are not really intended to supply much power, the arrangement makes sure that the voltages are within the PIC requirements when load is applied and current is drawn from PC serial port data pins. The PC +12V will drop somewhat under load and which is why only +8V above PC 0V is needed because PC -12V is used to generate -5.1V as MCU ground.