supplying power for in-system programming
Assuming your programmer board can supply sufficient current at 3.3V then you can simply connect the programming header to the main 3.3V rail and it should all work fine. Most voltage regulators will cope with that without any issues. You could always play safe and add a diode to block the programming voltage from reaching the regulator but that then lowers your normal 3.3V rail but the diode forward voltage drop.

If your programmer can only supply sufficient current at some other voltage (e.g. 5V) then it may be possible to supply that voltage to the 12V rail and power the system up that way, it depends entirely on the voltage regulator used on the board. In that situation put some small series resistors (10-100R) on all the data lines in order to limit currents on them while power supplies come up. And for hopefully obvious reasons doing that with the 12V also connected has the potential to be very bad.