It.. gets.. complicated.
For Kettering this year, I made a custom text editor that would allow me to program auton and load without deploying to the cRIO (510 auton points

50 points above 2nd place). It would compile the text in the editor to a binary form than send it to the dashboard through a single SD line
so something like this
Code:
if inTheCenter //targeting
shoot at 1 for 1 //shoot at speed 1 for 1 second
after 2
driveForward at 1 for 1
else
driveForward at 1 for 1 //drive forward at fulslpeed for 1 second
after 5
shoot at 1 for 1
endif
the binary would compile to something like
Code:
?11:(12:1:1:0:(13:1:1:3:^:(13:1:1:0:(12:1:1:5
This was originally intended to be a full binary format (not an ASCII pull) but i got fed up with Java ME's implementation of binary string reading
?11 signifies if, (12 signifies action (, shoot (12), at speed 1 for 1 second at 0 seconds... (13 signifies drive, etc.
Can't open source anything because its still competition season but just giving ideas!