How old is your son?
If hes fairly young, you might want to setup an activity type of thing with him. Where, each week, you send him a code snippet, but comment it in duch so he understands what everything is doing, and then leave a challenge for him to change the code to do something else. Every week you'd teach him how a new command (or group of commands) works. You dont need to see him to do it, just take half an hour to write up a commented code snippet, and email it to him along with a challenge.
You could then make the challenges harder as time goes on. Eventually, instead of providing code, you could provide him with a program, and challenge him to try and reproduce the program himself without any code.
- RUC'