The most important aspect of programming is being able to identify an athletes strengths, and identify their weaknesses
Because even if they’re God’s gift to their sport, they still have weaknesses, and by addressing those, that’s their fastest path to improving their performance
They also have strengths, because if they didn’t, they would’ve given up on their sport and quit years ago. So you also must identify their strengths, and build upon those.
But of all the variables there are to manipulate in programming: sets, reps; tempo; speed of contraction; exercise selection; sequence of events; vertical or horizontal loading; one set or multiple sets; frequency of training: all those variables have their own benefits and drawbacks.
So there’s not one perfect variable.
And if there cannot exist one perfect variable, there cannot exist a perfect program.
So it is a science, but an ART of how you apply that science to each athlete, identifying what they respond and don’t respond to, to adjust their training even within a specific session in order to get them the results they need.