I've been paged to join in the conversation regarding issue #1.
(I'm slammed with a video project and some computer consulting, which has been taking time from my new habit of wasting far too much of my time playing with yoyos)
1: It comes down to the footswitch. While previously stated that MyDMX does not look at program changes, it does look at program changes. My problem was I have been using MIDI devices that do not use program changes in my testing. The reason why is that they are racked, cased or otherwise not so convenient to get to. My bad.
2: Most footswitches use program changes/patch changes. Notes are good too, mostly because they provided a more "definitive" type of input, as opposed to CC(continuous controller) data, which really needs to be assigned to a DMX channel
Now, the questions back to you are as follows:
How does this device connect to your computer? Maybe you don't have it yet, so you don't have an answer yet. What models are you looking at?
If it connects via MIDI, you need a MIDI interface. I've been having sketchy results with the M-Audio MIDISPORT series. I have a 2X2 and a 2X2 Anniversary edition, and it's really due to the driver being weird. I had to remove the driver. Between hotfixes and patches from Microsoft, what works one day doesn't work the next. The key is that if you can right mouse click a channel and it brings up a MIDI LEARN option, you're seeing that MyDMX has accepted your MIDI hardware. WHAT hardware it has accepted(if you have more than one device) is a whole other set of confusion.
Now, assuming all is fine, it's a matter of MyDMX being set to "learn" what footswitch does what scene and you're gold.
As far as triggering lights from software, it's best to do that as a MIDI NOTE function in your sequencing package as well. But you're playing live(rock on!), so that doesn't stay a viable option.
If you have more questions, I'll try to follow this thread, but I can't make promises. I'm super slammed with real work at the moment. If need be, Jingles will drag me back in and I will happily and gladly help in any way I can.