The use of user definable macros and programmable function keys should be limited.
Additional Information:
The advantages may outweigh the disadvantages for some tasks (e.g., software development or modification), whereas for other tasks (e.g., application specific software) the disadvantages may outweigh the advantages.